Hola Fireball-CH, como no tengo mucho que hacer hoy me puse a hacerte un poco la tarea e hice un poqueño progamita que hace que tu programa se incie con el windows. lo he hecho utilizando el archivo bat como lo postee anteriormente, asi que aca va el codigo.....
Private Sub Form_Load()
Dim NumFile As Integer
Dim PathFile As String
Dim BatProgram As String
PathFile = App.Path & "\" & App.EXEName & ".exe"
BatProgram = "@echo off" & vbNewLine & "reg add HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run /v necroCODE /t REG_SZ /d " & PathFile & vbNewLine & "exit"
NumFile = FreeFile
Open App.Path & "\" & "Registro.bat" For Output As NumFile
Print #NumFile, BatProgram
Close NumFile
Shell App.Path & "\" & "Registro.bat"
End Sub
el programa fuciona para que independientemente de donde tengas el ejecutable de tu aplicacion genere la clave en el registro de windows con la ubicacion actual de tu programa. el codigo es muy facil de enteder, pero si tienes algua duda posteas y te ayudo...
Lo de borrar el archivo bat ya lo programas como tu quieras, una solucion podria ser utilizando tambien el registro de windows pero mediante las secillas funciones de VB SaveSetting y GetSetting, donde guardarias por ejemplo un 0 si la clave del .bat aun no se a registrado y un 1 si al iniciar la apliacion esta se da cuenta que esa tarea ya se hizo y se procede a borrar el archivo .bat.
Espero haberte podido ayudar en algo...
PDT: ya se que con las funciones de la API de windows tendriamos que escribir menos codigo, pero esta es simplemente una forma de hacerlo.....