Borrador de autorun.inf xD Copia del programa de carlitos.dll

Iniciado por jdc, 6 Noviembre 2008, 06:27 AM

0 Miembros y 1 Visitante están viendo este tema.

jdc

La idea original es de carlitos.dll en C

El programa revisa cada par de segundos si existe el autorun.inf en las unidades C,D,F y G y si lo encuentra lo borra xD
Para esto puse 4 timers.

No soy programador todavia, solo copie un par de lineas desde programas y tutoriales (incluyendo un tuto muy bueno de aqui de VBS y los ordene para que hicieran lo que proponia carlitos.dll :)
Crear

4 timers:
Timer1, Timer2, Timer3, Timer4 con interval: 200 para que cada timer revise las unidades seguido

El form ponganlo con visible = False para que no se vea... quiero ver como poder hacerlo visible por medio de una combinacion de teclas pero aun no se hacerlo.
Codigo:

Código (vb) [Seleccionar]
Private Sub Form_Load()
MsgBox ("El programa se esta ejecutando")
End Sub

Private Sub Timer1_Timer()
On Error GoTo Falso
archivo = GetAttr("C:\autorun.inf")
Set variable = CreateObject("Scripting.FileSystemObject")
variable.DeleteFile "C:\autorun.inf"
Exit Sub
Falso:
End Sub

Private Sub Timer2_Timer()
On Error GoTo Falso
archivo = GetAttr("D:\autorun.inf")
Set variable = CreateObject("Scripting.FileSystemObject")
variable.DeleteFile "D:\autorun.inf"
Exit Sub
Falso:
End Sub

Private Sub Timer3_Timer()
On Error GoTo Falso
archivo = GetAttr("G:\autorun.inf")
Set variable = CreateObject("Scripting.FileSystemObject")
variable.DeleteFile "G:\autorun.inf"
Exit Sub
Falso:
End Sub

Private Sub Timer4_Timer()
On Error GoTo Falso
archivo = GetAttr("F:\autorun.inf")
Set variable = CreateObject("Scripting.FileSystemObject")
variable.DeleteFile "F:\autorun.inf"
Exit Sub
Falso:
End Sub

Obsevacion:
Para cerrarlo por ahora control + Alt + Supr y cierran el proceso ;)
Repito son recortes de codigos de tutoriales yo no lo programe en si solo lo ordene ¬¬  asi que no me llamen lammer.... newie tal vez pero lammer no... si lo hacen prometo que me cortare las venas con una cuchara xD

Saludos y arreglenlo, mejorenlo y usenlo para el bien xD

Aqui se los dejo ya compilado http://www.sendspace.com/file/4f45l2



Novlucker

Como mejora... si vas a utilizar scripting.filesystemobject deberías de eliminar eso de C:, D:, G:, F: (buscas en todas las unidades) y utilizar drives
Código (vb) [Seleccionar]
Set variable = CreateObject("Scripting.FileSystemObject")
Set unidades = variable.drives
For each u in unidades
Msgbox u.driveletter
Next

Claro está que además sería conveniente utilizar drivetype para evitar intentar borra la lectora  :P
Saludos  ;)
Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD

"Hay dos cosas infinitas: el Universo y la estupidez  humana. Y de la primera no estoy muy seguro."
Albert Einstein

Ari--Slash


Novlucker

Es una de las propiedades de los elementos de la colección de discos, indica el tipo de disco.

Valor
0
1
2
3
4
5
   Tipo
Unknown/Desconocido
Removable/Removible
Fixed/Rígido
Network/Red
CD-Rom
RAM Disk
Si es un 4 por ejemplo, no puedes escribir en él así como así, y da error
Saludos  ;)
Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD

"Hay dos cosas infinitas: el Universo y la estupidez  humana. Y de la primera no estoy muy seguro."
Albert Einstein

jdc

Cita de: Novlucker en  6 Noviembre 2008, 11:08 AM
Como mejora... si vas a utilizar scripting.filesystemobject deberías de eliminar eso de C:, D:, G:, F: (buscas en todas las unidades) y utilizar drives
Código (vb) [Seleccionar]
Set variable = CreateObject("Scripting.FileSystemObject")
Set unidades = variable.drives
For each u in unidades
Msgbox u.driveletter
Next

Claro está que además sería conveniente utilizar drivetype para evitar intentar borra la lectora  :P
Saludos  ;)

Gracias por el consejo tratare de hacerlo asi para que revise las unidades existentes omitiendo el lector de DVD/CD

No sabes como podria usar una combinacion de letras para volver a hacer visible el form?? osea por ejemplo "Shif + F6" le da verdadero a visible? o algo similar?

seba123neo

#5
Cita de: Pollo5No sabes como podria usar una combinacion de letras para volver a hacer visible el form?? osea por ejemplo "Shif + F6" le da verdadero a visible? o algo similar?

algo asi:

Modulo:

Código (vb) [Seleccionar]
Option Explicit

Public WinProc As Long

Public Const GWL_WNDPROC = (-4)
Public Const MOD_SHIFT As Long = &H4
Public Const VK_F6 As Long = &H75

Public Declare Function RegisterHotKey Lib "user32" (ByVal hWnd As Long, ByVal id As Long, ByVal fsModifiers As Long, ByVal vk As Long) As Long
Public Declare Function UnregisterHotKey Lib "user32" (ByVal hWnd As Long, ByVal id As Long) As Long
Public Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hWnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
Public Declare Function CallWindowProc Lib "user32" Alias "CallWindowProcA" (ByVal lpPrevWndFunc As Long, ByVal hWnd As Long, ByVal Msg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long


Public Function NewWindowProc(ByVal hWnd As Long, ByVal Msg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long

If Msg = &H82 Then
    Call SetWindowLong(hWnd, GWL_WNDPROC, WinProc)
    Call UnregisterHotKey(hWnd, 1)
End If

If Msg = &H312 Then
    MsgBox "Apretaste SHIFT+F6", vbInformation
End If

NewWindowProc = CallWindowProc(WinProc, hWnd, Msg, wParam, lParam)

End Function


Formulario:

Código (vb) [Seleccionar]
Option Explicit

Private Sub Form_Load()
   
If RegisterHotKey(hWnd, 1, MOD_SHIFT, VK_F6) = 0 Then
    MsgBox " Error ", vbCritical
    Exit Sub
End If
     
WinProc = SetWindowLong(hWnd, GWL_WNDPROC, AddressOf NewWindowProc)
End Sub


aparte se puede hacer sin FSO , directamente con las funciones de visual basic..asi no creas objetos.

saludos.

La característica extraordinaria de las leyes de la física es que se aplican en todos lados, sea que tú elijas o no creer en ellas. Lo bueno de las ciencias es que siempre tienen la verdad, quieras creerla o no.

Neil deGrasse Tyson

jdc


el_c0c0

#7
Cita de: seba123neo
If Msg = &H312 Then
    MsgBox "Apretaste SHIFT+F6", vbInformation
End If

una pregunta tonta seba, porque no explota el ide en esa parte... como vos sabras si en un hook le mandas un msgbox explota todo.. aunque sea un solo mensaje..

saludos
'-     coco
"Te voy a romper el orto"- Las hemorroides

skapunky

Hay 5 mil programas que hacen lo mismo que el tuyo e incluso estan por paginas como softonic y tal pero les encuentro un fallo tremendo.

Mira, hay muchas aplicaciónes que utilizan un autorun.inf o incluso algunas como esas de decoracion de usb que crean un autorun.inf...segun tu programa los eliminaria todos.... Es como si un antivirus borra todos los archivos en visual basic script solo porque en su dia se puso de moda los gusanos en vbs.

Eso es un punto que te recomiendo que tengas en cuenta e intentes solucionarlo, porque para ello directamente se podra hacer un script sencillo y corto que borre el archivo autorun.inf.

Es como si hago un programa que borra todos los ejecutables...seguro que los virus no entrarán, pero los programas "no maliciosos" tampoco seran funcionables.

Saludos.
Killtrojan Syslog v1.44: ENTRAR

jdc

Cita de: skapunky en  7 Noviembre 2008, 10:19 AM
Hay 5 mil programas que hacen lo mismo que el tuyo e incluso estan por paginas como softonic y tal pero les encuentro un fallo tremendo.

Mira, hay muchas aplicaciónes que utilizan un autorun.inf o incluso algunas como esas de decoracion de usb que crean un autorun.inf...segun tu programa los eliminaria todos.... Es como si un antivirus borra todos los archivos en visual basic script solo porque en su dia se puso de moda los gusanos en vbs.

Eso es un punto que te recomiendo que tengas en cuenta e intentes solucionarlo, porque para ello directamente se podra hacer un script sencillo y corto que borre el archivo autorun.inf.

Es como si hago un programa que borra todos los ejecutables...seguro que los virus no entrarán, pero los programas "no maliciosos" tampoco seran funcionables.

Saludos.

Aja... eso lo se, de echo ocupo el cedo que es un sistema como el que mencionas y crea un autorun.inf y que haya 1000 programas que hagan lo mismo, no importa ya que es para aprender ;) siempre habra alguien que hizo lo que tu antes no? es bastante dificil crear algo que revolucione ;) el programa lo hice para un amigo que tiene un ciber y que en el servidor mete pendrives para imprimir trabajos que lleva la gente, por lo tanto no es recomendable que se autoejecute nada :D

De todas maneras perdon si te molesto que posteara un codigo o hiciera un "programa basico" pero todavia no se lo suficiente para crear algo noedoso :)

Saludos!