Скопировать себя!!!

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
zona09
Новичок
Новичок
 
Сообщения: 43
Зарегистрирован: 16.10.2004 (Сб) 14:14

Скопировать себя!!!

Сообщение zona09 » 14.12.2004 (Вт) 0:11

Надо чтоб твоя програма при открытие скопировалать в другую папку!!! Как ето сделать??? Я пробовал через FileCopy, но потом копия проги не работала, трабл в том что надо себя скопировать но она получается в данный момент открыта!!! Подскажите!!!!!

xolod
Гуру
Гуру
 
Сообщения: 1162
Зарегистрирован: 15.01.2004 (Чт) 0:42
Откуда: Moscow

Сообщение xolod » 14.12.2004 (Вт) 0:24

Опять плохие и вредоностные программы пишем, it's :ncool:

Constant ERROR_SUCCESS deprecated. I'm so happy.
Программирование и дизайн – http://www.macrointellect.ru

Tatyanka
Немного Иная
Немного Иная
Аватара пользователя
 
Сообщения: 876
Зарегистрирован: 02.12.2004 (Чт) 13:55
Откуда: Киев

Сообщение Tatyanka » 14.12.2004 (Вт) 10:15

И зачем это тебе? :twisted:

Ramzes
Скромный человек
Скромный человек
Аватара пользователя
 
Сообщения: 5004
Зарегистрирован: 12.04.2003 (Сб) 11:59
Откуда: Из гробницы :)

Сообщение Ramzes » 14.12.2004 (Вт) 11:36

Если это вирус то ничего больного для компа этот кодер сдеалть не может, если он не знает как самого себя копировать.

Но все равно я помогать НЕ БУДУ, потому что вирусы писать НЕ ХОРОШО

Faust
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 649
Зарегистрирован: 29.12.2003 (Пн) 13:38
Откуда: лаборатория

Сообщение Faust » 14.12.2004 (Вт) 13:21

Как вариант... Пишешь вспомогательный EXE-шник, который копирует твою программу по нужному адресу. Потом зарываешь этот EXE в какой-нибудь неприметный DAT, откуда прога и вырезает его при необходимости, передает ему в командной строке нужные параметры (к примеру, путь, куда нужно скопировать прогу), и выгружается. После этого файл делает свое черное дело и запускает твою основную прогу (неплохо было бы восстановить состояние), которая "в благодарность за все" удаляет его, чтоб не смущал взор юзера.
ЗЫ. Надеюсь, что это будут юзать в мирных целях... :?
Листинги не горят!

zona09
Новичок
Новичок
 
Сообщения: 43
Зарегистрирован: 16.10.2004 (Сб) 14:14

Сообщение zona09 » 14.12.2004 (Вт) 18:12

Faust писал(а):Как вариант... Пишешь вспомогательный EXE-шник, который копирует твою программу по нужному адресу. Потом зарываешь этот EXE в какой-нибудь неприметный DAT, откуда прога и вырезает его при необходимости, передает ему в командной строке нужные параметры (к примеру, путь, куда нужно скопировать прогу), и выгружается. После этого файл делает свое черное дело и запускает твою основную прогу (неплохо было бы восстановить состояние), которая "в благодарность за все" удаляет его, чтоб не смущал взор юзера.
ЗЫ. Надеюсь, что это будут юзать в мирных целях... :?


Да.ето я знаю, мне надо другой путь, потому что -программа моя- будет много весить если туда всунуть ище файл.!

EvilCoder
Посланец джихада
Посланец джихада
Аватара пользователя
 
Сообщения: 706
Зарегистрирован: 25.01.2004 (Вс) 15:08

Сообщение EvilCoder » 14.12.2004 (Вт) 18:49

zona09 - МОЛОДЕЦ!!!! :lol: Так держать....
вот ссылка: http://bbs.vbstreets.ru/viewtopic.php?t ... highlight=
Если, что не поймешь... помогу... спрашивай! :D :lol: 8) :oops: :oops: :arrow:
<<------- EvilCoder ------->>

zona09
Новичок
Новичок
 
Сообщения: 43
Зарегистрирован: 16.10.2004 (Сб) 14:14

Сообщение zona09 » 15.12.2004 (Ср) 16:54

2 EvilCoder Я там ничего рабочого не нашол.! Наведи пожалуйста здесь код!!!

Faust
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 649
Зарегистрирован: 29.12.2003 (Пн) 13:38
Откуда: лаборатория

Сообщение Faust » 15.12.2004 (Ср) 17:08

zona09 писал(а):Да.ето я знаю, мне надо другой путь, потому что -программа моя- будет много весить если туда всунуть ище файл.!

Ну, можно вместо EXE юзать BAT - обойдется в считанные байты.
Листинги не горят!

zona09
Новичок
Новичок
 
Сообщения: 43
Зарегистрирован: 16.10.2004 (Сб) 14:14

Сообщение zona09 » 15.12.2004 (Ср) 23:58

Можете пример навести!

EvilCoder
Посланец джихада
Посланец джихада
Аватара пользователя
 
Сообщения: 706
Зарегистрирован: 25.01.2004 (Вс) 15:08

Сообщение EvilCoder » 16.12.2004 (Чт) 0:09

Как это не рабочий... :shock:
Я писал (когда-то) :D :
Вот. Мое решение этой задачи :)
Прога каждый раз проверяет "свой путь", если она не в папке "C:\Windows\System32", то себя туда переносит :!:

Код: Выделить всё
Public Declare Function WinExec Lib "kernel32" (ByVal lpCmdLine As String, ByVal nCmdShow As Long) As Long
Public Declare Function CopyFile Lib "kernel32" Alias "CopyFileA" (ByVal lpExistingFileName As String, ByVal lpNewFileName As String, ByVal bFailIfExists As Long) As Long
Public Declare Function PathFileExists Lib "shlwapi.dll" Alias "PathFileExistsA" (ByVal pszPath As String) As Long     

Private Sub Form_Load()
        CheckRunPath
End Sub


Код: Выделить всё
Public Sub CheckRunPath()
    If Mid(Command$, 1, 5) = "kill:" Then           ' Уничтожение предыдущей копии
        On Error Resume Next '<<
        Do
            DoEvents
            Kill Trim(Right$(Command$, Len(Command$) - 5))
        Loop While PathFileExists(Right$(Command$, Len(Command$) - 5))
        Exit Sub
    End If
'----------------------------
    Dim SysPath As String
    SysPath = Space(255)                                        ' Буфер строки
    SysPath = Left$(SysPath, GetSystemDirectory(SysPath, 255))  ' Получение Сис.папки
'-----------------------------
    If UCase(SysPath) <> UCase(App.Path) Then
        CopyFile App.Path & "\" & App.EXEName & ".exe", _
                  SysPath & "\" & App.EXEName & ".exe", True         ' Копирование (себя) в [System32]
        WinExec SysPath & "\" & App.EXEName & ".exe kill:" _
           & App.Path & "\" & App.EXEName & ".exe", 10             ' Запуск (Себя) после копирования
    Unload frmMain
    End
    End If
End Sub

------------------------------------------------------------------
Что тут не понятного :?: :arrow: у меня работает :roll:
<<------- EvilCoder ------->>

Faust
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 649
Зарегистрирован: 29.12.2003 (Пн) 13:38
Откуда: лаборатория

Сообщение Faust » 17.12.2004 (Пт) 1:20

Строка из BAT-файла (отгадайте, что она делает?):
copy aaa.txt, c:\aaa.txt
В конце (восстановить прогу):
megaprog.exe
Листинги не горят!


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 30

    TopList  
cron