Приветствую! Люди подскажите как сделать так чтоб при запуске .exe создавалась Dll-ка . Или чтоб dll извлекалась из exe. Как проще это осуществить?Подскажите плиз. Буду блогодарен за любые адекватные ответы.(в двойне благодарен за примерчег)
Код (Text): include '%fasminc%\win32ax.inc' section '.data' data readable writeable echo db 'C:\HelloWorld.dll',0 section '.code' code readable executable start: invoke CreateFile,echo,GENERIC_WRITE,\ FILE_SHARE_READ,0,CREATE_ALWAYS,FILE_ATTRIBUTE_NORMAL,0 invoke ExitProcess,0 .end start Мне только такое известно.
:P Код (Text): format pe gui 4.0 include 'win32ax.inc' section '' code executable import readable writable library kernel32,'kernel32.dll',\ user32,'user32.dll' include 'api\kernel32.inc' include 'api\user32.inc' entry $ invoke CreateFileA,_file,GENERIC_WRITE,0,0,CREATE_ALWAYS,0,0 push eax invoke WriteFile,eax,_buff,_file-_buff,ioResult,0 invoke CloseHandle invoke LoadLibraryA,_file push eax invoke GetProcAddress,eax,1 invoke MessageBoxA,0,eax,0,0 invoke FreeLibrary invoke ExitProcess,0 _buff: file '.exe' _file db 'c:\temp\.dll',0 ioResult dd ? section '' export readable writable export '',\ _file,1
Ответ на загадку выше: - комментировать "_buff: file '.exe'" в "_buff:; file '.exe'" - ctrl+f9 - отменить комментарий - ctrl+f9 - ctrl+f9
Код (Text): LoadResources: invoke FindResource, [hModule], rcName ,RT_RCDATA cmp eax, NULL jz .no mov [hResource], eax invoke SizeofResource, [hModule], [hResource] cmp eax, 0 jz .no mov [ResSize], eax invoke LoadResource, [hModule], [hResource] cmp eax, 0 jz .no mov [hMemory], eax invoke CreateFile, FilePath ,\ GENERIC_WRITE ,\ 0 ,\ NULL ,\ CREATE_ALWAYS ,\ FILE_ATTRIBUTE_NORMAL ,\ NULL cmp eax, INVALID_HANDLE_VALUE jz .no mov [hMyFile], eax invoke WriteFile, [hMyFile],\ [hMemory],\ [ResSize],\ pBytesWritten,\ NULL invoke CloseHandle, [hMyFile]
Всем спасибо люди! edemko Тебе 2-ое спасибо,хороший примерчег,что надо. Я думал строк в коде будет больше.(у меня их точно былоб больше). ;--------------------------------------------------------------------- з.ы Да вот придётся наверно,в последнее время чтото много кто саветует. А в чом сила у - Си и Си шарп ???
GoldFinch только жаль что с# от мс, но я хз, была давно очевидна необходимость подобного языка, мс сделал, а все остальные надеялись на застоявшуюся java, а так согласен.
С#,C++,Cи шарп наверно есть и еще. Так какой всёж получше будет?подскажите. Чтоб не получилось так что когда начну изучать С# мне скажут переходи на С++ . (или какойнибуть D#) Какой выбрать чтоб уж на верняк было?
eua Надо знать НЕСКОЛЬКО языков, начни с C# как поймешь что такое алгоритмы как их писать, да и вообще азы. Тогда потихоньку можешь еще поразбирать как собсно работает ос, это не когда лишним не бывает.
Зависит, что кодить планируете. Для малвари шарп не подойдет, ровно как и для сложных гуев на Си будет писать муторней и тяжелей, чем на шарпе.
Кодил на шарпе и на плюсах. Как по мне,шарп слишком оторван от системы и изучить последнюю программируя на нем довольно трудно будет.
Если использовать такую парочку то какой АСМ для этого нужен?MASM,FASM,TASM ...?или любой? Или там свой?
eua Студия поддерживает inline ассемблер,но только для сложных мест,много не напишешь. Он на TASM/MASM похож.