Интересует можно ли написать exe файл и одновременно что бы можно было этот exe использовать как DLL и как это реализовать советы доки ссылки
А я вот такой фигней пользуюсь и ничего. ;============================ LibMain proc hInstDLLWORD, reasonWORD, unusedWORD LOCAL TypeFlag : dword mov TypeFlag, -1 mov edi, hInstDLL invoke IsBadReadPtr, edi, 400h .if eax == 0 .if word ptr [edi] == 'ZM' add edi, [edi+03Ch] .if dword ptr [edi] == 004550h movzx ecx, (IMAGE_NT_HEADERS ptr [edi]).FileHeader.Characteristics .if ecx & 2000h mov TypeFlag, 0 .endif .endif .endif .endif .if TypeFlag == 0 .if reason == DLL_PROCESS_ATTACH mov eax, 1 ret .elseif reason == DLL_PROCESS_DETACH .elseif reason == DLL_THREAD_ATTACH .elseif reason == DLL_THREAD_DETACH .endif .else invoke GetCommandLine invoke ExitProcess, 0 .endif ret LibMain Endp
Polimorph Это т.н. outproc-сервера. Говоря человеческим языком, это COM(даже DCOM) dll с расширением exe, регестрируемая в реестре и работающая в собственном адресном пространстве. Пишется также как любой COM-объект. Проще всего писать такие вещи на языках высокого уровня. На асме придется долго париться.