├── BIN ├── DEF │ ├── MFC42.DEF │ └── WSOCK32.def ├── INC │ ├── MFC42.h │ ├── NTDDK │ │ ├── my.h │ │ ├── ntdef.h │ │ └── wdm.h │ ├── WINDEF.H │ ├── WINUSER.H │ ├── WinBase.h │ ├── WinSock2.h │ ├── my.h │ ├── stdio.h │ ├── stdlib.h │ ├── test.h │ └── winnls.h ├── LIB │ └── LIBC.LIB ├── exe2c.dll ├── exe2c.lib ├── exe2c_gui.exe ├── me.txt └── petest.exe ├── I_KSUNKNOWN ├── KsFrame.h ├── Ks_OutBuf.h ├── Ks_OutStr.h └── myassert.h ├── exe2c ├── DLL │ ├── StdAfx.cpp │ ├── StdAfx.h │ ├── exe2c.def │ ├── exe2c.dsp │ ├── exe2c.dsw │ ├── exe2c.plg │ ├── exe2c_DLL.cpp │ ├── exe2c_DLL.h │ ├── exe2c_DLL.rc │ └── resource.h ├── LibScanner.H ├── Readme.txt ├── SRC │ ├── 00000.h │ ├── CApiManage.cpp │ ├── CApiManage.h │ ├── CApiManage.~cp │ ├── CCbuf.cpp │ ├── CCbuf.h │ ├── CClassManage.cpp │ ├── CClassManage.h │ ├── CCodeList.cpp │ ├── CCodeList.h │ ├── CEnumMng.cpp │ ├── CEnumMng.h │ ├── CExprManage.cpp │ ├── CExprManage.h │ ├── CFunc.cpp │ ├── CFunc.h │ ├── CFuncOptim.cpp │ ├── CFuncPrt.cpp │ ├── CFuncStep1.cpp │ ├── CFuncStep1.h │ ├── CFuncType.cpp │ ├── CFuncType.h │ ├── CFunc_CreateInstrList.cpp │ ├── CISC.H │ ├── CLibScanner.CPP │ ├── CLibScanner.H │ ├── CMyString.cpp │ ├── CMyString.h │ ├── CNameID.cpp │ ├── CNameID.h │ ├── CStrategy.cpp │ ├── CStrategy.h │ ├── CXmlList.cpp │ ├── CXmlList.h │ ├── CXmlPrt.cpp │ ├── CXmlPrt.h │ ├── Cexe2c.CPP │ ├── Cexe2c.H │ ├── ComplexInstr.cpp │ ├── ComplexInstr.h │ ├── DLL32DEF.cpp │ ├── DLL32DEF.h │ ├── DataType.cpp │ ├── DataType.h │ ├── Deasm_Init.CPP │ ├── Disasm.cpp │ ├── EXPR.h │ ├── FileLoad.cpp │ ├── FileLoad.h │ ├── INSTR.cpp │ ├── INSTR.h │ ├── PEload.cpp │ ├── PUB.cpp │ ├── ParseHead.cpp │ ├── ParseHead.h │ ├── SVarType.cpp │ ├── SVarType.h │ ├── XMLTYPE.h │ ├── XmlType.cpp │ ├── analysis.cpp │ ├── dasm.h │ ├── enum.h │ ├── exe2c.cpp │ ├── hpp.cpp │ ├── hpp.h │ ├── main.cpp │ ├── me.txt │ ├── mylist.h │ ├── optim.cpp │ ├── proto.h │ ├── standard.cpp │ ├── standard.h │ ├── strparse.cpp │ └── strparse.h └── exe2c.H ├── exe2c_gui ├── ButtonBar.cpp ├── ButtonBar.h ├── CRorEditView.cpp ├── CRorEditView.h ├── CRorTextBuffer.cpp ├── CRorTextBuffer.h ├── CRorTextView.cpp ├── CRorTextView.h ├── CRorTextView2.cpp ├── Change.cpp ├── Change.h ├── ChildFrm.cpp ├── ChildFrm.h ├── ChildView.cpp ├── ChildView.h ├── CommandDlg.cpp ├── CommandDlg.h ├── CoolTabCtrl.cpp ├── CoolTabCtrl.h ├── Log.cpp ├── Log.h ├── MainFrm.cpp ├── MainFrm.h ├── ReadMe.txt ├── Sample.suo ├── SampleDoc.cpp ├── SampleDoc.h ├── SampleDoc.ico ├── SampleDocA.cpp ├── SampleDocA.h ├── SampleView.cpp ├── SampleView.h ├── StdAfx.cpp ├── StdAfx.h ├── Toolbar.bmp ├── ViewFunDlg.cpp ├── ViewFunDlg.h ├── cplusplus.cpp ├── editcmd.h ├── editres.rc ├── exe2c_gui.001 ├── exe2c_gui.bakvpj ├── exe2c_gui.bakvpw ├── exe2c_gui.clw ├── exe2c_gui.cpp ├── exe2c_gui.dsp ├── exe2c_gui.dsw ├── exe2c_gui.h ├── exe2c_gui.ico ├── exe2c_gui.plg ├── exe2c_gui.rc ├── exe2c_gui.rc2 ├── exe2c_gui.sln ├── mg_cur.cur ├── mg_icons.bmp ├── res │ ├── Sample.ico │ ├── Sample.rc2 │ ├── SampleDoc.ico │ ├── Thumbs.db │ ├── Toolbar.bmp │ ├── bug.bmp │ ├── icon1.ico │ ├── icon2.ico │ └── icon3.ico ├── resource.h ├── scbarg.cpp ├── scbarg.h ├── sizecbar.cpp └── sizecbar.h ├── me.txt └── petest ├── ReadMe.txt ├── StdAfx.cpp ├── StdAfx.h ├── petest.cpp ├── petest.dsp ├── petest.dsw ├── petest.h ├── petest.ico ├── petest.plg ├── petest.rc ├── resource.h ├── small.ico ├── test_class.cpp └── test_class.h /BIN/DEF/WSOCK32.def: -------------------------------------------------------------------------------- 1 | LIBRARY WSOCK32.DLL 2 | 3 | EXPORTS 4 | accept @1 ; accept 5 | bind @2 ; bind 6 | closesocket @3 ; closesocket 7 | connect @4 ; connect 8 | getpeername @5 ; getpeername 9 | getsockname @6 ; getsockname 10 | getsockopt @7 ; getsockopt 11 | htonl @8 ; htonl 12 | htons @9 ; htons 13 | inet_addr @10 ; inet_addr 14 | inet_ntoa @11 ; inet_ntoa 15 | ioctlsocket @12 ; ioctlsocket 16 | listen @13 ; listen 17 | ntohl @14 ; ntohl 18 | ntohs @15 ; ntohs 19 | recv @16 ; recv 20 | recvfrom @17 ; recvfrom 21 | select @18 ; select 22 | send @19 ; send 23 | sendto @20 ; sendto 24 | setsockopt @21 ; setsockopt 25 | shutdown @22 ; shutdown 26 | socket @23 ; socket 27 | MigrateWinsockConfiguration @24 ; MigrateWinsockConfiguration 28 | gethostbyaddr @51 ; gethostbyaddr 29 | gethostbyname @52 ; gethostbyname 30 | getprotobyname @53 ; getprotobyname 31 | getprotobynumber @54 ; getprotobynumber 32 | getservbyname @55 ; getservbyname 33 | getservbyport @56 ; getservbyport 34 | gethostname @57 ; gethostname 35 | WSAAsyncSelect @101 ; WSAAsyncSelect 36 | WSAAsyncGetHostByAddr @102 ; WSAAsyncGetHostByAddr 37 | WSAAsyncGetHostByName @103 ; WSAAsyncGetHostByName 38 | WSAAsyncGetProtoByNumber @104 ; WSAAsyncGetProtoByNumber 39 | WSAAsyncGetProtoByName @105 ; WSAAsyncGetProtoByName 40 | WSAAsyncGetServByPort @106 ; WSAAsyncGetServByPort 41 | WSAAsyncGetServByName @107 ; WSAAsyncGetServByName 42 | WSACancelAsyncRequest @108 ; WSACancelAsyncRequest 43 | WSASetBlockingHook @109 ; WSASetBlockingHook 44 | WSAUnhookBlockingHook @110 ; WSAUnhookBlockingHook 45 | WSAGetLastError @111 ; WSAGetLastError 46 | WSASetLastError @112 ; WSASetLastError 47 | WSACancelBlockingCall @113 ; WSACancelBlockingCall 48 | WSAIsBlocking @114 ; WSAIsBlocking 49 | WSAStartup @115 ; WSAStartup 50 | WSACleanup @116 ; WSACleanup 51 | __WSAFDIsSet @151 ; __WSAFDIsSet 52 | WEP @500 ; WEP 53 | WSApSetPostRoutine @1000; WSApSetPostRoutine 54 | inet_network @1100; inet_network 55 | getnetbyname @1101; getnetbyname 56 | rcmd @1102; rcmd 57 | rexec @1103; rexec 58 | rresvport @1104; rresvport 59 | sethostname @1105; sethostname 60 | dn_expand @1106; dn_expand 61 | WSARecvEx @1107; WSARecvEx 62 | s_perror @1108; s_perror 63 | GetAddressByNameA @1109; GetAddressByNameA 64 | GetAddressByNameW @1110; GetAddressByNameW 65 | EnumProtocolsA @1111; EnumProtocolsA 66 | EnumProtocolsW @1112; EnumProtocolsW 67 | GetTypeByNameA @1113; GetTypeByNameA 68 | GetTypeByNameW @1114; GetTypeByNameW 69 | GetNameByTypeA @1115; GetNameByTypeA 70 | GetNameByTypeW @1116; GetNameByTypeW 71 | SetServiceA @1117; SetServiceA 72 | SetServiceW @1118; SetServiceW 73 | GetServiceA @1119; GetServiceA 74 | GetServiceW @1120; GetServiceW 75 | NPLoadNameSpaces @1130; NPLoadNameSpaces 76 | TransmitFile @1140; TransmitFile 77 | AcceptEx @1141; AcceptEx 78 | GetAcceptExSockaddrs @1142; GetAcceptExSockaddrs 79 | -------------------------------------------------------------------------------- /BIN/INC/MFC42.h: -------------------------------------------------------------------------------- 1 | // ----------------------------------------------------------------- 2 | // Exe2C LiuTaoTao @ coder.com.cn 3 | // 4 | // mfc42.h 5 | // ----------------------------------------------------------------- 6 | int __stdcall AfxWinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPTSTR lpCmdLine, int nCmdShow); 7 | 8 | -------------------------------------------------------------------------------- /BIN/INC/NTDDK/my.h: -------------------------------------------------------------------------------- 1 | #define IN 2 | #define OUT 3 | 4 | #include "ntddk.h" 5 | //#include "ntdef.h" 6 | //#include "wdm.h" 7 | 8 | NTSTATUS 9 | __stdcall 10 | DriverEntry( 11 | IN PDRIVER_OBJECT DriverObject, 12 | IN PUNICODE_STRING RegistryPath 13 | ); 14 | 15 | int __cdecl sprintf(char *, const char *, ...); 16 | 17 | void __stdcall KeAttachProcess(PEPROCESS pProcess); 18 | void __stdcall KeDetachProcess(); 19 | 20 | -------------------------------------------------------------------------------- /BIN/INC/NTDDK/ntdef.h: -------------------------------------------------------------------------------- 1 | typedef char CHAR; 2 | typedef short SHORT; 3 | typedef long LONG; 4 | 5 | typedef CHAR *PCHAR; 6 | typedef CHAR *LPCH, *PCH; 7 | 8 | typedef const CHAR *LPCCH, *PCCH; 9 | typedef CHAR *NPSTR; 10 | typedef CHAR *LPSTR, *PSTR; 11 | typedef const CHAR *LPCSTR, *PCSTR; 12 | 13 | typedef char CCHAR; // winnt 14 | 15 | 16 | typedef long NTSTATUS; 17 | 18 | typedef void *PVOID; 19 | typedef unsigned char UCHAR; 20 | typedef unsigned short USHORT; 21 | typedef unsigned long ULONG; 22 | typedef short CSHORT; 23 | 24 | typedef UCHAR *PUCHAR; 25 | typedef USHORT *PUSHORT; 26 | typedef ULONG *PULONG; 27 | 28 | typedef SHORT *PSHORT; // winnt 29 | typedef LONG *PLONG; // winnt 30 | 31 | typedef PVOID HANDLE; 32 | typedef HANDLE *PHANDLE; 33 | 34 | typedef UCHAR KIRQL; 35 | 36 | typedef unsigned short wchar_t; 37 | typedef unsigned short WCHAR; 38 | 39 | typedef WCHAR *LPWSTR, *PWSTR; 40 | typedef const WCHAR *LPCWSTR, *PCWSTR; 41 | 42 | typedef struct _UNICODE_STRING { 43 | USHORT Length; 44 | USHORT MaximumLength; 45 | PWSTR Buffer; 46 | } UNICODE_STRING; 47 | typedef UNICODE_STRING *PUNICODE_STRING; 48 | 49 | 50 | //typedef __int64 LONGLONG; 51 | 52 | typedef struct _LIST_ENTRY { 53 | struct _LIST_ENTRY *Flink; 54 | struct _LIST_ENTRY *Blink; 55 | } LIST_ENTRY, *PLIST_ENTRY, *PRLIST_ENTRY; 56 | 57 | 58 | -------------------------------------------------------------------------------- /BIN/INC/NTDDK/wdm.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/BIN/INC/NTDDK/wdm.h -------------------------------------------------------------------------------- /BIN/INC/WINDEF.H: -------------------------------------------------------------------------------- 1 | 2 | typedef char *LPCSTR; 3 | typedef BYTE * LPBYTE; 4 | typedef HANDLE *PHANDLE; 5 | typedef const void far *LPCVOID; 6 | 7 | struct RECT 8 | { 9 | int left; 10 | int top; 11 | int right; 12 | int bottom; 13 | } ; 14 | 15 | typedef RECT * LPRECT; 16 | typedef UINT WPARAM; 17 | typedef long LPARAM; 18 | typedef DWORD far *LPDWORD; 19 | 20 | struct POINT 21 | { 22 | long x; 23 | long y; 24 | } ; 25 | 26 | 27 | //typedef LPSTR PTSTR, LPTSTR; 28 | typedef LPSTR PTSTR; 29 | typedef LPSTR LPTSTR; 30 | 31 | typedef int INT; 32 | -------------------------------------------------------------------------------- /BIN/INC/WINUSER.H: -------------------------------------------------------------------------------- 1 | 2 | 3 | typedef HANDLE HACCEL; 4 | typedef HANDLE HICON; 5 | typedef HANDLE HMENU; 6 | typedef HANDLE HCURSOR; 7 | typedef HANDLE HBRUSH; 8 | typedef HANDLE HDC; 9 | 10 | typedef struct tagMSG { 11 | HWND hwnd; 12 | UINT message; 13 | WPARAM wParam; 14 | LPARAM lParam; 15 | DWORD time; 16 | POINT pt; 17 | } MSG, *PMSG, *NPMSG, *LPMSG; 18 | 19 | 20 | int __stdcall LoadStringA(HINSTANCE hInstance,UINT uID,LPSTR lpBuffer,int nBufferMax); 21 | HACCEL __stdcall LoadAcceleratorsA(HINSTANCE hInstance,LPCSTR lpTableName); 22 | BOOL __stdcall GetMessageA(LPMSG lpMsg,HWND hWnd,UINT wMsgFilterMin,UINT wMsgFilterMax); 23 | int __stdcall TranslateAcceleratorA(HWND hWnd,HACCEL hAccTable,LPMSG lpMsg); 24 | 25 | HICON __stdcall LoadIconA(HINSTANCE hInstance,LPCSTR lpIconName); 26 | 27 | HWND __stdcall CreateWindowExA(DWORD dwExStyle,LPCSTR lpClassName,LPCSTR lpWindowName,DWORD dwStyle,int X,int Y,int nWidth,int nHeight,HWND hWndParent,HMENU hMenu,HINSTANCE hInstance,LPVOID lpParam); 28 | BOOL __stdcall ShowWindow(HWND hWnd,int nCmdShow); 29 | BOOL __stdcall UpdateWindow(HWND hWnd); 30 | 31 | BOOL __stdcall TranslateMessage(const MSG *lpMsg); 32 | long __stdcall DispatchMessageA(const MSG *lpMsg); 33 | 34 | HCURSOR __stdcall LoadCursorA(HINSTANCE hInstance,LPCSTR lpCursorName); 35 | 36 | 37 | //BOOL __stdcall GetWindowRect(HWND hWnd,LPRECT lpRect); 38 | BOOL __stdcall GetWindowRect(HWND hWnd,RECT * lpRect); 39 | 40 | HWND __stdcall GetDesktopWindow(); 41 | 42 | typedef long LRESULT; 43 | 44 | typedef LRESULT (__stdcall * WNDPROC)(HWND, UINT, WPARAM, LPARAM); 45 | 46 | struct WNDCLASSEXA 47 | { 48 | UINT cbSize; 49 | 50 | UINT style; 51 | WNDPROC lpfnWndProc; 52 | int cbClsExtra; 53 | int cbWndExtra; 54 | HINSTANCE hInstance; 55 | HICON hIcon; 56 | HCURSOR hCursor; 57 | HBRUSH hbrBackground; 58 | LPCSTR lpszMenuName; 59 | LPCSTR lpszClassName; 60 | 61 | HICON hIconSm; 62 | } ; 63 | 64 | typedef WORD ATOM; 65 | 66 | ATOM __stdcall RegisterClassExA(const WNDCLASSEXA *); 67 | 68 | 69 | typedef BOOL (__stdcall * DLGPROC)(HWND, UINT, WPARAM, LPARAM); 70 | 71 | LRESULT __stdcall DefWindowProcA(HWND hWnd,UINT Msg,WPARAM wParam,LPARAM lParam); 72 | BOOL __stdcall DestroyWindow(HWND hWnd); 73 | int __stdcall DialogBoxParamA(HINSTANCE hInstance,LPCSTR lpTemplateName,HWND hWndParent,DLGPROC lpDialogFunc,LPARAM dwInitParam); 74 | 75 | struct PAINTSTRUCT 76 | { 77 | HDC hdc; 78 | BOOL fErase; 79 | RECT rcPaint; 80 | BOOL fRestore; 81 | BOOL fIncUpdate; 82 | // BYTE rgbReserved[32]; 83 | } ; 84 | 85 | HDC __stdcall BeginPaint(HWND hWnd,PAINTSTRUCT *lpPaint); 86 | BOOL __stdcall EndPaint(HWND hWnd,const PAINTSTRUCT *lpPaint); 87 | 88 | BOOL __stdcall GetClientRect(HWND hWnd,LPRECT lpRect); 89 | 90 | typedef DWORD COLORREF; 91 | COLORREF __stdcall SetPixel(HDC,int,int,COLORREF); 92 | 93 | void __stdcall PostQuitMessage(int nExitCode); 94 | 95 | BOOL __stdcall EndDialog(HWND hDlg,int nResult); 96 | 97 | int __stdcall DrawTextA(HDC hDC,LPCSTR lpString,int nCount,LPRECT lpRect,UINT uFormat); 98 | 99 | extern "C" { 100 | void __cdecl __set_app_type(int); 101 | int __cdecl getpid(); 102 | int __cdecl _getpid(); 103 | void __cdecl exit(int); 104 | //__p__fmode 105 | //__fpclear 106 | 107 | struct _startupinfo 108 | { 109 | int newmode; 110 | } ; 111 | 112 | void __cdecl __getmainargs(int *, char ***, char ***, int, _startupinfo *); 113 | } 114 | 115 | typedef HANDLE HMODULE; 116 | 117 | HMODULE __stdcall GetModuleHandleA(LPCSTR lpModuleName); 118 | 119 | void __stdcall GetStartupInfoA(LPSTARTUPINFOA lpStartupInfo); 120 | 121 | 122 | int __stdcall LoadStringW(HINSTANCE hInstance, UINT uID, LPWSTR lpBuffer, int nBufferMax); 123 | 124 | HWND __stdcall CreateWindowExW( 125 | DWORD dwExStyle, 126 | LPCWSTR lpClassName, 127 | LPCWSTR lpWindowName, 128 | DWORD dwStyle, 129 | int X, 130 | int Y, 131 | int nWidth, 132 | int nHeight, 133 | HWND hWndParent , 134 | HMENU hMenu, 135 | HINSTANCE hInstance, 136 | LPVOID lpParam); 137 | //------------ 138 | 139 | 140 | HACCEL __stdcall LoadAcceleratorsW( 141 | HINSTANCE hInstance, 142 | LPCWSTR lpTableName); 143 | 144 | 145 | BOOL __stdcall GetMessageW( 146 | LPMSG lpMsg, 147 | HWND hWnd , 148 | UINT wMsgFilterMin, 149 | UINT wMsgFilterMax); 150 | 151 | 152 | BOOL __stdcall IsDialogMessageW( 153 | HWND hDlg, 154 | LPMSG lpMsg); 155 | 156 | 157 | int __stdcall TranslateAcceleratorW( 158 | HWND hWnd, 159 | HACCEL hAccTable, 160 | LPMSG lpMsg); 161 | 162 | 163 | BOOL __stdcall TranslateMessage(const MSG *lpMsg); 164 | 165 | 166 | LONG __stdcall DispatchMessageW(const MSG *lpMsg); 167 | 168 | HLOCAL __stdcall LocalFree(HLOCAL hMem); 169 | 170 | -------------------------------------------------------------------------------- /BIN/INC/WinBase.h: -------------------------------------------------------------------------------- 1 | // WinBase.h 2 | typedef struct _OVERLAPPED { 3 | DWORD Internal; 4 | DWORD InternalHigh; 5 | DWORD Offset; 6 | DWORD OffsetHigh; 7 | HANDLE hEvent; 8 | } OVERLAPPED, *LPOVERLAPPED; 9 | 10 | typedef struct _SECURITY_ATTRIBUTES { 11 | DWORD nLength; 12 | LPVOID lpSecurityDescriptor; 13 | BOOL bInheritHandle; 14 | } SECURITY_ATTRIBUTES, *PSECURITY_ATTRIBUTES, *LPSECURITY_ATTRIBUTES; 15 | 16 | typedef struct _PROCESS_INFORMATION { 17 | HANDLE hProcess; 18 | HANDLE hThread; 19 | DWORD dwProcessId; 20 | DWORD dwThreadId; 21 | } PROCESS_INFORMATION, *PPROCESS_INFORMATION, *LPPROCESS_INFORMATION; 22 | 23 | typedef DWORD (__stdcall *PTHREAD_START_ROUTINE)(LPVOID lpThreadParameter); 24 | typedef PTHREAD_START_ROUTINE LPTHREAD_START_ROUTINE; 25 | 26 | HANDLE __stdcall CreateThread(LPSECURITY_ATTRIBUTES lpThreadAttributes,DWORD dwStackSize,LPTHREAD_START_ROUTINE lpStartAddress,LPVOID lpParameter,DWORD dwCreationFlags,LPDWORD lpThreadId); 27 | 28 | void __stdcall Sleep(DWORD dwMilliseconds); 29 | 30 | typedef struct _OSVERSIONINFOA { 31 | DWORD dwOSVersionInfoSize; 32 | DWORD dwMajorVersion; 33 | DWORD dwMinorVersion; 34 | DWORD dwBuildNumber; 35 | DWORD dwPlatformId; 36 | char szCSDVersion[ 128 ]; // Maintenance string for PSS usage 37 | } OSVERSIONINFOA, *POSVERSIONINFOA, *LPOSVERSIONINFOA; 38 | 39 | BOOL __stdcall GetVersionExA(LPOSVERSIONINFOA lpVersionInformation); 40 | 41 | struct STARTUPINFOA 42 | { 43 | DWORD cb; 44 | LPSTR lpReserved; 45 | LPSTR lpDesktop; 46 | LPSTR lpTitle; 47 | DWORD dwX; 48 | DWORD dwY; 49 | DWORD dwXSize; 50 | DWORD dwYSize; 51 | DWORD dwXCountChars; 52 | DWORD dwYCountChars; 53 | DWORD dwFillAttribute; 54 | DWORD dwFlags; 55 | WORD wShowWindow; 56 | WORD cbReserved2; 57 | LPBYTE lpReserved2; 58 | HANDLE hStdInput; 59 | HANDLE hStdOutput; 60 | HANDLE hStdError; 61 | } ; 62 | 63 | typedef STARTUPINFOA * LPSTARTUPINFOA; 64 | 65 | BOOL __stdcall CreateProcessA(LPCSTR lpApplicationName,LPSTR lpCommandLine,LPSECURITY_ATTRIBUTES lpProcessAttributes,LPSECURITY_ATTRIBUTES lpThreadAttributes,BOOL bInheritHandles,DWORD dwCreationFlags,LPVOID lpEnvironment,LPCSTR lpCurrentDirectory,LPSTARTUPINFOA lpStartupInfo,LPPROCESS_INFORMATION lpProcessInformation); 66 | 67 | BOOL __stdcall CreatePipe(PHANDLE hReadPipe,PHANDLE hWritePipe,LPSECURITY_ATTRIBUTES lpPipeAttributes,DWORD nSize); 68 | 69 | BOOL __stdcall WriteFile(HANDLE hFile,LPCVOID lpBuffer,DWORD nNumberOfBytesToWrite,LPDWORD lpNumberOfBytesWritten,LPOVERLAPPED lpOverlapped); 70 | 71 | BOOL __stdcall ReadFile(HANDLE hFile,LPVOID lpBuffer,DWORD nNumberOfBytesToRead,LPDWORD lpNumberOfBytesRead,LPOVERLAPPED lpOverlapped); 72 | 73 | typedef HANDLE HLOCAL; 74 | HLOCAL __stdcall LocalAlloc(UINT uFlags, UINT uBytes); 75 | 76 | HLOCAL __stdcall LocalReAlloc(HLOCAL hMem, UINT uBytes, UINT uFlags); 77 | 78 | typedef void *LPWSTR, *PWSTR; 79 | typedef const void *LPCWSTR, *PCWSTR; 80 | 81 | UINT __stdcall GetProfileIntW( 82 | LPCWSTR lpAppName, 83 | LPCWSTR lpKeyName, 84 | INT nDefault 85 | ); 86 | 87 | 88 | 89 | -------------------------------------------------------------------------------- /BIN/INC/WinSock2.h: -------------------------------------------------------------------------------- 1 | // WinSock2.h 2 | 3 | typedef unsigned int SOCKET; 4 | typedef unsigned short u_short; 5 | 6 | #define WSADESCRIPTION_LEN 256 7 | #define WSASYS_STATUS_LEN 128 8 | 9 | typedef struct WSAData { 10 | WORD wVersion; 11 | WORD wHighVersion; 12 | char szDescription[257]; //[WSADESCRIPTION_LEN+1]; 13 | char szSystemStatus[129]; //[WSASYS_STATUS_LEN+1]; 14 | unsigned short iMaxSockets; 15 | unsigned short iMaxUdpDg; 16 | char FAR * lpVendorInfo; 17 | } WSADATA, FAR * LPWSADATA; 18 | 19 | struct sockaddr { 20 | u_short sa_family; /* address family */ 21 | char sa_data[14]; /* up to 14 bytes of direct address */ 22 | }; 23 | 24 | int __stdcall WSAStartup(WORD wVersionRequested,LPWSADATA lpWSAData); 25 | SOCKET __stdcall accept(SOCKET s, sockaddr *addr,int *addrlen); 26 | int __stdcall bind(SOCKET s,const sockaddr *name,int namelen); 27 | int __stdcall listen(SOCKET s,int backlog); 28 | int __stdcall recv(SOCKET s,char *buf,int len,int flags); 29 | int __stdcall send(SOCKET s,const char *buf,int len,int flags); 30 | SOCKET __stdcall socket(int af,int type,int protocol); 31 | 32 | 33 | -------------------------------------------------------------------------------- /BIN/INC/my.h: -------------------------------------------------------------------------------- 1 | // exe2c include file 2 | // edit this file to add new function define 3 | 4 | typedef DWORD size_t; 5 | typedef DWORD UINT; 6 | 7 | typedef void *PVOID; 8 | typedef void *LPVOID; 9 | typedef PVOID HANDLE; 10 | typedef int BOOL; 11 | 12 | 13 | typedef HANDLE HWND; 14 | 15 | int __stdcall MessageBoxA(HWND, char *, char *, DWORD); 16 | 17 | typedef HANDLE HINSTANCE; 18 | 19 | typedef char *LPSTR, *PSTR; 20 | //typedef char *PSTR; 21 | //typedef char *LPSTR; 22 | 23 | typedef long LONG; 24 | 25 | #include "stdio.h" 26 | #include "stdlib.h" 27 | #include "windef.h" 28 | #include "winbase.h" 29 | #include "winuser.h" 30 | #include "mfc42.h" 31 | #include "winsock2.h" 32 | #include "winnls.h" 33 | #include "test.h" 34 | // ---------------------------------------------------------------- 35 | 36 | 37 | int __stdcall WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine,int nCmdShow); 38 | //int __stdcall _WinMain@16(HINSTANCE hInst,HINSTANCE hPreInst,LPSTR lpszCmdLine,int nCmdShow) 39 | 40 | extern "C" { 41 | void __cdecl EH_prolog(); 42 | void __stdcall CxxThrowException(int, int); 43 | int __cdecl main(int argc, char * argv[]); 44 | } 45 | 46 | -------------------------------------------------------------------------------- /BIN/INC/stdio.h: -------------------------------------------------------------------------------- 1 | // stdio.h for exe2c 2 | 3 | extern "C" { 4 | int __cdecl printf(const char *, ...); 5 | char * __cdecl strchr(char *, char); 6 | void * __cdecl memcpy(void *, const void *, size_t); 7 | int __cdecl memcmp(const void *, const void *, size_t); 8 | void * __cdecl memset(void *, int, size_t); 9 | char * __cdecl _strset(char *, int); 10 | char * __cdecl strcpy(char *, const char *); 11 | char * __cdecl strcat(char *, const char *); 12 | int __cdecl strcmp(const char *, const char *); 13 | size_t __cdecl strlen(const char *); 14 | 15 | int __cdecl _chdir(const char *); 16 | char * __cdecl _getcwd(char *, int); 17 | int __cdecl _mkdir(const char *); 18 | int __cdecl _rmdir(const char *); 19 | 20 | 21 | char * __cdecl _fullpath(char *, const char *, size_t); 22 | 23 | void __cdecl _splitpath(const char *, char *, char *, char *, char *); 24 | void __cdecl _makepath(char *, const char *, const char *, const char *, const char *); 25 | 26 | // long __cdecl _findfirst(const char *, struct _finddata_t *); 27 | // int __cdecl _findnext(long, struct _finddata_t *); 28 | long __cdecl _findfirst(const char *, DWORD *); 29 | int __cdecl _findnext(long, DWORD *); 30 | int __cdecl _findclose(long); 31 | 32 | // void * __cdecl memccpy(void *, const void *, int, unsigned int); 33 | // int __cdecl memicmp(const void *, const void *, unsigned int); 34 | void * __cdecl memccpy(void *, const void *, int, DWORD); 35 | int __cdecl memicmp(const void *, const void *, DWORD); 36 | int __cdecl strcmpi(const char *, const char *); 37 | int __cdecl stricmp(const char *, const char *); 38 | char * __cdecl strdup(const char *); 39 | char * __cdecl strlwr(char *); 40 | int __cdecl strnicmp(const char *, const char *, size_t); 41 | char * __cdecl strnset(char *, int, size_t); 42 | char * __cdecl strrev(char *); 43 | char * __cdecl strset(char *, int); 44 | char * __cdecl strupr(char *); 45 | 46 | char * __cdecl strchr(const char *, int); 47 | int __cdecl _strcmpi(const char *, const char *); 48 | int __cdecl _stricmp(const char *, const char *); 49 | int __cdecl strcoll(const char *, const char *); 50 | int __cdecl _stricoll(const char *, const char *); 51 | int __cdecl _strncoll(const char *, const char *, size_t); 52 | int __cdecl _strnicoll(const char *, const char *, size_t); 53 | size_t __cdecl strcspn(const char *, const char *); 54 | char * __cdecl _strdup(const char *); 55 | char * __cdecl _strerror(const char *); 56 | char * __cdecl strerror(int); 57 | char * __cdecl _strlwr(char *); 58 | char * __cdecl strncat(char *, const char *, size_t); 59 | int __cdecl strncmp(const char *, const char *, size_t); 60 | int __cdecl _strnicmp(const char *, const char *, size_t); 61 | char * __cdecl strncpy(char *, const char *, size_t); 62 | char * __cdecl _strnset(char *, int, size_t); 63 | char * __cdecl strpbrk(const char *, const char *); 64 | char * __cdecl strrchr(const char *, int); 65 | char * __cdecl _strrev(char *); 66 | size_t __cdecl strspn(const char *, const char *); 67 | char * __cdecl strstr(const char *, const char *); 68 | char * __cdecl strtok(char *, const char *); 69 | char * __cdecl _strupr(char *); 70 | size_t __cdecl strxfrm (char *, const char *, size_t); 71 | 72 | } //extern "C" 73 | 74 | -------------------------------------------------------------------------------- /BIN/INC/stdlib.h: -------------------------------------------------------------------------------- 1 | // stdlib.h for exe2c 2 | 3 | extern "C" { 4 | int __cdecl rand(); 5 | } 6 | -------------------------------------------------------------------------------- /BIN/INC/winnls.h: -------------------------------------------------------------------------------- 1 | typedef DWORD LCID; 2 | LCID __stdcall GetThreadLocale(); 3 | -------------------------------------------------------------------------------- /BIN/LIB/LIBC.LIB: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/BIN/LIB/LIBC.LIB -------------------------------------------------------------------------------- /BIN/exe2c.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/BIN/exe2c.dll -------------------------------------------------------------------------------- /BIN/exe2c.lib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/BIN/exe2c.lib -------------------------------------------------------------------------------- /BIN/exe2c_gui.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/BIN/exe2c_gui.exe -------------------------------------------------------------------------------- /BIN/me.txt: -------------------------------------------------------------------------------- 1 | This is ExeToC Decompiler first release version. 2 | 3 | http://sourceforge.net/projects/exetoc 4 | 5 | 6 | Have a try: 7 | run exe2c_gui.exe 8 | load petest.exe 9 | select a function and press button "optim" 10 | 11 | 12 | LiuTaoTao 13 | bookaa@rorsoft.com 14 | 2005.5.24 -------------------------------------------------------------------------------- /BIN/petest.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/BIN/petest.exe -------------------------------------------------------------------------------- /I_KSUNKNOWN/KsFrame.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/I_KSUNKNOWN/KsFrame.h -------------------------------------------------------------------------------- /I_KSUNKNOWN/Ks_OutBuf.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/I_KSUNKNOWN/Ks_OutBuf.h -------------------------------------------------------------------------------- /I_KSUNKNOWN/Ks_OutStr.h: -------------------------------------------------------------------------------- 1 | /////////////////////////////////////////////////////////////// 2 | // 3 | // KS_OutBuf.h 4 | // Copyright(C) 1999-2002 KnlSoft Inc. All right reserved 5 | // Created at 2002.1.26 6 | // Description: The interface description of the component 7 | // History: 8 | // 9 | /////////////////////////////////////////////////////////////// 10 | //#include "..\..\KS_OutStr\KS_OutStr.H" 11 | //#include "../I_KSUNKNOWN/KS_OutStr.h" 12 | //using namespace KS; 13 | 14 | #ifndef _KS_OUTSTR_H_ 15 | #define _KS_OUTSTR_H_ 16 | 17 | namespace KS 18 | { 19 | class COutStr 20 | { 21 | public: 22 | COutStr(int step = 256) 23 | { 24 | m_step = step; 25 | m_pbuf = NULL; 26 | m_bufsiz = m_allocsiz = 0; 27 | } 28 | COutStr(const COutStr& str) 29 | { 30 | OutStr(str); 31 | } 32 | ~COutStr() 33 | { 34 | clear(); 35 | } 36 | virtual void clear() 37 | { 38 | if (m_pbuf) 39 | delete m_pbuf; 40 | m_pbuf = NULL; 41 | m_bufsiz = m_allocsiz = 0; 42 | } 43 | 44 | public: 45 | //Add interface here 46 | // read buffer 47 | virtual char* __stdcall GetWritableBuf() const 48 | { 49 | return m_pbuf; 50 | } 51 | virtual PCSTR __stdcall c_str() const 52 | { 53 | return m_pbuf; 54 | } 55 | // write buffer 56 | virtual bool __stdcall Out1Char(char b1) 57 | { 58 | WORD w = (BYTE)b1; 59 | return OutStr((PCSTR)&w); 60 | } 61 | virtual bool __stdcall OutDWORD(DWORD d1) 62 | { 63 | char s[16]; 64 | ::sprintf(s, "%d", d1); 65 | return OutStr(s); 66 | } 67 | virtual bool __stdcall OutPut_2(const COutStr& p) 68 | { 69 | return this->OutStr(p); 70 | } 71 | virtual bool __stdcall OutStr(PCSTR pszStr) 72 | { 73 | int sLen = strlen(pszStr); 74 | if (0 == sLen) 75 | return true; 76 | if (m_bufsiz + sLen +1 > m_allocsiz) 77 | { 78 | int sz = m_bufsiz + sLen + 1; 79 | sz += m_step-1; 80 | sz -= sz % m_step; 81 | char* pnew = new char[sz]; 82 | if (pnew == NULL) 83 | return false; 84 | if (m_bufsiz != 0) 85 | strcpy(pnew, m_pbuf); 86 | delete m_pbuf; 87 | m_pbuf = pnew; 88 | m_allocsiz = sz; 89 | } 90 | strcpy(m_pbuf + m_bufsiz, pszStr); 91 | m_bufsiz += sLen; 92 | return true; 93 | } 94 | virtual bool __stdcall OutPut(const void* p, int iLen) 95 | { 96 | char* s = new char[iLen+1]; 97 | ::memcpy(s, p, iLen); 98 | s[iLen] = '\0'; 99 | bool b = this->OutStr(s); 100 | delete s; 101 | return b; 102 | } 103 | 104 | // static 105 | virtual int __stdcall BufSize() const 106 | { 107 | return m_bufsiz; 108 | } 109 | virtual int __stdcall StrLen() const 110 | { 111 | if (NULL == m_pbuf) 112 | return 0; 113 | return strlen(this->m_pbuf); 114 | } 115 | virtual bool __stdcall IfEmpty() const 116 | { 117 | // add by kuhx 118 | if (NULL == m_pbuf) 119 | return true; 120 | 121 | return(strlen(this->m_pbuf) == 0); 122 | } 123 | virtual bool __cdecl prtf(PCSTR fmt, ...) 124 | { 125 | va_list arglist; 126 | va_start(arglist, fmt); 127 | char achTempBuf[4096]; 128 | int nLen = vsprintf(achTempBuf, fmt, arglist); 129 | return this->OutStr(achTempBuf); 130 | } 131 | // store 132 | virtual bool __stdcall ReadFile(PCSTR pcszFilePath) 133 | { 134 | FILE* hFile = fopen(pcszFilePath, "rb"); 135 | if (hFile == NULL) 136 | return false; 137 | fseek(hFile, 0, SEEK_END); 138 | DWORD sz = ftell(hFile); 139 | fseek(hFile, 0, SEEK_SET); 140 | if (sz == 0) 141 | { 142 | fclose(hFile); 143 | return true; 144 | } 145 | char* pnew = new char[sz]; 146 | DWORD readsz = fread(pnew, 1, sz, hFile); 147 | fclose(hFile); 148 | if (readsz != sz) 149 | { 150 | delete pnew; 151 | return false; 152 | } 153 | //assert(m_pbuf == NULL); 154 | //assert(m_bufsiz == 0); 155 | m_pbuf = pnew; 156 | m_bufsiz = m_allocsiz = sz; 157 | return true; 158 | } 159 | virtual bool __stdcall WriteToFile(PCSTR pcszFilePath) const 160 | { 161 | FILE* ff = fopen(pcszFilePath, "wt"); 162 | if (ff) 163 | { 164 | fwrite(this->c_str(), this->BufSize(), 1, ff); 165 | fclose(ff); 166 | return true; 167 | } 168 | return false; 169 | } 170 | // memeory 171 | virtual void __stdcall SetStep(int step) 172 | { 173 | m_step = step; 174 | } 175 | 176 | virtual operator PCSTR() const 177 | { 178 | return m_pbuf; 179 | } 180 | virtual COutStr& operator += (PCSTR pszStr) 181 | { 182 | OutStr(pszStr); 183 | return *this; 184 | } 185 | virtual COutStr& operator += (char c) 186 | { 187 | Out1Char(c); 188 | return *this; 189 | } 190 | virtual COutStr& operator += (DWORD d) 191 | { 192 | OutDWORD(d); 193 | return *this; 194 | } 195 | virtual COutStr& operator + (PCSTR pszStr) 196 | { 197 | OutStr(pszStr); 198 | return *this; 199 | } 200 | virtual COutStr& operator + (char c) 201 | { 202 | Out1Char(c); 203 | return *this; 204 | } 205 | virtual COutStr& operator + (DWORD d) 206 | { 207 | OutDWORD(d); 208 | return *this; 209 | } 210 | 211 | //Add interface here 212 | 213 | private: 214 | //Add member here 215 | int m_step; 216 | char* m_pbuf; 217 | int m_bufsiz; 218 | int m_allocsiz; 219 | //Add member here 220 | 221 | }; 222 | 223 | } // namespace KS 224 | #endif // _KS_OUTSTR_H_ 225 | -------------------------------------------------------------------------------- /I_KSUNKNOWN/myassert.h: -------------------------------------------------------------------------------- 1 | #ifdef _DEBUG 2 | 3 | #define VERIFY_ISWRITEPOINTER(a) { if(::IsBadWritePtr(a, sizeof(LPDWORD))) \ 4 | { ::OutputDebugString(_T("Parameter ") _T(#a) _T(" is not a valid write pointer\r\n"));}} 5 | #define VERIFY_ISREADPOINTER(a) { if(::IsBadReadPtr(a, sizeof(LPDWORD)))\ 6 | { ::OutputDebugString(_T("Parameter ") _T(#a) _T(" is not a valid read pointer\r\n"));}} 7 | 8 | #define VERIFY_ISWRITEDATA(a, l) { if(::IsBadWritePtr(a, l)) \ 9 | { ::OutputDebugString(_T("Parameter ") _T(#a) _T(" is not a valid write area\r\n"));}} 10 | #define VERIFY_ISREADDATA(a, l) { if(::IsBadReadPtr(a, l)) \ 11 | { ::OutputDebugString(_T("Parameter ") _T(#a) _T(" is not a valid read area\r\n"));}} 12 | 13 | #define ASSERT_ISWRITEPOINTER(a) { if(::IsBadWritePtr(a, sizeof(LPDWORD))) \ 14 | { ::OutputDebugString(_T("Parameter ") _T(#a) _T(" is not a valid write pointer\r\n")); ASSERT(false);}} 15 | #define ASSERT_ISREADPOINTER(a) { if(::IsBadReadPtr(a, sizeof(LPDWORD))) \ 16 | { ::OutputDebugString(_T("Parameter ") _T(#a) _T(" is not a valid read pointer\r\n")); ASSERT(false);}} 17 | 18 | #define ASSERT_ISWRITEDATA(a, l) { if(::IsBadWritePtr(a, l)) \ 19 | { ::OutputDebugString(_T("Parameter ") _T(#a) _T(" is not a valid write area\r\n")); ASSERT(false);}} 20 | #define ASSERT_ISREADDATA(a, l) { if(::IsBadReadPtr(a, l)) \ 21 | { ::OutputDebugString(_T("Parameter ") _T(#a) _T(" is not a valid read area\r\n")); ASSERT(false);}} 22 | 23 | #else 24 | 25 | #define VERIFY_ISWRITEPOINTER(a) 26 | #define VERIFY_ISREADPOINTER(a) 27 | 28 | #define VERIFY_ISWRITEDATA(a, l) 29 | #define VERIFY_ISREADDATA(a, l) 30 | 31 | #define ASSERT_ISWRITEPOINTER(a) 32 | #define ASSERT_ISREADPOINTER(a) 33 | 34 | #define ASSERT_ISWRITEDATA(a, l) 35 | #define ASSERT_ISREADDATA(a, l) 36 | 37 | #endif -------------------------------------------------------------------------------- /exe2c/DLL/StdAfx.cpp: -------------------------------------------------------------------------------- 1 | // stdafx.cpp : source file that includes just the standard includes 2 | // exe2c.pch will be the pre-compiled header 3 | // stdafx.obj will contain the pre-compiled type information 4 | 5 | #include "stdafx.h" 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /exe2c/DLL/StdAfx.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/DLL/StdAfx.h -------------------------------------------------------------------------------- /exe2c/DLL/exe2c.def: -------------------------------------------------------------------------------- 1 | ; exe2c.def : Declares the module parameters for the DLL. 2 | 3 | LIBRARY "exe2c" 4 | DESCRIPTION 'exe2c Windows Dynamic Link Library' 5 | 6 | EXPORTS 7 | ; Explicit exports can go here 8 | -------------------------------------------------------------------------------- /exe2c/DLL/exe2c.dsp: -------------------------------------------------------------------------------- 1 | # Microsoft Developer Studio Project File - Name="exe2c" - Package Owner=<4> 2 | # Microsoft Developer Studio Generated Build File, Format Version 6.00 3 | # ** DO NOT EDIT ** 4 | 5 | # TARGTYPE "Win32 (x86) Dynamic-Link Library" 0x0102 6 | 7 | CFG=exe2c - Win32 Debug 8 | !MESSAGE This is not a valid makefile. To build this project using NMAKE, 9 | !MESSAGE use the Export Makefile command and run 10 | !MESSAGE 11 | !MESSAGE NMAKE /f "exe2c.mak". 12 | !MESSAGE 13 | !MESSAGE You can specify a configuration when running NMAKE 14 | !MESSAGE by defining the macro CFG on the command line. For example: 15 | !MESSAGE 16 | !MESSAGE NMAKE /f "exe2c.mak" CFG="exe2c - Win32 Debug" 17 | !MESSAGE 18 | !MESSAGE Possible choices for configuration are: 19 | !MESSAGE 20 | !MESSAGE "exe2c - Win32 Release" (based on "Win32 (x86) Dynamic-Link Library") 21 | !MESSAGE "exe2c - Win32 Debug" (based on "Win32 (x86) Dynamic-Link Library") 22 | !MESSAGE 23 | 24 | # Begin Project 25 | # PROP AllowPerConfigDependencies 0 26 | # PROP Scc_ProjName "" 27 | # PROP Scc_LocalPath "" 28 | CPP=cl.exe 29 | MTL=midl.exe 30 | RSC=rc.exe 31 | 32 | !IF "$(CFG)" == "exe2c - Win32 Release" 33 | 34 | # PROP BASE Use_MFC 6 35 | # PROP BASE Use_Debug_Libraries 0 36 | # PROP BASE Output_Dir "Release" 37 | # PROP BASE Intermediate_Dir "Release" 38 | # PROP BASE Target_Dir "" 39 | # PROP Use_MFC 6 40 | # PROP Use_Debug_Libraries 0 41 | # PROP Output_Dir "Release" 42 | # PROP Intermediate_Dir "Release" 43 | # PROP Ignore_Export_Lib 0 44 | # PROP Target_Dir "" 45 | # ADD BASE CPP /nologo /MD /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_WINDLL" /D "_AFXDLL" /Yu"stdafx.h" /FD /c 46 | # ADD CPP /nologo /MD /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_WINDLL" /D "_AFXDLL" /D "_MBCS" /D "_USRDLL" /Yu"stdafx.h" /FD /c 47 | # ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /win32 48 | # ADD MTL /nologo /D "NDEBUG" /mktyplib203 /win32 49 | # ADD BASE RSC /l 0x804 /d "NDEBUG" /d "_AFXDLL" 50 | # ADD RSC /l 0x409 /d "NDEBUG" /d "_AFXDLL" 51 | BSC32=bscmake.exe 52 | # ADD BASE BSC32 /nologo 53 | # ADD BSC32 /nologo 54 | LINK32=link.exe 55 | # ADD BASE LINK32 /nologo /subsystem:windows /dll /machine:I386 56 | # ADD LINK32 /nologo /subsystem:windows /dll /machine:I386 /out:"../../BIN/exe2c.dll" 57 | 58 | !ELSEIF "$(CFG)" == "exe2c - Win32 Debug" 59 | 60 | # PROP BASE Use_MFC 6 61 | # PROP BASE Use_Debug_Libraries 1 62 | # PROP BASE Output_Dir "Debug" 63 | # PROP BASE Intermediate_Dir "Debug" 64 | # PROP BASE Target_Dir "" 65 | # PROP Use_MFC 6 66 | # PROP Use_Debug_Libraries 1 67 | # PROP Output_Dir "Debug" 68 | # PROP Intermediate_Dir "Debug" 69 | # PROP Ignore_Export_Lib 0 70 | # PROP Target_Dir "" 71 | # ADD BASE CPP /nologo /MDd /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_WINDLL" /D "_AFXDLL" /Yu"stdafx.h" /FD /GZ /c 72 | # ADD CPP /nologo /MDd /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_WINDLL" /D "_AFXDLL" /D "_MBCS" /D "_USRDLL" /FR /Yu"stdafx.h" /FD /GZ /c 73 | # ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /win32 74 | # ADD MTL /nologo /D "_DEBUG" /mktyplib203 /win32 75 | # ADD BASE RSC /l 0x804 /d "_DEBUG" /d "_AFXDLL" 76 | # ADD RSC /l 0x409 /d "_DEBUG" /d "_AFXDLL" 77 | BSC32=bscmake.exe 78 | # ADD BASE BSC32 /nologo 79 | # ADD BSC32 /nologo 80 | LINK32=link.exe 81 | # ADD BASE LINK32 /nologo /subsystem:windows /dll /debug /machine:I386 /pdbtype:sept 82 | # ADD LINK32 /nologo /subsystem:windows /dll /debug /machine:I386 /out:"../../BIN/exe2c.dll" /implib:"../../BIN/exe2c.lib" /pdbtype:sept 83 | # SUBTRACT LINK32 /pdb:none 84 | 85 | !ENDIF 86 | 87 | # Begin Target 88 | 89 | # Name "exe2c - Win32 Release" 90 | # Name "exe2c - Win32 Debug" 91 | # Begin Group "Source Files" 92 | 93 | # PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat" 94 | # Begin Group "DLL" 95 | 96 | # PROP Default_Filter "" 97 | # Begin Source File 98 | 99 | SOURCE=.\exe2c.def 100 | # End Source File 101 | # Begin Source File 102 | 103 | SOURCE=.\exe2c_DLL.cpp 104 | # End Source File 105 | # Begin Source File 106 | 107 | SOURCE=.\exe2c_DLL.h 108 | # End Source File 109 | # Begin Source File 110 | 111 | SOURCE=.\StdAfx.cpp 112 | # ADD CPP /Yc"stdafx.h" 113 | # End Source File 114 | # End Group 115 | # Begin Group "LibScanner" 116 | 117 | # PROP Default_Filter "" 118 | # Begin Source File 119 | 120 | SOURCE=..\SRC\CLibScanner.CPP 121 | # End Source File 122 | # Begin Source File 123 | 124 | SOURCE=..\SRC\CLibScanner.H 125 | # End Source File 126 | # Begin Source File 127 | 128 | SOURCE=..\LibScanner.H 129 | # End Source File 130 | # End Group 131 | # Begin Source File 132 | 133 | SOURCE=..\SRC\00000.h 134 | # End Source File 135 | # Begin Source File 136 | 137 | SOURCE=..\SRC\analysis.cpp 138 | # End Source File 139 | # Begin Source File 140 | 141 | SOURCE=..\SRC\CApiManage.cpp 142 | # End Source File 143 | # Begin Source File 144 | 145 | SOURCE=..\SRC\CApiManage.h 146 | # End Source File 147 | # Begin Source File 148 | 149 | SOURCE=..\SRC\CCbuf.cpp 150 | # End Source File 151 | # Begin Source File 152 | 153 | SOURCE=..\SRC\CCbuf.h 154 | # End Source File 155 | # Begin Source File 156 | 157 | SOURCE=..\SRC\CClassManage.cpp 158 | # End Source File 159 | # Begin Source File 160 | 161 | SOURCE=..\SRC\CClassManage.h 162 | # End Source File 163 | # Begin Source File 164 | 165 | SOURCE=..\SRC\CCodeList.cpp 166 | # End Source File 167 | # Begin Source File 168 | 169 | SOURCE=..\SRC\CCodeList.h 170 | # End Source File 171 | # Begin Source File 172 | 173 | SOURCE=..\SRC\CEnumMng.cpp 174 | # End Source File 175 | # Begin Source File 176 | 177 | SOURCE=..\SRC\CEnumMng.h 178 | # End Source File 179 | # Begin Source File 180 | 181 | SOURCE=..\SRC\Cexe2c.CPP 182 | # End Source File 183 | # Begin Source File 184 | 185 | SOURCE=..\SRC\Cexe2c.H 186 | # End Source File 187 | # Begin Source File 188 | 189 | SOURCE=..\SRC\CExprManage.cpp 190 | # End Source File 191 | # Begin Source File 192 | 193 | SOURCE=..\SRC\CExprManage.h 194 | # End Source File 195 | # Begin Source File 196 | 197 | SOURCE=..\SRC\CFunc.cpp 198 | # End Source File 199 | # Begin Source File 200 | 201 | SOURCE=..\SRC\CFunc.h 202 | # End Source File 203 | # Begin Source File 204 | 205 | SOURCE=..\SRC\CFunc_CreateInstrList.cpp 206 | # End Source File 207 | # Begin Source File 208 | 209 | SOURCE=..\SRC\CFuncOptim.cpp 210 | # End Source File 211 | # Begin Source File 212 | 213 | SOURCE=..\SRC\CFuncPrt.cpp 214 | # End Source File 215 | # Begin Source File 216 | 217 | SOURCE=..\SRC\CFuncStep1.cpp 218 | # End Source File 219 | # Begin Source File 220 | 221 | SOURCE=..\SRC\CFuncType.cpp 222 | # End Source File 223 | # Begin Source File 224 | 225 | SOURCE=..\SRC\CFuncType.h 226 | # End Source File 227 | # Begin Source File 228 | 229 | SOURCE=..\SRC\CISC.H 230 | # End Source File 231 | # Begin Source File 232 | 233 | SOURCE=..\SRC\CMyString.cpp 234 | # End Source File 235 | # Begin Source File 236 | 237 | SOURCE=..\SRC\CMyString.h 238 | # End Source File 239 | # Begin Source File 240 | 241 | SOURCE=..\SRC\CNameID.cpp 242 | # End Source File 243 | # Begin Source File 244 | 245 | SOURCE=..\SRC\CNameID.h 246 | # End Source File 247 | # Begin Source File 248 | 249 | SOURCE=..\SRC\ComplexInstr.cpp 250 | # End Source File 251 | # Begin Source File 252 | 253 | SOURCE=..\SRC\ComplexInstr.h 254 | # End Source File 255 | # Begin Source File 256 | 257 | SOURCE=..\SRC\CStrategy.cpp 258 | # End Source File 259 | # Begin Source File 260 | 261 | SOURCE=..\SRC\CXmlList.cpp 262 | # End Source File 263 | # Begin Source File 264 | 265 | SOURCE=..\SRC\CXmlList.h 266 | # End Source File 267 | # Begin Source File 268 | 269 | SOURCE=..\SRC\CXmlPrt.cpp 270 | # End Source File 271 | # Begin Source File 272 | 273 | SOURCE=..\SRC\CXmlPrt.h 274 | # End Source File 275 | # Begin Source File 276 | 277 | SOURCE=..\SRC\dasm.h 278 | # End Source File 279 | # Begin Source File 280 | 281 | SOURCE=..\SRC\DataType.cpp 282 | # End Source File 283 | # Begin Source File 284 | 285 | SOURCE=..\SRC\DataType.h 286 | # End Source File 287 | # Begin Source File 288 | 289 | SOURCE=..\SRC\Deasm_Init.CPP 290 | # End Source File 291 | # Begin Source File 292 | 293 | SOURCE=..\SRC\Disasm.cpp 294 | # End Source File 295 | # Begin Source File 296 | 297 | SOURCE=..\SRC\DLL32DEF.cpp 298 | # End Source File 299 | # Begin Source File 300 | 301 | SOURCE=..\SRC\DLL32DEF.h 302 | # End Source File 303 | # Begin Source File 304 | 305 | SOURCE=..\SRC\enum.h 306 | # End Source File 307 | # Begin Source File 308 | 309 | SOURCE=..\SRC\exe2c.cpp 310 | # End Source File 311 | # Begin Source File 312 | 313 | SOURCE=.\exe2c_DLL.rc 314 | # End Source File 315 | # Begin Source File 316 | 317 | SOURCE=..\SRC\EXPR.h 318 | # End Source File 319 | # Begin Source File 320 | 321 | SOURCE=..\SRC\FileLoad.cpp 322 | # End Source File 323 | # Begin Source File 324 | 325 | SOURCE=..\SRC\FileLoad.h 326 | # End Source File 327 | # Begin Source File 328 | 329 | SOURCE=..\SRC\hpp.cpp 330 | # End Source File 331 | # Begin Source File 332 | 333 | SOURCE=..\SRC\hpp.h 334 | # End Source File 335 | # Begin Source File 336 | 337 | SOURCE=..\SRC\INSTR.cpp 338 | # End Source File 339 | # Begin Source File 340 | 341 | SOURCE=..\SRC\INSTR.h 342 | # End Source File 343 | # Begin Source File 344 | 345 | SOURCE=..\SRC\main.cpp 346 | # End Source File 347 | # Begin Source File 348 | 349 | SOURCE=..\SRC\mylist.h 350 | # End Source File 351 | # Begin Source File 352 | 353 | SOURCE=..\SRC\optim.cpp 354 | # End Source File 355 | # Begin Source File 356 | 357 | SOURCE=..\SRC\PEload.cpp 358 | # End Source File 359 | # Begin Source File 360 | 361 | SOURCE=..\SRC\proto.h 362 | # End Source File 363 | # Begin Source File 364 | 365 | SOURCE=..\SRC\PUB.cpp 366 | # End Source File 367 | # Begin Source File 368 | 369 | SOURCE=..\SRC\standard.cpp 370 | # End Source File 371 | # Begin Source File 372 | 373 | SOURCE=..\SRC\standard.h 374 | # End Source File 375 | # Begin Source File 376 | 377 | SOURCE=..\SRC\strparse.cpp 378 | # End Source File 379 | # Begin Source File 380 | 381 | SOURCE=..\SRC\strparse.h 382 | # End Source File 383 | # Begin Source File 384 | 385 | SOURCE=..\SRC\SVarType.cpp 386 | # End Source File 387 | # Begin Source File 388 | 389 | SOURCE=..\SRC\SVarType.h 390 | # End Source File 391 | # Begin Source File 392 | 393 | SOURCE=..\SRC\XmlType.cpp 394 | # End Source File 395 | # Begin Source File 396 | 397 | SOURCE=..\SRC\XMLTYPE.h 398 | # End Source File 399 | # End Group 400 | # Begin Group "Header Files" 401 | 402 | # PROP Default_Filter "h;hpp;hxx;hm;inl" 403 | # Begin Source File 404 | 405 | SOURCE=..\SRC\CFuncStep1.h 406 | # End Source File 407 | # Begin Source File 408 | 409 | SOURCE=..\SRC\CStrategy.h 410 | # End Source File 411 | # Begin Source File 412 | 413 | SOURCE=..\exe2c.H 414 | # End Source File 415 | # Begin Source File 416 | 417 | SOURCE=..\..\I_KSUNKNOWN\KsFrame.h 418 | # End Source File 419 | # Begin Source File 420 | 421 | SOURCE=.\StdAfx.h 422 | # End Source File 423 | # End Group 424 | # Begin Source File 425 | 426 | SOURCE=..\SRC\me.txt 427 | # End Source File 428 | # End Target 429 | # End Project 430 | -------------------------------------------------------------------------------- /exe2c/DLL/exe2c.dsw: -------------------------------------------------------------------------------- 1 | Microsoft Developer Studio Workspace File, Format Version 6.00 2 | # WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE! 3 | 4 | ############################################################################### 5 | 6 | Project: "exe2c"=.\exe2c.dsp - Package Owner=<4> 7 | 8 | Package=<5> 9 | {{{ 10 | }}} 11 | 12 | Package=<4> 13 | {{{ 14 | }}} 15 | 16 | ############################################################################### 17 | 18 | Global: 19 | 20 | Package=<5> 21 | {{{ 22 | }}} 23 | 24 | Package=<3> 25 | {{{ 26 | }}} 27 | 28 | ############################################################################### 29 | 30 | -------------------------------------------------------------------------------- /exe2c/DLL/exe2c.plg: -------------------------------------------------------------------------------- 1 | 2 | 3 |
  4 | 

Build Log

5 |

6 | --------------------Configuration: exe2c - Win32 Release-------------------- 7 |

8 |

Command Lines

9 | Creating command line "rc.exe /l 0x409 /fo"Release/exe2c_DLL.res" /d "NDEBUG" /d "_AFXDLL" "E:\work\work1_exe2c\exe2c_src\exe2c\DLL\exe2c_DLL.rc"" 10 | Creating temporary file "D:\DOCUME~1\lewton1\LOCALS~1\Temp\RSP1C2.tmp" with contents 11 | [ 12 | /nologo /MD /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_WINDLL" /D "_AFXDLL" /D "_MBCS" /D "_USRDLL" /Fp"Release/exe2c.pch" /Yu"stdafx.h" /Fo"Release/" /Fd"Release/" /FD /c 13 | "E:\work\work1_exe2c\exe2c_src\exe2c\DLL\exe2c_DLL.cpp" 14 | "E:\work\work1_exe2c\exe2c_src\exe2c\SRC\CLibScanner.CPP" 15 | "E:\work\work1_exe2c\exe2c_src\exe2c\SRC\analysis.cpp" 16 | "E:\work\work1_exe2c\exe2c_src\exe2c\SRC\CApiManage.cpp" 17 | "E:\work\work1_exe2c\exe2c_src\exe2c\SRC\CCbuf.cpp" 18 | "E:\work\work1_exe2c\exe2c_src\exe2c\SRC\CClassManage.cpp" 19 | "E:\work\work1_exe2c\exe2c_src\exe2c\SRC\CCodeList.cpp" 20 | "E:\work\work1_exe2c\exe2c_src\exe2c\SRC\CEnumMng.cpp" 21 | "E:\work\work1_exe2c\exe2c_src\exe2c\SRC\Cexe2c.CPP" 22 | "E:\work\work1_exe2c\exe2c_src\exe2c\SRC\CExprManage.cpp" 23 | "E:\work\work1_exe2c\exe2c_src\exe2c\SRC\CFunc.cpp" 24 | "E:\work\work1_exe2c\exe2c_src\exe2c\SRC\CFunc_CreateInstrList.cpp" 25 | "E:\work\work1_exe2c\exe2c_src\exe2c\SRC\CFuncOptim.cpp" 26 | "E:\work\work1_exe2c\exe2c_src\exe2c\SRC\CFuncPrt.cpp" 27 | "E:\work\work1_exe2c\exe2c_src\exe2c\SRC\CFuncStep1.cpp" 28 | "E:\work\work1_exe2c\exe2c_src\exe2c\SRC\CFuncType.cpp" 29 | "E:\work\work1_exe2c\exe2c_src\exe2c\SRC\CMyString.cpp" 30 | "E:\work\work1_exe2c\exe2c_src\exe2c\SRC\CNameID.cpp" 31 | "E:\work\work1_exe2c\exe2c_src\exe2c\SRC\ComplexInstr.cpp" 32 | "E:\work\work1_exe2c\exe2c_src\exe2c\SRC\CStrategy.cpp" 33 | "E:\work\work1_exe2c\exe2c_src\exe2c\SRC\CXmlList.cpp" 34 | "E:\work\work1_exe2c\exe2c_src\exe2c\SRC\CXmlPrt.cpp" 35 | "E:\work\work1_exe2c\exe2c_src\exe2c\SRC\DataType.cpp" 36 | "E:\work\work1_exe2c\exe2c_src\exe2c\SRC\Deasm_Init.CPP" 37 | "E:\work\work1_exe2c\exe2c_src\exe2c\SRC\Disasm.cpp" 38 | "E:\work\work1_exe2c\exe2c_src\exe2c\SRC\DLL32DEF.cpp" 39 | "E:\work\work1_exe2c\exe2c_src\exe2c\SRC\exe2c.cpp" 40 | "E:\work\work1_exe2c\exe2c_src\exe2c\SRC\FileLoad.cpp" 41 | "E:\work\work1_exe2c\exe2c_src\exe2c\SRC\hpp.cpp" 42 | "E:\work\work1_exe2c\exe2c_src\exe2c\SRC\INSTR.cpp" 43 | "E:\work\work1_exe2c\exe2c_src\exe2c\SRC\main.cpp" 44 | "E:\work\work1_exe2c\exe2c_src\exe2c\SRC\optim.cpp" 45 | "E:\work\work1_exe2c\exe2c_src\exe2c\SRC\PEload.cpp" 46 | "E:\work\work1_exe2c\exe2c_src\exe2c\SRC\PUB.cpp" 47 | "E:\work\work1_exe2c\exe2c_src\exe2c\SRC\standard.cpp" 48 | "E:\work\work1_exe2c\exe2c_src\exe2c\SRC\strparse.cpp" 49 | "E:\work\work1_exe2c\exe2c_src\exe2c\SRC\SVarType.cpp" 50 | "E:\work\work1_exe2c\exe2c_src\exe2c\SRC\XmlType.cpp" 51 | ] 52 | Creating command line "cl.exe @D:\DOCUME~1\lewton1\LOCALS~1\Temp\RSP1C2.tmp" 53 | Creating temporary file "D:\DOCUME~1\lewton1\LOCALS~1\Temp\RSP1C3.tmp" with contents 54 | [ 55 | /nologo /MD /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_WINDLL" /D "_AFXDLL" /D "_MBCS" /D "_USRDLL" /Fp"Release/exe2c.pch" /Yc"stdafx.h" /Fo"Release/" /Fd"Release/" /FD /c 56 | "E:\work\work1_exe2c\exe2c_src\exe2c\DLL\StdAfx.cpp" 57 | ] 58 | Creating command line "cl.exe @D:\DOCUME~1\lewton1\LOCALS~1\Temp\RSP1C3.tmp" 59 | Creating temporary file "D:\DOCUME~1\lewton1\LOCALS~1\Temp\RSP1C4.tmp" with contents 60 | [ 61 | /nologo /subsystem:windows /dll /incremental:no /pdb:"Release/exe2c.pdb" /machine:I386 /def:".\exe2c.def" /out:"../../BIN/exe2c.dll" /implib:"Release/exe2c.lib" 62 | .\Release\exe2c_DLL.obj 63 | .\Release\StdAfx.obj 64 | .\Release\CLibScanner.obj 65 | .\Release\analysis.obj 66 | .\Release\CApiManage.obj 67 | .\Release\CCbuf.obj 68 | .\Release\CClassManage.obj 69 | .\Release\CCodeList.obj 70 | .\Release\CEnumMng.obj 71 | .\Release\Cexe2c.obj 72 | .\Release\CExprManage.obj 73 | .\Release\CFunc.obj 74 | .\Release\CFunc_CreateInstrList.obj 75 | .\Release\CFuncOptim.obj 76 | .\Release\CFuncPrt.obj 77 | .\Release\CFuncStep1.obj 78 | .\Release\CFuncType.obj 79 | .\Release\CMyString.obj 80 | .\Release\CNameID.obj 81 | .\Release\ComplexInstr.obj 82 | .\Release\CStrategy.obj 83 | .\Release\CXmlList.obj 84 | .\Release\CXmlPrt.obj 85 | .\Release\DataType.obj 86 | .\Release\Deasm_Init.obj 87 | .\Release\Disasm.obj 88 | .\Release\DLL32DEF.obj 89 | .\Release\exe2c.obj 90 | .\Release\FileLoad.obj 91 | .\Release\hpp.obj 92 | .\Release\INSTR.obj 93 | .\Release\main.obj 94 | .\Release\optim.obj 95 | .\Release\PEload.obj 96 | .\Release\PUB.obj 97 | .\Release\standard.obj 98 | .\Release\strparse.obj 99 | .\Release\SVarType.obj 100 | .\Release\XmlType.obj 101 | .\Release\exe2c_DLL.res 102 | ] 103 | Creating command line "link.exe @D:\DOCUME~1\lewton1\LOCALS~1\Temp\RSP1C4.tmp" 104 |

Output Window

105 | Compiling resources... 106 | Compiling... 107 | StdAfx.cpp 108 | Compiling... 109 | exe2c_DLL.cpp 110 | CLibScanner.CPP 111 | analysis.cpp 112 | CApiManage.cpp 113 | CCbuf.cpp 114 | CClassManage.cpp 115 | CCodeList.cpp 116 | CEnumMng.cpp 117 | Cexe2c.CPP 118 | CExprManage.cpp 119 | CFunc.cpp 120 | CFunc_CreateInstrList.cpp 121 | CFuncOptim.cpp 122 | CFuncPrt.cpp 123 | CFuncStep1.cpp 124 | CFuncType.cpp 125 | CMyString.cpp 126 | CNameID.cpp 127 | ComplexInstr.cpp 128 | CStrategy.cpp 129 | Generating Code... 130 | Compiling... 131 | CXmlList.cpp 132 | CXmlPrt.cpp 133 | DataType.cpp 134 | Deasm_Init.CPP 135 | Disasm.cpp 136 | DLL32DEF.cpp 137 | exe2c.cpp 138 | FileLoad.cpp 139 | hpp.cpp 140 | INSTR.cpp 141 | main.cpp 142 | optim.cpp 143 | PEload.cpp 144 | PUB.cpp 145 | standard.cpp 146 | strparse.cpp 147 | SVarType.cpp 148 | XmlType.cpp 149 | Generating Code... 150 | Linking... 151 | Creating library Release/exe2c.lib and object Release/exe2c.exp 152 | 153 | 154 | 155 |

Results

156 | exe2c.dll - 0 error(s), 0 warning(s) 157 |
158 | 159 | 160 | -------------------------------------------------------------------------------- /exe2c/DLL/exe2c_DLL.cpp: -------------------------------------------------------------------------------- 1 | // exe2c_DLL.cpp : Defines the initialization routines for the DLL. 2 | // 3 | 4 | #include "stdafx.h" 5 | #include "exe2c_DLL.h" 6 | 7 | #ifdef _DEBUG 8 | #define new DEBUG_NEW 9 | #undef THIS_FILE 10 | static char THIS_FILE[] = __FILE__; 11 | #endif 12 | 13 | // 14 | // Note! 15 | // 16 | // If this DLL is dynamically linked against the MFC 17 | // DLLs, any functions exported from this DLL which 18 | // call into MFC must have the AFX_MANAGE_STATE macro 19 | // added at the very beginning of the function. 20 | // 21 | // For example: 22 | // 23 | // extern "C" BOOL PASCAL EXPORT ExportedFunction() 24 | // { 25 | // AFX_MANAGE_STATE(AfxGetStaticModuleState()); 26 | // // normal function body here 27 | // } 28 | // 29 | // It is very important that this macro appear in each 30 | // function, prior to any calls into MFC. This means that 31 | // it must appear as the first statement within the 32 | // function, even before any object variable declarations 33 | // as their constructors may generate calls into the MFC 34 | // DLL. 35 | // 36 | // Please see MFC Technical Notes 33 and 58 for additional 37 | // details. 38 | // 39 | 40 | ///////////////////////////////////////////////////////////////////////////// 41 | // Cexe2cApp 42 | 43 | BEGIN_MESSAGE_MAP(Cexe2cApp, CWinApp) 44 | //{{AFX_MSG_MAP(Cexe2cApp) 45 | // NOTE - the ClassWizard will add and remove mapping macros here. 46 | // DO NOT EDIT what you see in these blocks of generated code! 47 | //}}AFX_MSG_MAP 48 | END_MESSAGE_MAP() 49 | 50 | ///////////////////////////////////////////////////////////////////////////// 51 | // Cexe2cApp construction 52 | void nop(); 53 | Cexe2cApp::Cexe2cApp() 54 | { 55 | // TODO: add construction code here, 56 | // Place all significant initialization in InitInstance 57 | nop(); 58 | } 59 | 60 | ///////////////////////////////////////////////////////////////////////////// 61 | // The one and only Cexe2cApp object 62 | 63 | Cexe2cApp theApp; 64 | -------------------------------------------------------------------------------- /exe2c/DLL/exe2c_DLL.h: -------------------------------------------------------------------------------- 1 | // exe2c.h : main header file for the EXE2C DLL 2 | // 3 | 4 | #if !defined(AFX_EXE2C_H__3C47A373_6FEE_4FC4_BD6E_93C40AAD22B1__INCLUDED_) 5 | #define AFX_EXE2C_H__3C47A373_6FEE_4FC4_BD6E_93C40AAD22B1__INCLUDED_ 6 | 7 | #if _MSC_VER > 1000 8 | #pragma once 9 | #endif // _MSC_VER > 1000 10 | 11 | #ifndef __AFXWIN_H__ 12 | #error include 'stdafx.h' before including this file for PCH 13 | #endif 14 | 15 | //#include "resource.h" // main symbols 16 | 17 | ///////////////////////////////////////////////////////////////////////////// 18 | // Cexe2cApp 19 | // See exe2c.cpp for the implementation of this class 20 | // 21 | 22 | class Cexe2cApp : public CWinApp 23 | { 24 | public: 25 | Cexe2cApp(); 26 | 27 | // Overrides 28 | // ClassWizard generated virtual function overrides 29 | //{{AFX_VIRTUAL(Cexe2cApp) 30 | //}}AFX_VIRTUAL 31 | 32 | //{{AFX_MSG(Cexe2cApp) 33 | // NOTE - the ClassWizard will add and remove member functions here. 34 | // DO NOT EDIT what you see in these blocks of generated code ! 35 | //}}AFX_MSG 36 | DECLARE_MESSAGE_MAP() 37 | }; 38 | 39 | 40 | ///////////////////////////////////////////////////////////////////////////// 41 | 42 | //{{AFX_INSERT_LOCATION}} 43 | // Microsoft Visual C++ will insert additional declarations immediately before the previous line. 44 | 45 | #endif // !defined(AFX_EXE2C_H__3C47A373_6FEE_4FC4_BD6E_93C40AAD22B1__INCLUDED_) 46 | -------------------------------------------------------------------------------- /exe2c/DLL/exe2c_DLL.rc: -------------------------------------------------------------------------------- 1 | //Microsoft Developer Studio generated resource script. 2 | // 3 | #include "resource.h" 4 | 5 | #define APSTUDIO_READONLY_SYMBOLS 6 | ///////////////////////////////////////////////////////////////////////////// 7 | // 8 | // Generated from the TEXTINCLUDE 2 resource. 9 | // 10 | #include "afxres.h" 11 | 12 | ///////////////////////////////////////////////////////////////////////////// 13 | #undef APSTUDIO_READONLY_SYMBOLS 14 | 15 | ///////////////////////////////////////////////////////////////////////////// 16 | // Chinese (P.R.C.) resources 17 | 18 | #if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_CHS) 19 | #ifdef _WIN32 20 | LANGUAGE LANG_CHINESE, SUBLANG_CHINESE_SIMPLIFIED 21 | #pragma code_page(936) 22 | #endif //_WIN32 23 | 24 | #ifndef _MAC 25 | ///////////////////////////////////////////////////////////////////////////// 26 | // 27 | // Version 28 | // 29 | 30 | VS_VERSION_INFO VERSIONINFO 31 | FILEVERSION 1,0,0,1 32 | PRODUCTVERSION 1,0,0,1 33 | FILEFLAGSMASK 0x3fL 34 | #ifdef _DEBUG 35 | FILEFLAGS 0x1L 36 | #else 37 | FILEFLAGS 0x0L 38 | #endif 39 | FILEOS 0x40004L 40 | FILETYPE 0x2L 41 | FILESUBTYPE 0x0L 42 | BEGIN 43 | BLOCK "StringFileInfo" 44 | BEGIN 45 | BLOCK "04090000" 46 | BEGIN 47 | VALUE "Comments", "\0" 48 | VALUE "CompanyName", "RoRSoft Inc.\0" 49 | VALUE "FileDescription", "exe2c\0" 50 | VALUE "FileVersion", "1, 0, 0, 1\0" 51 | VALUE "InternalName", "exe2c\0" 52 | VALUE "LegalCopyright", "Copyright ? 2005, LiuTaoTao\0" 53 | VALUE "LegalTrademarks", "\0" 54 | VALUE "OriginalFilename", "exe2c.dll\0" 55 | VALUE "PrivateBuild", "\0" 56 | VALUE "ProductName", "RoRSoft Inc. exe2c\0" 57 | VALUE "ProductVersion", "1, 0, 0, 1\0" 58 | VALUE "SpecialBuild", "\0" 59 | END 60 | END 61 | BLOCK "VarFileInfo" 62 | BEGIN 63 | VALUE "Translation", 0x409, 0 64 | END 65 | END 66 | 67 | #endif // !_MAC 68 | 69 | 70 | #ifdef APSTUDIO_INVOKED 71 | ///////////////////////////////////////////////////////////////////////////// 72 | // 73 | // TEXTINCLUDE 74 | // 75 | 76 | 1 TEXTINCLUDE DISCARDABLE 77 | BEGIN 78 | "resource.h\0" 79 | END 80 | 81 | 2 TEXTINCLUDE DISCARDABLE 82 | BEGIN 83 | "#include ""afxres.h""\r\n" 84 | "\0" 85 | END 86 | 87 | 3 TEXTINCLUDE DISCARDABLE 88 | BEGIN 89 | "\r\n" 90 | "\0" 91 | END 92 | 93 | #endif // APSTUDIO_INVOKED 94 | 95 | #endif // Chinese (P.R.C.) resources 96 | ///////////////////////////////////////////////////////////////////////////// 97 | 98 | 99 | 100 | #ifndef APSTUDIO_INVOKED 101 | ///////////////////////////////////////////////////////////////////////////// 102 | // 103 | // Generated from the TEXTINCLUDE 3 resource. 104 | // 105 | 106 | 107 | ///////////////////////////////////////////////////////////////////////////// 108 | #endif // not APSTUDIO_INVOKED 109 | 110 | -------------------------------------------------------------------------------- /exe2c/DLL/resource.h: -------------------------------------------------------------------------------- 1 | //{{NO_DEPENDENCIES}} 2 | // Microsoft Developer Studio generated include file. 3 | // Used by exe2c_DLL.rc 4 | // 5 | 6 | // Next default values for new objects 7 | // 8 | #ifdef APSTUDIO_INVOKED 9 | #ifndef APSTUDIO_READONLY_SYMBOLS 10 | #define _APS_NEXT_RESOURCE_VALUE 101 11 | #define _APS_NEXT_COMMAND_VALUE 40001 12 | #define _APS_NEXT_CONTROL_VALUE 1000 13 | #define _APS_NEXT_SYMED_VALUE 101 14 | #endif 15 | #endif 16 | -------------------------------------------------------------------------------- /exe2c/LibScanner.H: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/LibScanner.H -------------------------------------------------------------------------------- /exe2c/Readme.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/Readme.txt -------------------------------------------------------------------------------- /exe2c/SRC/00000.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/00000.h -------------------------------------------------------------------------------- /exe2c/SRC/CApiManage.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/CApiManage.cpp -------------------------------------------------------------------------------- /exe2c/SRC/CApiManage.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/CApiManage.h -------------------------------------------------------------------------------- /exe2c/SRC/CApiManage.~cp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/CApiManage.~cp -------------------------------------------------------------------------------- /exe2c/SRC/CCbuf.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/CCbuf.cpp -------------------------------------------------------------------------------- /exe2c/SRC/CCbuf.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/CCbuf.h -------------------------------------------------------------------------------- /exe2c/SRC/CClassManage.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/CClassManage.cpp -------------------------------------------------------------------------------- /exe2c/SRC/CClassManage.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/CClassManage.h -------------------------------------------------------------------------------- /exe2c/SRC/CCodeList.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/CCodeList.cpp -------------------------------------------------------------------------------- /exe2c/SRC/CCodeList.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/CCodeList.h -------------------------------------------------------------------------------- /exe2c/SRC/CEnumMng.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/CEnumMng.cpp -------------------------------------------------------------------------------- /exe2c/SRC/CEnumMng.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/CEnumMng.h -------------------------------------------------------------------------------- /exe2c/SRC/CExprManage.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/CExprManage.cpp -------------------------------------------------------------------------------- /exe2c/SRC/CExprManage.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/CExprManage.h -------------------------------------------------------------------------------- /exe2c/SRC/CFunc.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/CFunc.cpp -------------------------------------------------------------------------------- /exe2c/SRC/CFunc.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/CFunc.h -------------------------------------------------------------------------------- /exe2c/SRC/CFuncOptim.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/CFuncOptim.cpp -------------------------------------------------------------------------------- /exe2c/SRC/CFuncPrt.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/CFuncPrt.cpp -------------------------------------------------------------------------------- /exe2c/SRC/CFuncStep1.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/CFuncStep1.cpp -------------------------------------------------------------------------------- /exe2c/SRC/CFuncStep1.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/CFuncStep1.h -------------------------------------------------------------------------------- /exe2c/SRC/CFuncType.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/CFuncType.cpp -------------------------------------------------------------------------------- /exe2c/SRC/CFuncType.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/CFuncType.h -------------------------------------------------------------------------------- /exe2c/SRC/CFunc_CreateInstrList.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/CFunc_CreateInstrList.cpp -------------------------------------------------------------------------------- /exe2c/SRC/CISC.H: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/CISC.H -------------------------------------------------------------------------------- /exe2c/SRC/CLibScanner.CPP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/CLibScanner.CPP -------------------------------------------------------------------------------- /exe2c/SRC/CLibScanner.H: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/CLibScanner.H -------------------------------------------------------------------------------- /exe2c/SRC/CMyString.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/CMyString.cpp -------------------------------------------------------------------------------- /exe2c/SRC/CMyString.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/CMyString.h -------------------------------------------------------------------------------- /exe2c/SRC/CNameID.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/CNameID.cpp -------------------------------------------------------------------------------- /exe2c/SRC/CNameID.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/CNameID.h -------------------------------------------------------------------------------- /exe2c/SRC/CStrategy.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/CStrategy.cpp -------------------------------------------------------------------------------- /exe2c/SRC/CStrategy.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/CStrategy.h -------------------------------------------------------------------------------- /exe2c/SRC/CXmlList.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/CXmlList.cpp -------------------------------------------------------------------------------- /exe2c/SRC/CXmlList.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/CXmlList.h -------------------------------------------------------------------------------- /exe2c/SRC/CXmlPrt.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/CXmlPrt.cpp -------------------------------------------------------------------------------- /exe2c/SRC/CXmlPrt.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/CXmlPrt.h -------------------------------------------------------------------------------- /exe2c/SRC/Cexe2c.CPP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/Cexe2c.CPP -------------------------------------------------------------------------------- /exe2c/SRC/Cexe2c.H: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/Cexe2c.H -------------------------------------------------------------------------------- /exe2c/SRC/ComplexInstr.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/ComplexInstr.cpp -------------------------------------------------------------------------------- /exe2c/SRC/ComplexInstr.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/ComplexInstr.h -------------------------------------------------------------------------------- /exe2c/SRC/DLL32DEF.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/DLL32DEF.cpp -------------------------------------------------------------------------------- /exe2c/SRC/DLL32DEF.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/DLL32DEF.h -------------------------------------------------------------------------------- /exe2c/SRC/DataType.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/DataType.cpp -------------------------------------------------------------------------------- /exe2c/SRC/DataType.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/DataType.h -------------------------------------------------------------------------------- /exe2c/SRC/Deasm_Init.CPP: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/Deasm_Init.CPP -------------------------------------------------------------------------------- /exe2c/SRC/Disasm.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/Disasm.cpp -------------------------------------------------------------------------------- /exe2c/SRC/EXPR.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/EXPR.h -------------------------------------------------------------------------------- /exe2c/SRC/FileLoad.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/FileLoad.cpp -------------------------------------------------------------------------------- /exe2c/SRC/FileLoad.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/FileLoad.h -------------------------------------------------------------------------------- /exe2c/SRC/INSTR.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/INSTR.cpp -------------------------------------------------------------------------------- /exe2c/SRC/INSTR.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/INSTR.h -------------------------------------------------------------------------------- /exe2c/SRC/PEload.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/PEload.cpp -------------------------------------------------------------------------------- /exe2c/SRC/PUB.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/PUB.cpp -------------------------------------------------------------------------------- /exe2c/SRC/ParseHead.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/ParseHead.cpp -------------------------------------------------------------------------------- /exe2c/SRC/ParseHead.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/ParseHead.h -------------------------------------------------------------------------------- /exe2c/SRC/SVarType.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/SVarType.cpp -------------------------------------------------------------------------------- /exe2c/SRC/SVarType.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/SVarType.h -------------------------------------------------------------------------------- /exe2c/SRC/XMLTYPE.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/XMLTYPE.h -------------------------------------------------------------------------------- /exe2c/SRC/XmlType.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/XmlType.cpp -------------------------------------------------------------------------------- /exe2c/SRC/analysis.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/analysis.cpp -------------------------------------------------------------------------------- /exe2c/SRC/dasm.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/dasm.h -------------------------------------------------------------------------------- /exe2c/SRC/enum.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/enum.h -------------------------------------------------------------------------------- /exe2c/SRC/exe2c.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/exe2c.cpp -------------------------------------------------------------------------------- /exe2c/SRC/hpp.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/hpp.cpp -------------------------------------------------------------------------------- /exe2c/SRC/hpp.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/hpp.h -------------------------------------------------------------------------------- /exe2c/SRC/main.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/main.cpp -------------------------------------------------------------------------------- /exe2c/SRC/me.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/me.txt -------------------------------------------------------------------------------- /exe2c/SRC/mylist.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/mylist.h -------------------------------------------------------------------------------- /exe2c/SRC/optim.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/optim.cpp -------------------------------------------------------------------------------- /exe2c/SRC/proto.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/proto.h -------------------------------------------------------------------------------- /exe2c/SRC/standard.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/standard.cpp -------------------------------------------------------------------------------- /exe2c/SRC/standard.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/standard.h -------------------------------------------------------------------------------- /exe2c/SRC/strparse.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/strparse.cpp -------------------------------------------------------------------------------- /exe2c/SRC/strparse.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/SRC/strparse.h -------------------------------------------------------------------------------- /exe2c/exe2c.H: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c/exe2c.H -------------------------------------------------------------------------------- /exe2c_gui/ButtonBar.cpp: -------------------------------------------------------------------------------- 1 | // ButtonBar.cpp : implementation file 2 | // 3 | 4 | #include "stdafx.h" 5 | #include "exe2c_gui.h" 6 | #include "ButtonBar.h" 7 | 8 | #ifdef _DEBUG 9 | #define new DEBUG_NEW 10 | #undef THIS_FILE 11 | static char THIS_FILE[] = __FILE__; 12 | #endif 13 | 14 | ///////////////////////////////////////////////////////////////////////////// 15 | // CButtonBar dialog 16 | 17 | 18 | CButtonBar::CButtonBar() 19 | { 20 | //{{AFX_DATA_INIT(CButtonBar) 21 | // NOTE: the ClassWizard will add member initialization here 22 | //}}AFX_DATA_INIT 23 | } 24 | 25 | 26 | void CButtonBar::DoDataExchange(CDataExchange* pDX) 27 | { 28 | CDialogBar::DoDataExchange(pDX); 29 | //{{AFX_DATA_MAP(CButtonBar) 30 | //}}AFX_DATA_MAP 31 | } 32 | 33 | 34 | BEGIN_MESSAGE_MAP(CButtonBar, CDialogBar) 35 | //{{AFX_MSG_MAP(CButtonBar) 36 | // NOTE: the ClassWizard will add message map macros here 37 | //}}AFX_MSG_MAP 38 | END_MESSAGE_MAP() 39 | 40 | ///////////////////////////////////////////////////////////////////////////// 41 | // CButtonBar message handlers 42 | LONG CButtonBar::OnInitDialog (UINT wParam, LONG lParam) 43 | { 44 | if ( !HandleInitDialog(wParam, lParam) || !UpdateData(FALSE)) 45 | { 46 | TRACE0("Warning: UpdateData failed during dialog init.\n"); 47 | return FALSE; 48 | } 49 | 50 | 51 | 52 | return TRUE; 53 | } -------------------------------------------------------------------------------- /exe2c_gui/ButtonBar.h: -------------------------------------------------------------------------------- 1 | #if !defined(AFX_BUTTONBAR__H) 2 | #define AFX_BUTTONBAR__H 3 | 4 | #if _MSC_VER > 1000 5 | #pragma once 6 | #endif // _MSC_VER > 1000 7 | // ButtonBar.h : header file 8 | // 9 | 10 | ///////////////////////////////////////////////////////////////////////////// 11 | // CButtonBar dialog 12 | 13 | class CButtonBar : public CDialogBar 14 | { 15 | // Construction 16 | public: 17 | CButtonBar(); // standard constructor 18 | 19 | // Dialog Data 20 | //{{AFX_DATA(CButtonBar) 21 | enum { IDD = IDD_DIALOGBAR1 }; 22 | //}}AFX_DATA 23 | 24 | 25 | // Overrides 26 | // ClassWizard generated virtual function overrides 27 | //{{AFX_VIRTUAL(CButtonBar) 28 | protected: 29 | virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support 30 | //}}AFX_VIRTUAL 31 | 32 | // Implementation 33 | protected: 34 | 35 | // Generated message map functions 36 | //{{AFX_MSG(CButtonBar) 37 | // NOTE: the ClassWizard will add member functions here 38 | //}}AFX_MSG 39 | DECLARE_MESSAGE_MAP() 40 | afx_msg LONG OnInitDialog(UINT, LONG); 41 | 42 | }; 43 | 44 | //{{AFX_INSERT_LOCATION}} 45 | // Microsoft Visual C++ will insert additional declarations immediately before the previous line. 46 | 47 | #endif // !defined(AFX_BUTTONBAR__H) 48 | -------------------------------------------------------------------------------- /exe2c_gui/CRorEditView.cpp: -------------------------------------------------------------------------------- 1 | 2 | #include "stdafx.h" 3 | #include "editcmd.h" 4 | #include "CRorEditView.h" 5 | #include "CRorTextBuffer.h" 6 | 7 | 8 | #ifndef __AFXPRIV_H__ 9 | #pragma message("Include in your stdafx.h to avoid this message") 10 | #include 11 | #endif 12 | #ifndef __AFXOLE_H__ 13 | #pragma message("Include in your stdafx.h to avoid this message") 14 | #include 15 | #endif 16 | 17 | #ifdef _DEBUG 18 | #define new DEBUG_NEW 19 | #undef THIS_FILE 20 | static char THIS_FILE[] = __FILE__; 21 | #endif 22 | 23 | #define DRAG_BORDER_X 5 24 | #define DRAG_BORDER_Y 5 25 | 26 | 27 | ///////////////////////////////////////////////////////////////////////////// 28 | // CRorEditView 29 | 30 | IMPLEMENT_DYNCREATE(CRorEditView, CRorTextView) 31 | 32 | CRorEditView::CRorEditView() 33 | { 34 | AFX_ZERO_INIT_OBJECT(CRorTextView); 35 | } 36 | 37 | CRorEditView::~CRorEditView() 38 | { 39 | } 40 | 41 | 42 | BEGIN_MESSAGE_MAP(CRorEditView, CRorTextView) 43 | //{{AFX_MSG_MAP(CRorEditView) 44 | ON_WM_CHAR() 45 | ON_WM_CREATE() 46 | ON_WM_DESTROY() 47 | ON_WM_LBUTTONDOWN() 48 | //}}AFX_MSG_MAP 49 | 50 | END_MESSAGE_MAP() 51 | 52 | 53 | ///////////////////////////////////////////////////////////////////////////// 54 | // CRorEditView message handlers 55 | 56 | void CRorEditView::ResetView() 57 | { 58 | CRorTextView::ResetView(); 59 | } 60 | 61 | BOOL CRorEditView::QueryEditable() 62 | { 63 | return FALSE; 64 | } 65 | 66 | void CRorEditView::OnChar(UINT nChar, UINT nRepCnt, UINT nFlags) 67 | { 68 | CRorTextView::OnChar(nChar, nRepCnt, nFlags); 69 | 70 | if (nChar == 'i' || nChar == 'I') 71 | { 72 | static bool f = false; 73 | f=!f; 74 | if (f) 75 | { 76 | this->ResetView(); 77 | this->DeleteAll(); 78 | this->LocateTextBuffer()->m_xml.Clear(); 79 | 80 | g_EXE2C->prtout_itn(&this->m_pTextBuffer->m_xml); 81 | this->Invalidate(); 82 | } 83 | else 84 | { 85 | this->ResetView(); 86 | this->DeleteAll(); 87 | this->LocateTextBuffer()->m_xml.Clear(); 88 | 89 | g_EXE2C->prtout_cpp(&this->m_pTextBuffer->m_xml); 90 | this->Invalidate(); 91 | } 92 | return; 93 | } 94 | 95 | 96 | if ((::GetAsyncKeyState(VK_LBUTTON) & 0x8000) != 0 || 97 | (::GetAsyncKeyState(VK_RBUTTON) & 0x8000) != 0) 98 | return; 99 | 100 | BOOL bTranslated = FALSE; 101 | if (nChar == VK_RETURN) 102 | { 103 | return; 104 | } 105 | 106 | if (nChar > 31) 107 | { 108 | } 109 | } 110 | 111 | 112 | int CRorEditView::OnCreate(LPCREATESTRUCT lpCreateStruct) 113 | { 114 | if (CRorTextView::OnCreate(lpCreateStruct) == -1) 115 | return -1; 116 | 117 | return 0; 118 | } 119 | 120 | void CRorEditView::OnDestroy() 121 | { 122 | CRorTextView::OnDestroy(); 123 | } 124 | 125 | /*void CRorEditView::OnDropSource(DROPEFFECT de) 126 | { 127 | if (! IsDraggingText()) 128 | return; 129 | 130 | ASSERT_VALIDTEXTPOS(m_ptDraggedTextBegin); 131 | ASSERT_VALIDTEXTPOS(m_ptDraggedTextEnd); 132 | 133 | if (de == DROPEFFECT_MOVE) 134 | { 135 | m_pTextBuffer->DeleteText(this, m_ptDraggedTextBegin.y, m_ptDraggedTextBegin.x, m_ptDraggedTextEnd.y, 136 | m_ptDraggedTextEnd.x, CE_ACTION_DRAGDROP); // [JRT] 137 | } 138 | } */ 139 | 140 | void CRorEditView::UpdateView() 141 | { 142 | //CRorTextView *pSource, CUpdateContext *pContext, DWORD dwFlags, int nLineIndex /*= -1*/ 143 | CRorTextView *pSource = NULL; 144 | CUpdateContext *pContext = NULL; 145 | DWORD dwFlags = UPDATE_RESET; 146 | int nLineIndex = -1; /*= -1*/ 147 | CRorTextView::UpdateView(); //pSource, pContext, dwFlags, nLineIndex); 148 | 149 | } 150 | 151 | void CRorEditView::OnLButtonDown(UINT nFlags, CPoint point) 152 | { 153 | // TODO: Add your message handler code here and/or call default 154 | 155 | // LPCTSTR pszLineChars = GetLineChars(point.y); 156 | CRorTextView::OnLButtonDown(nFlags, point); 157 | } 158 | 159 | void CRorEditView::DeleteAll() 160 | { 161 | //add by bookaa 162 | 163 | if (m_pTextBuffer) 164 | { 165 | m_pTextBuffer->FreeAll(); 166 | m_pTextBuffer->InitNew(); 167 | } 168 | } 169 | -------------------------------------------------------------------------------- /exe2c_gui/CRorEditView.h: -------------------------------------------------------------------------------- 1 | 2 | #if !defined(AFX_CRorEDITVIEW__H) 3 | #define AFX_CRorEDITVIEW__H 4 | 5 | #if _MSC_VER >= 1000 6 | #pragma once 7 | #endif // _MSC_VER >= 1000 8 | 9 | #include "CRorTextView.h" 10 | 11 | 12 | ///////////////////////////////////////////////////////////////////////////// 13 | // CRorEditView view 14 | 15 | class CRorEditView : public CRorTextView 16 | { 17 | DECLARE_DYNCREATE(CRorEditView) 18 | 19 | // Attributes 20 | public: 21 | virtual void ResetView(); 22 | 23 | 24 | // Operations 25 | public: 26 | void DeleteAll(); 27 | CRorEditView(); 28 | ~CRorEditView(); 29 | 30 | virtual BOOL QueryEditable(); 31 | virtual void UpdateView(); //CRorTextView *pSource, CUpdateContext *pContext, DWORD dwFlags, int nLineIndex = -1); 32 | 33 | // Implementation 34 | protected: 35 | 36 | // Generated message map functions 37 | protected: 38 | //{{AFX_MSG(CRorEditView) 39 | afx_msg void OnChar(UINT nChar, UINT nRepCnt, UINT nFlags); 40 | afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct); 41 | afx_msg void OnDestroy(); 42 | afx_msg void OnLButtonDown(UINT nFlags, CPoint point); 43 | //}}AFX_MSG 44 | DECLARE_MESSAGE_MAP() 45 | }; 46 | 47 | ///////////////////////////////////////////////////////////////////////////// 48 | 49 | 50 | //{{AFX_INSERT_LOCATION}} 51 | // Microsoft Developer Studio will insert additional declarations immediately before the previous line. 52 | 53 | #endif // !defined(AFX_CRorEDITVIEW__H) 54 | -------------------------------------------------------------------------------- /exe2c_gui/CRorTextBuffer.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c_gui/CRorTextBuffer.cpp -------------------------------------------------------------------------------- /exe2c_gui/CRorTextBuffer.h: -------------------------------------------------------------------------------- 1 | 2 | #if !defined(AFX_CRorTEXTBUFFER__H) 3 | #define AFX_CRorTEXTBUFFER__H 4 | 5 | #if _MSC_VER >= 1000 6 | #pragma once 7 | #endif // _MSC_VER >= 1000 8 | 9 | #include "CRorTextView.h" 10 | 11 | #include "..\exe2c\exe2c.H" 12 | #include "..\exe2c\src\CXmlPrt.h" 13 | 14 | #ifndef __AFXTEMPL_H__ 15 | #pragma message("Include in your stdafx.h to avoid this message") 16 | #include 17 | #endif 18 | 19 | #define UNDO_DESCRIP_BUF 32 20 | 21 | enum LINEFLAGS 22 | { 23 | LF_BOOKMARK_FIRST = 0x00000001L, 24 | LF_EXECUTION = 0x00010000L, 25 | LF_BREAKPOINT = 0x00020000L, 26 | LF_COMPILATION_ERROR = 0x00040000L, 27 | LF_BOOKMARKS = 0x00080000L, 28 | LF_INVALID_BREAKPOINT = 0x00100000L 29 | }; 30 | 31 | #define LF_BOOKMARK(id) (LF_BOOKMARK_FIRST << id) 32 | 33 | enum CRLFSTYLE 34 | { 35 | CRLF_STYLE_AUTOMATIC = -1, 36 | CRLF_STYLE_DOS = 0, 37 | CRLF_STYLE_UNIX = 1, 38 | CRLF_STYLE_MAC = 2 39 | }; 40 | 41 | enum 42 | { 43 | CE_ACTION_UNKNOWN = 0, 44 | CE_ACTION_PASTE = 1, 45 | CE_ACTION_DELSEL = 2, 46 | CE_ACTION_CUT = 3, 47 | CE_ACTION_TYPING = 4, 48 | CE_ACTION_BACKSPACE = 5, 49 | CE_ACTION_INDENT = 6, 50 | CE_ACTION_DRAGDROP = 7, 51 | CE_ACTION_REPLACE = 8, 52 | CE_ACTION_DELETE = 9, 53 | CE_ACTION_AUTOINDENT = 10 54 | // ... 55 | // Expandable: user actions allowed 56 | }; 57 | 58 | 59 | ///////////////////////////////////////////////////////////////////////////// 60 | // CUpdateContext class 61 | 62 | class CUpdateContext 63 | { 64 | public: 65 | virtual void RecalcPoint(CPoint &ptPoint) = 0; 66 | }; 67 | 68 | 69 | ///////////////////////////////////////////////////////////////////////////// 70 | // CRorTextBuffer command target 71 | 72 | 73 | 74 | class CRorTextBuffer : public CCmdTarget 75 | { 76 | DECLARE_DYNCREATE(CRorTextBuffer) 77 | 78 | protected: 79 | // Nested class declarations 80 | struct SLineInfo 81 | { 82 | TCHAR *m_pcLine; 83 | int m_nLength, m_nMax; 84 | 85 | void* m_hline; 86 | st_LINE_SYNTAX lineSyntax[240]; 87 | 88 | SLineInfo() { ZeroMemory(this, sizeof(SLineInfo)); }; 89 | }; 90 | 91 | 92 | // Lines of text 93 | CArray m_aLines; 94 | 95 | 96 | // Connected views 97 | CList m_lpViews; 98 | public: 99 | CXmlPrt m_xml; 100 | 101 | void Parse(int nLineIndex, TEXTBLOCK *pBuf, int &nActualItems); 102 | 103 | bool OnChar(int x, int y, UINT nChar); 104 | bool SetCurWord(int x, int y); 105 | // Construction/destruction code 106 | CRorTextBuffer(); 107 | ~CRorTextBuffer(); 108 | 109 | // Basic functions 110 | BOOL InitNew(); 111 | BOOL LoadFromFile(LPCTSTR pszFileName); 112 | BOOL SaveToFile(LPCTSTR pszFileName); 113 | void FreeAll(); 114 | 115 | // Connect/disconnect views 116 | void AddView(CRorTextView *pView); 117 | void RemoveView(CRorTextView *pView); 118 | 119 | // Text access functions 120 | int GetLineCount(); 121 | int GetLineLength(int nLine); 122 | LPTSTR GetLineChars(int nLine); 123 | CString GetText(int nStartLine, int nStartChar, int nEndLine, int nEndChar); 124 | 125 | // Notify all connected views about changes in text 126 | void UpdateViews(); 127 | 128 | // Overrides 129 | // ClassWizard generated virtual function overrides 130 | //{{AFX_VIRTUAL(CRorTextBuffer) 131 | //}}AFX_VIRTUAL 132 | 133 | // Implementation 134 | protected: 135 | // Generated message map functions 136 | //{{AFX_MSG(CRorTextBuffer) 137 | //}}AFX_MSG 138 | 139 | DECLARE_MESSAGE_MAP() 140 | }; 141 | 142 | 143 | ///////////////////////////////////////////////////////////////////////////// 144 | 145 | //{{AFX_INSERT_LOCATION}} 146 | // Microsoft Developer Studio will insert additional declarations immediately before the previous line. 147 | 148 | #endif // !defined(AFX_CRorTEXTBUFFER__H) 149 | -------------------------------------------------------------------------------- /exe2c_gui/CRorTextView.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c_gui/CRorTextView.cpp -------------------------------------------------------------------------------- /exe2c_gui/CRorTextView.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c_gui/CRorTextView.h -------------------------------------------------------------------------------- /exe2c_gui/Change.cpp: -------------------------------------------------------------------------------- 1 | // Change.cpp : implementation file 2 | // 3 | 4 | #include "stdafx.h" 5 | #include "exe2c_gui.h" 6 | #include "Change.h" 7 | 8 | #ifdef _DEBUG 9 | #define new DEBUG_NEW 10 | #undef THIS_FILE 11 | static char THIS_FILE[] = __FILE__; 12 | #endif 13 | 14 | ///////////////////////////////////////////////////////////////////////////// 15 | // CChange dialog 16 | 17 | 18 | CChange::CChange(CWnd* pParent /*=NULL*/) 19 | : CDialog(CChange::IDD, pParent) 20 | { 21 | //{{AFX_DATA_INIT(CChange) 22 | // NOTE: the ClassWizard will add member initialization here 23 | //}}AFX_DATA_INIT 24 | } 25 | 26 | 27 | void CChange::DoDataExchange(CDataExchange* pDX) 28 | { 29 | CDialog::DoDataExchange(pDX); 30 | //{{AFX_DATA_MAP(CChange) 31 | // NOTE: the ClassWizard will add DDX and DDV calls here 32 | //}}AFX_DATA_MAP 33 | } 34 | 35 | 36 | BEGIN_MESSAGE_MAP(CChange, CDialog) 37 | //{{AFX_MSG_MAP(CChange) 38 | //}}AFX_MSG_MAP 39 | END_MESSAGE_MAP() 40 | 41 | ///////////////////////////////////////////////////////////////////////////// 42 | // CChange message handlers 43 | 44 | void CChange::OnOK() 45 | { 46 | // TODO: Add extra validation here 47 | CEdit* pEidt = (CEdit*)GetDlgItem(IDC_EDIT1); 48 | pEidt->GetWindowText(this->name); 49 | CDialog::OnOK(); 50 | } 51 | 52 | void CChange::OnCancel() 53 | { 54 | // TODO: Add extra cleanup here 55 | CDialog::OnCancel(); 56 | } 57 | -------------------------------------------------------------------------------- /exe2c_gui/Change.h: -------------------------------------------------------------------------------- 1 | #if !defined(AFX_CHANGE__H) 2 | #define AFX_CHANGE__H 3 | 4 | #if _MSC_VER > 1000 5 | #pragma once 6 | #endif // _MSC_VER > 1000 7 | // Change.h : header file 8 | // 9 | 10 | ///////////////////////////////////////////////////////////////////////////// 11 | // CChange dialog 12 | 13 | 14 | #include "stdafx.h" 15 | #include "editcmd.h" 16 | #include "exe2c_gui.h" 17 | 18 | #include "MainFrm.h" 19 | #include "ChildFrm.h" 20 | #include "SampleDoc.h" 21 | #include "SampleView.h" 22 | 23 | 24 | class CChange : public CDialog 25 | { 26 | // Construction 27 | public: 28 | CChange(CWnd* pParent = NULL); // standard constructor 29 | CString name; 30 | 31 | // Dialog Data 32 | //{{AFX_DATA(CChange) 33 | enum { IDD = IDD_DIALOG1 }; 34 | // NOTE: the ClassWizard will add data members here 35 | //}}AFX_DATA 36 | 37 | 38 | // Overrides 39 | // ClassWizard generated virtual function overrides 40 | //{{AFX_VIRTUAL(CChange) 41 | protected: 42 | virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support 43 | //}}AFX_VIRTUAL 44 | 45 | // Implementation 46 | protected: 47 | 48 | // Generated message map functions 49 | //{{AFX_MSG(CChange) 50 | virtual void OnOK(); 51 | virtual void OnCancel(); 52 | //}}AFX_MSG 53 | DECLARE_MESSAGE_MAP() 54 | }; 55 | 56 | //{{AFX_INSERT_LOCATION}} 57 | // Microsoft Visual C++ will insert additional declarations immediately before the previous line. 58 | 59 | #endif // !defined(AFX_CHANGE__H) 60 | -------------------------------------------------------------------------------- /exe2c_gui/ChildFrm.cpp: -------------------------------------------------------------------------------- 1 | // ChildFrm.cpp : implementation of the CChildFrame class 2 | // 3 | 4 | #include "stdafx.h" 5 | #include "exe2c_gui.h" 6 | 7 | #include "ChildFrm.h" 8 | 9 | #ifdef _DEBUG 10 | #define new DEBUG_NEW 11 | #undef THIS_FILE 12 | static char THIS_FILE[] = __FILE__; 13 | #endif 14 | 15 | ///////////////////////////////////////////////////////////////////////////// 16 | // CChildFrame 17 | 18 | IMPLEMENT_DYNCREATE(CChildFrame, CMDIChildWnd) 19 | 20 | BEGIN_MESSAGE_MAP(CChildFrame, CMDIChildWnd) 21 | //{{AFX_MSG_MAP(CChildFrame) 22 | // NOTE - the ClassWizard will add and remove mapping macros here. 23 | // DO NOT EDIT what you see in these blocks of generated code ! 24 | //}}AFX_MSG_MAP 25 | END_MESSAGE_MAP() 26 | 27 | ///////////////////////////////////////////////////////////////////////////// 28 | // CChildFrame construction/destruction 29 | 30 | CChildFrame::CChildFrame() 31 | { 32 | // TODO: add member initialization code here 33 | 34 | } 35 | 36 | CChildFrame::~CChildFrame() 37 | { 38 | } 39 | 40 | BOOL CChildFrame::PreCreateWindow(CREATESTRUCT& cs) 41 | { 42 | // TODO: Modify the Window class or styles here by modifying 43 | // the CREATESTRUCT cs 44 | 45 | return CMDIChildWnd::PreCreateWindow(cs); 46 | } 47 | 48 | ///////////////////////////////////////////////////////////////////////////// 49 | // CChildFrame diagnostics 50 | 51 | #ifdef _DEBUG 52 | void CChildFrame::AssertValid() const 53 | { 54 | CMDIChildWnd::AssertValid(); 55 | } 56 | 57 | void CChildFrame::Dump(CDumpContext& dc) const 58 | { 59 | CMDIChildWnd::Dump(dc); 60 | } 61 | 62 | #endif //_DEBUG 63 | 64 | ///////////////////////////////////////////////////////////////////////////// 65 | // CChildFrame message handlers 66 | 67 | BOOL CChildFrame::OnCreateClient(LPCREATESTRUCT lpcs, CCreateContext* pContext) 68 | { 69 | return m_wndSplitter.Create(this, 2, 2, CSize(30, 30), pContext); 70 | } 71 | 72 | void CChildFrame::ActivateFrame(int nCmdShow) 73 | { 74 | if (nCmdShow == -1) 75 | nCmdShow = SW_SHOWMAXIMIZED; 76 | CMDIChildWnd::ActivateFrame(nCmdShow); 77 | } 78 | 79 | -------------------------------------------------------------------------------- /exe2c_gui/ChildFrm.h: -------------------------------------------------------------------------------- 1 | // ChildFrm.h : interface of the CChildFrame class 2 | // 3 | ///////////////////////////////////////////////////////////////////////////// 4 | 5 | #if !defined(AFX_CHILDFRM__H) 6 | #define AFX_CHILDFRM__H 7 | 8 | #if _MSC_VER >= 1000 9 | #pragma once 10 | #endif // _MSC_VER >= 1000 11 | 12 | class CChildFrame : public CMDIChildWnd 13 | { 14 | DECLARE_DYNCREATE(CChildFrame) 15 | public: 16 | CChildFrame(); 17 | 18 | // Attributes 19 | public: 20 | CSplitterWnd m_wndSplitter; 21 | 22 | // Operations 23 | public: 24 | 25 | // Overrides 26 | // ClassWizard generated virtual function overrides 27 | //{{AFX_VIRTUAL(CChildFrame) 28 | public: 29 | virtual BOOL PreCreateWindow(CREATESTRUCT& cs); 30 | virtual void ActivateFrame(int nCmdShow = -1); 31 | protected: 32 | virtual BOOL OnCreateClient(LPCREATESTRUCT lpcs, CCreateContext* pContext); 33 | //}}AFX_VIRTUAL 34 | 35 | // Implementation 36 | public: 37 | virtual ~CChildFrame(); 38 | #ifdef _DEBUG 39 | virtual void AssertValid() const; 40 | virtual void Dump(CDumpContext& dc) const; 41 | #endif 42 | 43 | // Generated message map functions 44 | protected: 45 | //{{AFX_MSG(CChildFrame) 46 | // NOTE - the ClassWizard will add and remove member functions here. 47 | // DO NOT EDIT what you see in these blocks of generated code! 48 | //}}AFX_MSG 49 | DECLARE_MESSAGE_MAP() 50 | }; 51 | 52 | ///////////////////////////////////////////////////////////////////////////// 53 | 54 | //{{AFX_INSERT_LOCATION}} 55 | // Microsoft Developer Studio will insert additional declarations immediately before the previous line. 56 | 57 | #endif // !defined(AFX_CHILDFRM__H) 58 | -------------------------------------------------------------------------------- /exe2c_gui/ChildView.cpp: -------------------------------------------------------------------------------- 1 | // ChildView.cpp : implementation of the CChildView class 2 | // 3 | 4 | #include "stdafx.h" 5 | #include "sample.h" 6 | #include "ChildView.h" 7 | #include "MainFrm.h" 8 | 9 | #ifdef _DEBUG 10 | #define new DEBUG_NEW 11 | #undef THIS_FILE 12 | static char THIS_FILE[] = __FILE__; 13 | #endif 14 | 15 | ///////////////////////////////////////////////////////////////////////////// 16 | // CChildView 17 | 18 | CChildView::CChildView() 19 | { 20 | } 21 | 22 | CChildView::~CChildView() 23 | { 24 | } 25 | 26 | 27 | BEGIN_MESSAGE_MAP(CChildView,CWnd ) 28 | //{{AFX_MSG_MAP(CChildView) 29 | ON_WM_PAINT() 30 | //}}AFX_MSG_MAP 31 | END_MESSAGE_MAP() 32 | 33 | 34 | ///////////////////////////////////////////////////////////////////////////// 35 | // CChildView message handlers 36 | 37 | BOOL CChildView::PreCreateWindow(CREATESTRUCT& cs) 38 | { 39 | if (!CWnd::PreCreateWindow(cs)) 40 | return FALSE; 41 | 42 | cs.dwExStyle |= WS_EX_CLIENTEDGE; 43 | cs.style &= ~WS_BORDER; 44 | cs.lpszClass = AfxRegisterWndClass(CS_HREDRAW|CS_VREDRAW|CS_DBLCLKS, 45 | ::LoadCursor(NULL, IDC_ARROW), HBRUSH(COLOR_WINDOW+1), NULL); 46 | 47 | return TRUE; 48 | } 49 | 50 | void CChildView::OnPaint() 51 | { 52 | CPaintDC dc(this); 53 | CMainFrame *pFrame = (CMainFrame *)AfxGetApp()->m_pMainWnd; 54 | // dc.TextOut(1, 1, pFrame->GetInfo()); 55 | } 56 | 57 | -------------------------------------------------------------------------------- /exe2c_gui/ChildView.h: -------------------------------------------------------------------------------- 1 | // ChildView.h : interface of the CChildView class 2 | // 3 | ///////////////////////////////////////////////////////////////////////////// 4 | 5 | #if !defined(AFX_CHILDVIEW_H__2559D32C_9FAD_11D5_AF7C_0000E8A3A8FB__INCLUDED_) 6 | #define AFX_CHILDVIEW_H__2559D32C_9FAD_11D5_AF7C_0000E8A3A8FB__INCLUDED_ 7 | 8 | #if _MSC_VER > 1000 9 | #pragma once 10 | #endif // _MSC_VER > 1000 11 | 12 | ///////////////////////////////////////////////////////////////////////////// 13 | // CChildView window 14 | 15 | class CChildView : public CWnd 16 | { 17 | // Construction 18 | public: 19 | CChildView(); 20 | 21 | // Attributes 22 | public: 23 | 24 | // Operations 25 | public: 26 | 27 | // Overrides 28 | // ClassWizard generated virtual function overrides 29 | //{{AFX_VIRTUAL(CChildView) 30 | protected: 31 | virtual BOOL PreCreateWindow(CREATESTRUCT& cs); 32 | //}}AFX_VIRTUAL 33 | 34 | // Implementation 35 | public: 36 | virtual ~CChildView(); 37 | 38 | // Generated message map functions 39 | protected: 40 | //{{AFX_MSG(CChildView) 41 | afx_msg void OnPaint(); 42 | //}}AFX_MSG 43 | DECLARE_MESSAGE_MAP() 44 | }; 45 | 46 | ///////////////////////////////////////////////////////////////////////////// 47 | 48 | //{{AFX_INSERT_LOCATION}} 49 | // Microsoft Visual C++ will insert additional declarations immediately before the previous line. 50 | 51 | #endif // !defined(AFX_CHILDVIEW_H__2559D32C_9FAD_11D5_AF7C_0000E8A3A8FB__INCLUDED_) 52 | -------------------------------------------------------------------------------- /exe2c_gui/CommandDlg.cpp: -------------------------------------------------------------------------------- 1 | // CommandDlg.cpp : implementation file 2 | // 3 | 4 | #include "stdafx.h" 5 | #include "exe2c_gui.h" 6 | #include "CommandDlg.h" 7 | 8 | #ifdef _DEBUG 9 | #define new DEBUG_NEW 10 | #undef THIS_FILE 11 | static char THIS_FILE[] = __FILE__; 12 | #endif 13 | 14 | ///////////////////////////////////////////////////////////////////////////// 15 | // CCommandDlg dialog 16 | 17 | 18 | CCommandDlg::CCommandDlg(CWnd* pParent /*=NULL*/) 19 | : CDialog(CCommandDlg::IDD, pParent) 20 | { 21 | //{{AFX_DATA_INIT(CCommandDlg) 22 | // NOTE: the ClassWizard will add member initialization here 23 | //}}AFX_DATA_INIT 24 | } 25 | 26 | 27 | void CCommandDlg::DoDataExchange(CDataExchange* pDX) 28 | { 29 | CDialog::DoDataExchange(pDX); 30 | //{{AFX_DATA_MAP(CCommandDlg) 31 | // NOTE: the ClassWizard will add DDX and DDV calls here 32 | //}}AFX_DATA_MAP 33 | } 34 | 35 | 36 | BEGIN_MESSAGE_MAP(CCommandDlg, CDialog) 37 | //{{AFX_MSG_MAP(CCommandDlg) 38 | // NOTE: the ClassWizard will add message map macros here 39 | ON_WM_SIZE() 40 | //}}AFX_MSG_MAP 41 | END_MESSAGE_MAP() 42 | 43 | ///////////////////////////////////////////////////////////////////////////// 44 | // CCommandDlg message handlers 45 | 46 | #include "mainfrm.h" 47 | extern class CMainFrame* g_Mfm; 48 | BOOL CCommandDlg::PreTranslateMessage(MSG* pMsg) 49 | { 50 | 51 | if(pMsg->message==WM_KEYDOWN && pMsg->wParam==13) 52 | { 53 | CString m_strCommand; 54 | GetDlgItem(IDC_COMMAND)->GetWindowText(m_strCommand); 55 | ::g_EXE2C->DoCommandLine(m_strCommand); 56 | 57 | g_Mfm->ClearFun(); 58 | g_Mfm->ShowFun(); 59 | 60 | //MessageBox(m_strCommand); 61 | GetDlgItem(IDC_COMMAND)->SetWindowText(""); 62 | // return false; 63 | 64 | } 65 | return CDialog::PreTranslateMessage(pMsg); 66 | } 67 | 68 | void CCommandDlg::OnOK() 69 | { 70 | 71 | 72 | } 73 | 74 | void CCommandDlg::AddLine(PCSTR str) 75 | { 76 | CEdit *p = (CEdit *)GetDlgItem(IDC_EDIT1); 77 | strcpy(this->buf,str); 78 | char *s = strchr(buf,'\n'); 79 | if(s != NULL) 80 | { 81 | strcpy(s, "\r\n"); 82 | }//*/ 83 | if (p != NULL) 84 | { 85 | p->ReplaceSel(buf); 86 | } 87 | } 88 | void CCommandDlg::OnSize(UINT nType, int cx, int cy) 89 | { 90 | CDialog::OnSize(nType, cx, cy); 91 | 92 | // TODO: Add your message handler code here 93 | if(nType ==SIZE_RESTORED) 94 | { 95 | CRect r; 96 | this->GetClientRect(&r); 97 | CEdit *p = (CEdit *)GetDlgItem(IDC_EDIT1); 98 | if(NULL != p->GetSafeHwnd()) 99 | { 100 | p->MoveWindow(r); 101 | p->GetClientRect(&r); 102 | } 103 | } 104 | } -------------------------------------------------------------------------------- /exe2c_gui/CommandDlg.h: -------------------------------------------------------------------------------- 1 | #if !defined(AFX_COMMANDDLG__H) 2 | #define AFX_COMMANDDLG__H 3 | 4 | #if _MSC_VER > 1000 5 | #pragma once 6 | #endif // _MSC_VER > 1000 7 | // CommandDlg.h : header file 8 | // 9 | 10 | ///////////////////////////////////////////////////////////////////////////// 11 | // CCommandDlg dialog 12 | 13 | class CCommandDlg : public CDialog 14 | { 15 | // Construction 16 | public: 17 | void OnOK(); 18 | CCommandDlg(CWnd* pParent = NULL); // standard constructor 19 | char buf[1024]; 20 | void AddLine(PCSTR str); 21 | 22 | 23 | // Dialog Data 24 | //{{AFX_DATA(CCommandDlg) 25 | enum { IDD = IDD_COMMAND }; 26 | // NOTE: the ClassWizard will add data members here 27 | //}}AFX_DATA 28 | 29 | 30 | // Overrides 31 | // ClassWizard generated virtual function overrides 32 | //{{AFX_VIRTUAL(CCommandDlg) 33 | public: 34 | virtual BOOL PreTranslateMessage(MSG* pMsg); 35 | protected: 36 | virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support 37 | //}}AFX_VIRTUAL 38 | 39 | // Implementation 40 | protected: 41 | 42 | // Generated message map functions 43 | //{{AFX_MSG(CCommandDlg) 44 | // NOTE: the ClassWizard will add member functions here 45 | afx_msg void OnSize(UINT nType, int cx, int cy); 46 | //}}AFX_MSG 47 | DECLARE_MESSAGE_MAP() 48 | }; 49 | 50 | //{{AFX_INSERT_LOCATION}} 51 | // Microsoft Visual C++ will insert additional declarations immediately before the previous line. 52 | 53 | #endif // !defined(AFX_COMMANDDLG__H) 54 | -------------------------------------------------------------------------------- /exe2c_gui/CoolTabCtrl.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c_gui/CoolTabCtrl.cpp -------------------------------------------------------------------------------- /exe2c_gui/CoolTabCtrl.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c_gui/CoolTabCtrl.h -------------------------------------------------------------------------------- /exe2c_gui/Log.cpp: -------------------------------------------------------------------------------- 1 | // Log.cpp : implementation file 2 | // 3 | 4 | #include "stdafx.h" 5 | #include "exe2c_gui.h" 6 | #include "Log.h" 7 | 8 | #ifdef _DEBUG 9 | #define new DEBUG_NEW 10 | #undef THIS_FILE 11 | static char THIS_FILE[] = __FILE__; 12 | #endif 13 | 14 | ///////////////////////////////////////////////////////////////////////////// 15 | // CLog dialog 16 | 17 | 18 | CLog::CLog(CWnd* pParent /*=NULL*/) 19 | : CDialog(CLog::IDD, pParent) 20 | { 21 | //{{AFX_DATA_INIT(CLog) 22 | // NOTE: the ClassWizard will add member initialization here 23 | //}}AFX_DATA_INIT 24 | } 25 | 26 | 27 | void CLog::DoDataExchange(CDataExchange* pDX) 28 | { 29 | CDialog::DoDataExchange(pDX); 30 | //{{AFX_DATA_MAP(CLog) 31 | // NOTE: the ClassWizard will add DDX and DDV calls here 32 | //}}AFX_DATA_MAP 33 | } 34 | 35 | 36 | BEGIN_MESSAGE_MAP(CLog, CDialog) 37 | //{{AFX_MSG_MAP(CLog) 38 | ON_WM_SHOWWINDOW() 39 | ON_WM_SIZE() 40 | //}}AFX_MSG_MAP 41 | END_MESSAGE_MAP() 42 | 43 | ///////////////////////////////////////////////////////////////////////////// 44 | // CLog message handlers 45 | 46 | /*void CLog::OnSize(UINT nType, int cx, int cy) 47 | { 48 | CDialog::OnSize(nType, cx, cy); 49 | 50 | // TODO: Add your message handler code here 51 | if(nType ==SIZE_RESTORED) 52 | { 53 | CRect r; 54 | this->GetClientRect(&r); 55 | CEdit *p = (CEdit *)GetDlgItem(IDC_EDIT1); 56 | if(NULL != p->GetSafeHwnd()) 57 | { 58 | p->MoveWindow(r); 59 | p->GetClientRect(&r); 60 | } 61 | } 62 | } 63 | 64 | void CLog::OnShowWindow(BOOL bShow, UINT nStatus) 65 | { 66 | CDialog::OnShowWindow(bShow, nStatus); 67 | 68 | CEdit *p = (CEdit *)GetDlgItem(IDC_EDIT1); 69 | p->SetWindowText(this->buf); 70 | // TODO: Add your message handler code here 71 | 72 | }*/ 73 | 74 | void CLog::OnSize(UINT nType, int cx, int cy) 75 | { 76 | CDialog::OnSize(nType, cx, cy); 77 | 78 | // TODO: Add your message handler code here 79 | if(nType ==SIZE_RESTORED) 80 | { 81 | CRect r; 82 | this->GetClientRect(&r); 83 | CEdit *p = (CEdit *)GetDlgItem(IDC_EDIT1); 84 | if(NULL != p->GetSafeHwnd()) 85 | { 86 | p->MoveWindow(r); 87 | p->GetClientRect(&r); 88 | } 89 | } 90 | } 91 | 92 | void CLog::AddLine(PCSTR str) 93 | { 94 | //MessageBox("asdfasd", str,MB_OK); 95 | 96 | CEdit *p = (CEdit *)GetDlgItem(IDC_EDIT1); 97 | strcpy(this->buf,str); 98 | char *s = strchr(buf,'\n'); 99 | if(s != NULL) 100 | { 101 | strcpy(s, "\r\n"); 102 | }//*/ 103 | if (p != NULL) 104 | { 105 | p->ReplaceSel(buf); 106 | } 107 | 108 | //MessageBox("asdfasd","adsf",MB_OK); 109 | } 110 | -------------------------------------------------------------------------------- /exe2c_gui/Log.h: -------------------------------------------------------------------------------- 1 | #if !defined(AFX_LOG__H) 2 | #define AFX_LOG__H 3 | 4 | #if _MSC_VER > 1000 5 | #pragma once 6 | #endif // _MSC_VER > 1000 7 | // Log.h : header file 8 | // 9 | 10 | ///////////////////////////////////////////////////////////////////////////// 11 | // CLog dialog 12 | 13 | class CLog : public CDialog 14 | { 15 | // Construction 16 | public: 17 | CLog(CWnd* pParent = NULL); // standard constructor 18 | char buf[1024]; 19 | void AddLine(PCSTR str); 20 | 21 | // Dialog Data 22 | //{{AFX_DATA(CLog) 23 | enum { IDD = IDD_DIALOG4 }; 24 | // NOTE: the ClassWizard will add data members here 25 | //}}AFX_DATA 26 | 27 | 28 | // Overrides 29 | // ClassWizard generated virtual function overrides 30 | //{{AFX_VIRTUAL(CLog) 31 | protected: 32 | virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support 33 | //}}AFX_VIRTUAL 34 | 35 | // Implementation 36 | protected: 37 | 38 | // Generated message map functions 39 | //{{AFX_MSG(CLog) 40 | afx_msg void OnSize(UINT nType, int cx, int cy); 41 | //}}AFX_MSG 42 | DECLARE_MESSAGE_MAP() 43 | }; 44 | 45 | //{{AFX_INSERT_LOCATION}} 46 | // Microsoft Visual C++ will insert additional declarations immediately before the previous line. 47 | 48 | #endif // !defined(AFX_LOG__H) 49 | -------------------------------------------------------------------------------- /exe2c_gui/MainFrm.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c_gui/MainFrm.cpp -------------------------------------------------------------------------------- /exe2c_gui/MainFrm.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c_gui/MainFrm.h -------------------------------------------------------------------------------- /exe2c_gui/ReadMe.txt: -------------------------------------------------------------------------------- 1 | delete all 2 | OnUpdatePrevBookmark 3 | OnUpdateNextBookmark 4 | OnToggleBookmark 5 | OnNextBookmark 6 | OnPrevBookmark 7 | OnClearAllBookmarks 8 | OnGoBookmark 9 | OnClearBookmarks 10 | CCrystalTextView::OnEraseBkgnd 11 | OnEditOperation 12 | CCrystalTextBuffer::AddUndoRecord 13 | CCrystalTextBuffer::BeginUndoGroup 14 | CCrystalTextBuffer::FlushUndoGroup 15 | CCrystalTextBuffer::GetUndoDescription 16 | CCrystalTextBuffer::GetRedoDescription 17 | CCrystalTextBuffer::CanRedo 18 | CCrystalTextBuffer::CanUndo 19 | 20 | CCrystalEditView::OnEditUndo 21 | OnEditRedo 22 | OnUpdateEditRedo 23 | OnUpdateEditUndo 24 | m_pDropTarget 25 | Paste 26 | Cut 27 | OnEditDelete 28 | OnEditDeleteBack 29 | OnEditTab 30 | OnEditUntab 31 | OnEditReplace 32 | ReplaceSelection 33 | DoDropText 34 | DoDragScroll 35 | DeleteCurrentSelection 36 | SetAutoIndent 37 | GetAutoIndent 38 | OnEditOperation 39 | BOOL m_bAutoIndent; 40 | 41 | class CEditDropTargetImpl 42 | class CEditReplaceDlg 43 | ----------- 44 | m_bBookmarkExist 45 | -------------------------------------------------------------------------------- /exe2c_gui/Sample.suo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c_gui/Sample.suo -------------------------------------------------------------------------------- /exe2c_gui/SampleDoc.cpp: -------------------------------------------------------------------------------- 1 | // SampleDoc.cpp : implementation of the CSampleDoc class 2 | // 3 | 4 | #include "stdafx.h" 5 | #include "exe2c_gui.h" 6 | #include "mainfrm.h" 7 | #include "SampleDoc.h" 8 | 9 | #ifdef _DEBUG 10 | #define new DEBUG_NEW 11 | #undef THIS_FILE 12 | static char THIS_FILE[] = __FILE__; 13 | #endif 14 | 15 | ///////////////////////////////////////////////////////////////////////////// 16 | // CSampleDoc 17 | 18 | IMPLEMENT_DYNCREATE(CSampleDoc, CDocument) 19 | 20 | BEGIN_MESSAGE_MAP(CSampleDoc, CDocument) 21 | //{{AFX_MSG_MAP(CSampleDoc) 22 | //ON_COMMAND(ID_READ_ONLY, OnReadOnly) 23 | //}}AFX_MSG_MAP 24 | END_MESSAGE_MAP() 25 | 26 | ///////////////////////////////////////////////////////////////////////////// 27 | // CSampleDoc construction/destruction 28 | 29 | #pragma warning(disable:4355) 30 | 31 | CSampleDoc::CSampleDoc() : m_xTextBuffer(this) 32 | { 33 | // TODO: add one-time construction code here 34 | } 35 | 36 | CSampleDoc::~CSampleDoc() 37 | { 38 | } 39 | 40 | BOOL CSampleDoc::OnNewDocument() 41 | { 42 | if (!CDocument::OnNewDocument()) 43 | return FALSE; 44 | 45 | m_xTextBuffer.InitNew(); 46 | return TRUE; 47 | } 48 | 49 | 50 | 51 | ///////////////////////////////////////////////////////////////////////////// 52 | // CSampleDoc serialization 53 | 54 | void CSampleDoc::Serialize(CArchive& ar) 55 | { 56 | if (ar.IsStoring()) 57 | { 58 | // TODO: add storing code here 59 | } 60 | else 61 | { 62 | // TODO: add loading code here 63 | } 64 | } 65 | 66 | ///////////////////////////////////////////////////////////////////////////// 67 | // CSampleDoc diagnostics 68 | 69 | #ifdef _DEBUG 70 | void CSampleDoc::AssertValid() const 71 | { 72 | CDocument::AssertValid(); 73 | } 74 | 75 | void CSampleDoc::Dump(CDumpContext& dc) const 76 | { 77 | CDocument::Dump(dc); 78 | } 79 | #endif //_DEBUG 80 | 81 | ///////////////////////////////////////////////////////////////////////////// 82 | // CSampleDoc commands 83 | 84 | void CSampleDoc::DeleteContents() 85 | { 86 | CDocument::DeleteContents(); 87 | 88 | m_xTextBuffer.FreeAll(); 89 | } 90 | CMainFrame *g_Mfm = NULL; 91 | void MyRefreshView(); 92 | BOOL CSampleDoc::OnOpenDocument(LPCTSTR lpszPathName) 93 | { 94 | if (!CDocument::OnOpenDocument(lpszPathName)) 95 | return FALSE; 96 | g_EXE2C->exe2c_main(lpszPathName); 97 | BOOL m_bSucc = m_xTextBuffer.LoadFromFile(lpszPathName); 98 | g_Mfm->ShowFun(); 99 | 100 | MyRefreshView(); 101 | return m_bSucc; 102 | } 103 | 104 | BOOL CSampleDoc::OnSaveDocument(LPCTSTR lpszPathName) 105 | { 106 | m_xTextBuffer.SaveToFile(lpszPathName); 107 | return TRUE; // Note - we didn't call inherited member! 108 | } 109 | 110 | void CSampleDoc::OnCloseDocument() 111 | { 112 | // TODO: Add your specialized code here and/or call the base class 113 | g_Mfm->ClearFun(); 114 | CDocument::OnCloseDocument(); 115 | } 116 | -------------------------------------------------------------------------------- /exe2c_gui/SampleDoc.h: -------------------------------------------------------------------------------- 1 | // SampleDoc.h : interface of the CSampleDoc class 2 | // 3 | ///////////////////////////////////////////////////////////////////////////// 4 | 5 | #if !defined(AFX_SAMPLEDOC__H) 6 | #define AFX_SAMPLEDOC__H 7 | 8 | #if _MSC_VER >= 1000 9 | #pragma once 10 | #endif // _MSC_VER >= 1000 11 | 12 | #include "CRorTextBuffer.h" 13 | #include"viewfundlg.h" 14 | class CSampleDoc : public CDocument 15 | { 16 | protected: // create from serialization only 17 | CSampleDoc(); 18 | DECLARE_DYNCREATE(CSampleDoc) 19 | 20 | // Attributes 21 | public: 22 | class CSampleTextBuffer : public CRorTextBuffer 23 | { 24 | private: 25 | CSampleDoc *m_pOwnerDoc; 26 | public: 27 | CSampleTextBuffer(CSampleDoc *pDoc) { m_pOwnerDoc = pDoc; }; 28 | virtual void SetModified(BOOL bModified = TRUE) 29 | { m_pOwnerDoc->SetModifiedFlag(bModified); }; 30 | }; 31 | 32 | CSampleTextBuffer m_xTextBuffer; 33 | CViewFunDlg dlg; 34 | 35 | // Operations 36 | public: 37 | 38 | // Overrides 39 | // ClassWizard generated virtual function overrides 40 | //{{AFX_VIRTUAL(CSampleDoc) 41 | public: 42 | virtual BOOL OnNewDocument(); 43 | virtual void Serialize(CArchive& ar); 44 | virtual void DeleteContents(); 45 | virtual BOOL OnOpenDocument(LPCTSTR lpszPathName); 46 | virtual BOOL OnSaveDocument(LPCTSTR lpszPathName); 47 | virtual void OnCloseDocument(); 48 | //}}AFX_VIRTUAL 49 | 50 | // Implementation 51 | public: 52 | virtual ~CSampleDoc(); 53 | #ifdef _DEBUG 54 | virtual void AssertValid() const; 55 | virtual void Dump(CDumpContext& dc) const; 56 | #endif 57 | 58 | protected: 59 | 60 | // Generated message map functions 61 | protected: 62 | //{{AFX_MSG(CSampleDoc) 63 | //afx_msg void OnReadOnly(); 64 | //}}AFX_MSG 65 | DECLARE_MESSAGE_MAP() 66 | }; 67 | 68 | ///////////////////////////////////////////////////////////////////////////// 69 | 70 | //{{AFX_INSERT_LOCATION}} 71 | // Microsoft Developer Studio will insert additional declarations immediately before the previous line. 72 | 73 | #endif // !defined(AFX_SAMPLEDOC__H) 74 | -------------------------------------------------------------------------------- /exe2c_gui/SampleDoc.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c_gui/SampleDoc.ico -------------------------------------------------------------------------------- /exe2c_gui/SampleDocA.cpp: -------------------------------------------------------------------------------- 1 | // SampleDocA.cpp : implementation file 2 | // 3 | 4 | #include "stdafx.h" 5 | #include "sample.h" 6 | #include "SampleDocA.h" 7 | 8 | #ifdef _DEBUG 9 | #define new DEBUG_NEW 10 | #undef THIS_FILE 11 | static char THIS_FILE[] = __FILE__; 12 | #endif 13 | 14 | ///////////////////////////////////////////////////////////////////////////// 15 | // CSampleDocA 16 | 17 | IMPLEMENT_DYNCREATE(CSampleDocA, CDocument) 18 | 19 | CSampleDocA::CSampleDocA() 20 | { 21 | } 22 | 23 | BOOL CSampleDocA::OnNewDocument() 24 | { 25 | if (!CDocument::OnNewDocument()) 26 | return FALSE; 27 | SetTitle("String"); 28 | return TRUE; 29 | } 30 | 31 | CSampleDocA::~CSampleDocA() 32 | { 33 | } 34 | 35 | 36 | BEGIN_MESSAGE_MAP(CSampleDocA, CDocument) 37 | //{{AFX_MSG_MAP(CSampleDocA) 38 | // NOTE - the ClassWizard will add and remove mapping macros here. 39 | //}}AFX_MSG_MAP 40 | END_MESSAGE_MAP() 41 | 42 | ///////////////////////////////////////////////////////////////////////////// 43 | // CSampleDocA diagnostics 44 | 45 | #ifdef _DEBUG 46 | void CSampleDocA::AssertValid() const 47 | { 48 | CDocument::AssertValid(); 49 | } 50 | 51 | void CSampleDocA::Dump(CDumpContext& dc) const 52 | { 53 | CDocument::Dump(dc); 54 | } 55 | #endif //_DEBUG 56 | 57 | ///////////////////////////////////////////////////////////////////////////// 58 | // CSampleDocA serialization 59 | 60 | void CSampleDocA::Serialize(CArchive& ar) 61 | { 62 | if (ar.IsStoring()) 63 | { 64 | // TODO: add storing code here 65 | } 66 | else 67 | { 68 | // TODO: add loading code here 69 | } 70 | } 71 | 72 | ///////////////////////////////////////////////////////////////////////////// 73 | // CSampleDocA commands 74 | -------------------------------------------------------------------------------- /exe2c_gui/SampleDocA.h: -------------------------------------------------------------------------------- 1 | #if !defined(AFX_SAMPLEDOCA_H__98DBB216_579E_413E_9BD8_C03B20ACAF3D__INCLUDED_) 2 | #define AFX_SAMPLEDOCA_H__98DBB216_579E_413E_9BD8_C03B20ACAF3D__INCLUDED_ 3 | 4 | #if _MSC_VER > 1000 5 | #pragma once 6 | #endif // _MSC_VER > 1000 7 | // SampleDocA.h : header file 8 | // 9 | 10 | ///////////////////////////////////////////////////////////////////////////// 11 | // CSampleDocA document 12 | 13 | class CSampleDocA : public CDocument 14 | { 15 | protected: 16 | CSampleDocA(); // protected constructor used by dynamic creation 17 | DECLARE_DYNCREATE(CSampleDocA) 18 | 19 | // Attributes 20 | public: 21 | 22 | // Operations 23 | public: 24 | 25 | // Overrides 26 | // ClassWizard generated virtual function overrides 27 | //{{AFX_VIRTUAL(CSampleDocA) 28 | public: 29 | virtual void Serialize(CArchive& ar); // overridden for document i/o 30 | protected: 31 | virtual BOOL OnNewDocument(); 32 | //}}AFX_VIRTUAL 33 | 34 | // Implementation 35 | public: 36 | virtual ~CSampleDocA(); 37 | #ifdef _DEBUG 38 | virtual void AssertValid() const; 39 | virtual void Dump(CDumpContext& dc) const; 40 | #endif 41 | 42 | // Generated message map functions 43 | protected: 44 | //{{AFX_MSG(CSampleDocA) 45 | // NOTE - the ClassWizard will add and remove member functions here. 46 | //}}AFX_MSG 47 | DECLARE_MESSAGE_MAP() 48 | }; 49 | 50 | //{{AFX_INSERT_LOCATION}} 51 | // Microsoft Visual C++ will insert additional declarations immediately before the previous line. 52 | 53 | #endif // !defined(AFX_SAMPLEDOCA_H__98DBB216_579E_413E_9BD8_C03B20ACAF3D__INCLUDED_) 54 | -------------------------------------------------------------------------------- /exe2c_gui/SampleView.cpp: -------------------------------------------------------------------------------- 1 | // SampleView.cpp : implementation of the CSampleView class 2 | // 3 | 4 | #include "stdafx.h" 5 | #include "exe2c_gui.h" 6 | 7 | #include "SampleDoc.h" 8 | #include "SampleView.h" 9 | 10 | #ifdef _DEBUG 11 | #define new DEBUG_NEW 12 | #undef THIS_FILE 13 | static char THIS_FILE[] = __FILE__; 14 | #endif 15 | 16 | ///////////////////////////////////////////////////////////////////////////// 17 | // CSampleView 18 | 19 | IMPLEMENT_DYNCREATE(CSampleView, CRorEditView) 20 | 21 | BEGIN_MESSAGE_MAP(CSampleView, CRorEditView) 22 | //{{AFX_MSG_MAP(CSampleView) 23 | ON_WM_CONTEXTMENU() 24 | //}}AFX_MSG_MAP 25 | // Standard printing commands 26 | ON_COMMAND(ID_FILE_PRINT, CRorEditView::OnFilePrint) 27 | ON_COMMAND(ID_FILE_PRINT_DIRECT, CRorEditView::OnFilePrint) 28 | ON_COMMAND(ID_FILE_PRINT_PREVIEW, CRorEditView::OnFilePrintPreview) 29 | END_MESSAGE_MAP() 30 | 31 | ///////////////////////////////////////////////////////////////////////////// 32 | // CSampleView construction/destruction 33 | extern CSampleView *g_VIEW; 34 | CSampleView::CSampleView() 35 | { 36 | g_VIEW = this; 37 | } 38 | 39 | CSampleView::~CSampleView() 40 | { 41 | } 42 | 43 | BOOL CSampleView::PreCreateWindow(CREATESTRUCT& cs) 44 | { 45 | // TODO: Modify the Window class or styles here by modifying 46 | // the CREATESTRUCT cs 47 | 48 | return CRorEditView::PreCreateWindow(cs); 49 | } 50 | 51 | 52 | ///////////////////////////////////////////////////////////////////////////// 53 | // CSampleView diagnostics 54 | 55 | #ifdef _DEBUG 56 | void CSampleView::AssertValid() const 57 | { 58 | CRorEditView::AssertValid(); 59 | } 60 | 61 | void CSampleView::Dump(CDumpContext& dc) const 62 | { 63 | CRorEditView::Dump(dc); 64 | } 65 | 66 | CSampleDoc* CSampleView::GetDocument() // non-debug version is inline 67 | { 68 | ASSERT(m_pDocument->IsKindOf(RUNTIME_CLASS(CSampleDoc))); 69 | return (CSampleDoc*)m_pDocument; 70 | } 71 | #endif //_DEBUG 72 | 73 | ///////////////////////////////////////////////////////////////////////////// 74 | // CSampleView message handlers 75 | //CString g_string = "hello world\ngood day\n122222"; 76 | CRorTextBuffer *CSampleView::LocateTextBuffer() 77 | { 78 | // GetDocument()->m_xTextBuffer.InsertLine(g_string); 79 | return &GetDocument()->m_xTextBuffer; 80 | } 81 | 82 | void CSampleView::OnInitialUpdate() 83 | { 84 | CRorEditView::OnInitialUpdate(); 85 | 86 | SetFont(); 87 | } 88 | 89 | void CSampleView::OnContextMenu(CWnd* pWnd, CPoint point) 90 | { 91 | AfxMessageBox("Build your own context menu!"); 92 | } 93 | -------------------------------------------------------------------------------- /exe2c_gui/SampleView.h: -------------------------------------------------------------------------------- 1 | // SampleView.h : interface of the CSampleView class 2 | // 3 | ///////////////////////////////////////////////////////////////////////////// 4 | 5 | #if !defined(AFX_SAMPLEVIEW__H) 6 | #define AFX_SAMPLEVIEW__H 7 | 8 | #if _MSC_VER >= 1000 9 | #pragma once 10 | #endif // _MSC_VER >= 1000 11 | 12 | #include "CRorEditView.h" 13 | 14 | class CSampleDoc; 15 | 16 | class CSampleView : public CRorEditView 17 | { 18 | protected: // create from serialization only 19 | CSampleView(); 20 | DECLARE_DYNCREATE(CSampleView) 21 | 22 | // Attributes 23 | public: 24 | CSampleDoc* GetDocument(); 25 | 26 | virtual CRorTextBuffer *LocateTextBuffer(); 27 | 28 | // Operations 29 | public: 30 | 31 | // Overrides 32 | // ClassWizard generated virtual function overrides 33 | //{{AFX_VIRTUAL(CSampleView) 34 | public: 35 | virtual BOOL PreCreateWindow(CREATESTRUCT& cs); 36 | virtual void OnInitialUpdate(); 37 | //}}AFX_VIRTUAL 38 | 39 | // Implementation 40 | public: 41 | virtual ~CSampleView(); 42 | #ifdef _DEBUG 43 | virtual void AssertValid() const; 44 | virtual void Dump(CDumpContext& dc) const; 45 | #endif 46 | 47 | protected: 48 | 49 | // Generated message map functions 50 | protected: 51 | //{{AFX_MSG(CSampleView) 52 | afx_msg void OnContextMenu(CWnd* pWnd, CPoint point); 53 | //}}AFX_MSG 54 | DECLARE_MESSAGE_MAP() 55 | }; 56 | 57 | #ifndef _DEBUG // debug version in SampleView.cpp 58 | inline CSampleDoc* CSampleView::GetDocument() 59 | { return (CSampleDoc*)m_pDocument; } 60 | #endif 61 | 62 | ///////////////////////////////////////////////////////////////////////////// 63 | 64 | //{{AFX_INSERT_LOCATION}} 65 | // Microsoft Developer Studio will insert additional declarations immediately before the previous line. 66 | 67 | #endif // !defined(AFX_SAMPLEVIEW__H) 68 | -------------------------------------------------------------------------------- /exe2c_gui/StdAfx.cpp: -------------------------------------------------------------------------------- 1 | // stdafx.cpp : source file that includes just the standard includes 2 | // Sample.pch will be the pre-compiled header 3 | // stdafx.obj will contain the pre-compiled type information 4 | 5 | #include "stdafx.h" 6 | 7 | -------------------------------------------------------------------------------- /exe2c_gui/StdAfx.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c_gui/StdAfx.h -------------------------------------------------------------------------------- /exe2c_gui/Toolbar.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c_gui/Toolbar.bmp -------------------------------------------------------------------------------- /exe2c_gui/ViewFunDlg.cpp: -------------------------------------------------------------------------------- 1 | // ViewFunDlg.cpp : implementation file 2 | // 3 | 4 | #include "stdafx.h" 5 | #include "exe2c_gui.h" 6 | #include "ViewFunDlg.h" 7 | #include "sampleview.h" 8 | #ifdef _DEBUG 9 | #define new DEBUG_NEW 10 | #undef THIS_FILE 11 | static char THIS_FILE[] = __FILE__; 12 | #endif 13 | 14 | ///////////////////////////////////////////////////////////////////////////// 15 | // CViewFunDlg dialog 16 | IMPLEMENT_DYNCREATE(CViewFunDlg, CDialog) 17 | 18 | 19 | CViewFunDlg::CViewFunDlg(CWnd* pParent /*=NULL*/) 20 | : CDialog(CViewFunDlg::IDD, pParent) 21 | { 22 | //{{AFX_DATA_INIT(CViewFunDlg) 23 | // NOTE: the ClassWizard will add member initialization here 24 | //}}AFX_DATA_INIT 25 | } 26 | 27 | 28 | void CViewFunDlg::DoDataExchange(CDataExchange* pDX) 29 | { 30 | CDialog::DoDataExchange(pDX); 31 | //{{AFX_DATA_MAP(CViewFunDlg) 32 | DDX_Control(pDX, IDC_LIST1, m_list); 33 | //}}AFX_DATA_MAP 34 | } 35 | 36 | 37 | BEGIN_MESSAGE_MAP(CViewFunDlg, CDialog) 38 | //{{AFX_MSG_MAP(CViewFunDlg) 39 | ON_NOTIFY(NM_DBLCLK, IDC_LIST1, OnDblclkList1) 40 | //}}AFX_MSG_MAP 41 | END_MESSAGE_MAP() 42 | 43 | ///////////////////////////////////////////////////////////////////////////// 44 | // CViewFunDlg message handlers 45 | 46 | BOOL CViewFunDlg::OnInitDialog() 47 | { 48 | CDialog::OnInitDialog(); 49 | 50 | m_list.SetExtendedStyle(m_list.GetExtendedStyle() | LVS_EX_GRIDLINES |LVS_EX_FULLROWSELECT |LVS_EX_FULLROWSELECT); 51 | m_list.InsertColumn(0,"Name",40,70,10); 52 | m_list.InsertColumn(1,"nStep",40,45,10); 53 | m_list.InsertColumn(2,"headoff",40,50,10); 54 | m_list.InsertColumn(3,"endoff",40,50,10); 55 | m_list.InsertColumn(4,"stack",40,50,10); 56 | 57 | // li->Caption = info.name; 58 | // li->SubItems->Add( IntToStr(info.nStep) ); 59 | // li->SubItems->Add( IntToHex((int)info.headoff,8) ); 60 | // li->SubItems->Add( IntToHex((int)info.endoff,8) ); 61 | // li->SubItems->Add( IntToStr(info.stack_purge) ); 62 | 63 | return TRUE; // return TRUE unless you set the focus to a control 64 | // EXCEPTION: OCX Property Pages should return FALSE 65 | } 66 | void MyRefreshView(); 67 | void CViewFunDlg::OnDblclkList1(NMHDR* pNMHDR, LRESULT* pResult) 68 | { 69 | UINT i,uSelectedCount=m_list.GetSelectedCount(); 70 | int nItemSel=-1; 71 | 72 | CString strID; 73 | if(uSelectedCount>0) 74 | { 75 | for(i=0;iSetCurFunc_by_Name(strID); 82 | MyRefreshView(); 83 | *pResult = 0; 84 | } 85 | -------------------------------------------------------------------------------- /exe2c_gui/ViewFunDlg.h: -------------------------------------------------------------------------------- 1 | #if !defined(AFX_VIEWFUNDLG__H) 2 | #define AFX_VIEWFUNDLG__H 3 | 4 | #if _MSC_VER > 1000 5 | #pragma once 6 | #endif // _MSC_VER > 1000 7 | // ViewFunDlg.h : header file 8 | // 9 | 10 | ///////////////////////////////////////////////////////////////////////////// 11 | // CViewFunDlg dialog 12 | 13 | class CViewFunDlg : public CDialog 14 | { 15 | // Construction 16 | public: 17 | CViewFunDlg(CWnd* pParent = NULL); // standard constructor 18 | DECLARE_DYNCREATE(CViewFunDlg) 19 | 20 | // Dialog Data 21 | //{{AFX_DATA(CViewFunDlg) 22 | enum { IDD = IDD_DIALOGBAR2 }; 23 | CListCtrl m_list; 24 | //}}AFX_DATA 25 | 26 | 27 | // Overrides 28 | // ClassWizard generated virtual function overrides 29 | //{{AFX_VIRTUAL(CViewFunDlg) 30 | protected: 31 | virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support 32 | //}}AFX_VIRTUAL 33 | 34 | // Implementation 35 | protected: 36 | 37 | // Generated message map functions 38 | //{{AFX_MSG(CViewFunDlg) 39 | virtual BOOL OnInitDialog(); 40 | afx_msg void OnDblclkList1(NMHDR* pNMHDR, LRESULT* pResult); 41 | //}}AFX_MSG 42 | DECLARE_MESSAGE_MAP() 43 | }; 44 | 45 | //{{AFX_INSERT_LOCATION}} 46 | // Microsoft Visual C++ will insert additional declarations immediately before the previous line. 47 | 48 | #endif // !defined(AFX_VIEWFUNDLG__H) 49 | -------------------------------------------------------------------------------- /exe2c_gui/cplusplus.cpp: -------------------------------------------------------------------------------- 1 | #include "stdafx.h" 2 | #include "SampleView.h" 3 | 4 | #ifdef _DEBUG 5 | #define new DEBUG_NEW 6 | #undef THIS_FILE 7 | static char THIS_FILE[] = __FILE__; 8 | #endif 9 | 10 | // C++ keywords (MSVC5.0 + POET5.0) 11 | static LPTSTR s_apszCppKeywordList[] = 12 | { 13 | _T("CALL"), 14 | _T("MOV"), 15 | _T("__asm"), 16 | _T("enum"), 17 | _T("__multiple_inheritance"), 18 | _T("template"), 19 | _T("auto"), 20 | _T("__except"), 21 | _T("__single_inheritance"), 22 | _T("this"), 23 | _T("__based"), 24 | _T("explicit"), 25 | _T("__virtual_inheritance"), 26 | _T("thread"), 27 | _T("bool"), 28 | _T("extern"), 29 | _T("mutable"), 30 | _T("throw"), 31 | _T("break"), 32 | _T("false"), 33 | _T("naked"), 34 | _T("true"), 35 | _T("case"), 36 | _T("__fastcall"), 37 | _T("namespace"), 38 | _T("try"), 39 | _T("catch"), 40 | _T("__finally"), 41 | _T("new"), 42 | _T("__try"), 43 | _T("__cdecl"), 44 | _T("float"), 45 | _T("operator"), 46 | _T("typedef"), 47 | _T("char"), 48 | _T("for"), 49 | _T("private"), 50 | _T("typeid"), 51 | _T("class"), 52 | _T("friend"), 53 | _T("protected"), 54 | _T("typename"), 55 | _T("const"), 56 | _T("goto"), 57 | _T("public"), 58 | _T("union"), 59 | _T("const_cast"), 60 | _T("if"), 61 | _T("register"), 62 | _T("unsigned"), 63 | _T("continue"), 64 | _T("inline"), 65 | _T("reinterpret_cast"), 66 | _T("using"), 67 | _T("__declspec"), 68 | _T("__inline"), 69 | _T("return"), 70 | _T("uuid"), 71 | _T("default"), 72 | _T("int"), 73 | _T("short"), 74 | _T("__uuidof"), 75 | _T("delete"), 76 | _T("__int8"), 77 | _T("signed"), 78 | _T("virtual"), 79 | _T("dllexport"), 80 | _T("__int16"), 81 | _T("sizeof"), 82 | _T("void"), 83 | _T("dllimport"), 84 | _T("__int32"), 85 | _T("static"), 86 | _T("volatile"), 87 | _T("do"), 88 | _T("__int64"), 89 | _T("static_cast"), 90 | _T("wmain"), 91 | _T("double"), 92 | _T("__leave"), 93 | _T("__stdcall"), 94 | _T("while"), 95 | _T("dynamic_cast"), 96 | _T("long"), 97 | _T("struct"), 98 | _T("xalloc"), 99 | _T("else"), 100 | _T("main"), 101 | _T("switch"), 102 | _T("interface"), 103 | // Added by a.s. 104 | _T("persistent"), 105 | _T("_persistent"), 106 | _T("transient"), 107 | _T("depend"), 108 | _T("ondemand"), 109 | _T("transient"), 110 | _T("cset"), 111 | _T("useindex"), 112 | _T("indexdef"), 113 | NULL 114 | }; 115 | 116 | static BOOL IsCppKeyword(LPCTSTR pszChars, int nLength) 117 | { 118 | for (int L = 0; s_apszCppKeywordList[L] != NULL; L ++) 119 | { 120 | if (strncmp(s_apszCppKeywordList[L], pszChars, nLength) == 0 121 | && s_apszCppKeywordList[L][nLength] == 0) 122 | return TRUE; 123 | } 124 | return FALSE; 125 | } 126 | 127 | static BOOL IsCppNumber(LPCTSTR pszChars, int nLength) 128 | { 129 | if (nLength > 2 && pszChars[0] == '0' && pszChars[1] == 'x') 130 | { 131 | for (int I = 2; I < nLength; I++) 132 | { 133 | if (isdigit(pszChars[I]) || (pszChars[I] >= 'A' && pszChars[I] <= 'F') || 134 | (pszChars[I] >= 'a' && pszChars[I] <= 'f')) 135 | continue; 136 | return FALSE; 137 | } 138 | return TRUE; 139 | } 140 | if (! isdigit(pszChars[0])) 141 | return FALSE; 142 | for (int I = 1; I < nLength; I++) 143 | { 144 | if (! isdigit(pszChars[I]) && pszChars[I] != '+' && 145 | pszChars[I] != '-' && pszChars[I] != '.' && pszChars[I] != 'e' && 146 | pszChars[I] != 'E') 147 | return FALSE; 148 | } 149 | return TRUE; 150 | } 151 | 152 | #define DEFINE_BLOCK(pos, colorindex) \ 153 | ASSERT((pos) >= 0 && (pos) <= nLength);\ 154 | if (pBuf != NULL)\ 155 | {\ 156 | if (nActualItems == 0 || pBuf[nActualItems - 1].m_nCharPos <= (pos)){\ 157 | pBuf[nActualItems].m_nCharPos = (pos);\ 158 | pBuf[nActualItems].m_nColorIndex = (colorindex);\ 159 | nActualItems ++;}\ 160 | } 161 | 162 | #define COOKIE_COMMENT 0x0001 163 | #define COOKIE_PREPROCESSOR 0x0002 164 | #define COOKIE_EXT_COMMENT 0x0004 165 | #define COOKIE_STRING 0x0008 166 | #define COOKIE_CHAR 0x0010 167 | 168 | -------------------------------------------------------------------------------- /exe2c_gui/editcmd.h: -------------------------------------------------------------------------------- 1 | 2 | #ifndef _EDITCMD_H_INCLUDED 3 | #define _EDITCMD_H_INCLUDED 4 | 5 | 6 | 7 | #define ID_EDIT_FIRST 37000 8 | #define ID_EDIT_LAST 37999 9 | 10 | // ID_EDIT_COPY, ID_EDIT_PASTE, ID_EDIT_CUT, ID_EDIT_SELECT_ALL 11 | // are defined in afxres.h 12 | 13 | // Edit commands 14 | #define ID_EDIT_DELETE 37000 15 | #define ID_EDIT_DELETE_BACK 37001 16 | #define ID_EDIT_DELETE_WORD_BACK 37002 17 | #define ID_EDIT_TAB 37003 18 | #define ID_EDIT_UNTAB 37004 19 | #define ID_EDIT_SWITCH_OVRMODE 37005 20 | 21 | // Cursor movement commands 22 | #define ID_EDIT_CHAR_LEFT 37100 23 | #define ID_EDIT_EXT_CHAR_LEFT 37101 24 | #define ID_EDIT_CHAR_RIGHT 37102 25 | #define ID_EDIT_EXT_CHAR_RIGHT 37103 26 | #define ID_EDIT_WORD_LEFT 37104 27 | #define ID_EDIT_EXT_WORD_LEFT 37105 28 | #define ID_EDIT_WORD_RIGHT 37106 29 | #define ID_EDIT_EXT_WORD_RIGHT 37107 30 | #define ID_EDIT_LINE_UP 37108 31 | #define ID_EDIT_EXT_LINE_UP 37109 32 | #define ID_EDIT_LINE_DOWN 37110 33 | #define ID_EDIT_EXT_LINE_DOWN 37111 34 | #define ID_EDIT_SCROLL_UP 37112 35 | #define ID_EDIT_SCROLL_DOWN 37113 36 | #define ID_EDIT_PAGE_UP 37114 37 | #define ID_EDIT_EXT_PAGE_UP 37115 38 | #define ID_EDIT_PAGE_DOWN 37116 39 | #define ID_EDIT_EXT_PAGE_DOWN 37117 40 | #define ID_EDIT_LINE_END 37118 41 | #define ID_EDIT_EXT_LINE_END 37119 42 | #define ID_EDIT_HOME 37120 43 | #define ID_EDIT_EXT_HOME 37121 44 | #define ID_EDIT_TEXT_BEGIN 37122 45 | #define ID_EDIT_EXT_TEXT_BEGIN 37123 46 | #define ID_EDIT_TEXT_END 37124 47 | #define ID_EDIT_EXT_TEXT_END 37125 48 | #define ID_EDIT_FIND_PREVIOUS 37126 49 | 50 | // Bookmark commands 51 | #define ID_EDIT_TOGGLE_BOOKMARK0 37200 52 | #define ID_EDIT_TOGGLE_BOOKMARK1 37201 53 | #define ID_EDIT_TOGGLE_BOOKMARK2 37202 54 | #define ID_EDIT_TOGGLE_BOOKMARK3 37203 55 | #define ID_EDIT_TOGGLE_BOOKMARK4 37204 56 | #define ID_EDIT_TOGGLE_BOOKMARK5 37205 57 | #define ID_EDIT_TOGGLE_BOOKMARK6 37206 58 | #define ID_EDIT_TOGGLE_BOOKMARK7 37207 59 | #define ID_EDIT_TOGGLE_BOOKMARK8 37208 60 | #define ID_EDIT_TOGGLE_BOOKMARK9 37209 61 | #define ID_EDIT_GO_BOOKMARK0 37210 62 | #define ID_EDIT_GO_BOOKMARK1 37211 63 | #define ID_EDIT_GO_BOOKMARK2 37212 64 | #define ID_EDIT_GO_BOOKMARK3 37213 65 | #define ID_EDIT_GO_BOOKMARK4 37214 66 | #define ID_EDIT_GO_BOOKMARK5 37215 67 | #define ID_EDIT_GO_BOOKMARK6 37216 68 | #define ID_EDIT_GO_BOOKMARK7 37217 69 | #define ID_EDIT_GO_BOOKMARK8 37218 70 | #define ID_EDIT_GO_BOOKMARK9 37219 71 | #define ID_EDIT_CLEAR_BOOKMARKS 37220 72 | #define ID_EDIT_SET_BREAKPOINT 37221 73 | #define ID_EDIT_ENABLE_BREAKPOINT 37222 74 | #define ID_EDIT_TOGGLE_BOOKMARK 37223 75 | #define ID_EDIT_GOTO_NEXT_BOOKMARK 37224 76 | #define ID_EDIT_GOTO_PREV_BOOKMARK 37225 77 | #define ID_EDIT_CLEAR_ALL_BOOKMARKS 37226 78 | 79 | // Status update 80 | #define ID_EDIT_INDICATOR_COL 37900 81 | #define ID_EDIT_INDICATOR_READ 37901 82 | #define ID_EDIT_INDICATOR_CRLF 37902 83 | #define ID_EDIT_INDICATOR_POSITION 37903 84 | 85 | // Resource IDs 86 | #define IDR_MARGIN_CURSOR 22900 87 | #define IDR_DEFAULT_ACCEL 22901 88 | #define IDR_MARGIN_ICONS 22902 89 | 90 | // Dialog IDs 91 | #define IDD_EDIT_FIND 8601 92 | #define IDD_EDIT_REPLACE 8602 93 | 94 | // Control IDs 95 | #define IDC_EDIT_WHOLE_WORD 8603 96 | #define IDC_EDIT_MATCH_CASE 8604 97 | #define IDC_EDIT_TEXT 8605 98 | #define IDS_EDIT_TEXT_NOT_FOUND 8606 99 | #define IDC_EDIT_REPLACE 8607 100 | #define IDC_EDIT_REPLACE_ALL 8608 101 | #define IDC_EDIT_REPLACE_WITH 8609 102 | #define IDC_EDIT_SKIP 8610 103 | #define IDC_EDIT_DIRECTION_UP 8611 104 | #define IDC_EDIT_DIRECTION_DOWN 8612 105 | #define IDC_EDIT_SCOPE_SELECTION 8613 106 | #define IDC_EDIT_SCOPE_WHOLE_FILE 8614 107 | 108 | #define IDS_MENU_UNDO_FORMAT 8615 109 | #define IDS_MENU_REDO_FORMAT 8616 110 | #define IDS_MENU_UNDO_DEFAULT 8617 111 | #define IDS_MENU_REDO_DEFAULT 8618 112 | #define IDS_EDITOP_UNKNOWN 8619 113 | #define IDS_EDITOP_PASTE 8620 114 | #define IDS_EDITOP_DELSELECTION 8621 115 | #define IDS_EDITOP_CUT 8622 116 | #define IDS_EDITOP_DELETE 8623 117 | #define IDS_EDITOP_TYPING 8624 118 | #define IDS_EDITOP_BACKSPACE 8625 119 | #define IDS_EDITOP_INDENT 8626 120 | #define IDS_EDITOP_DRAGDROP 8627 121 | #define IDS_EDITOP_REPLACE 8628 122 | #define IDS_EDITOP_AUTOINDENT 8629 123 | 124 | 125 | #endif 126 | -------------------------------------------------------------------------------- /exe2c_gui/editres.rc: -------------------------------------------------------------------------------- 1 | 2 | #include "editcmd.h" 3 | #include "afxres.h" 4 | 5 | IDD_EDIT_FIND DIALOG FIXED IMPURE 30, 73, 236, 62 6 | STYLE DS_MODALFRAME | DS_3DLOOK | WS_POPUP | WS_CAPTION | WS_SYSMENU 7 | CAPTION "Find" 8 | FONT 8, "MS Shell Dlg" 9 | BEGIN 10 | LTEXT "Fi&nd what:",IDC_STATIC,4,8,42,8 11 | EDITTEXT IDC_EDIT_TEXT,47,7,128,12,ES_AUTOHSCROLL | WS_GROUP 12 | CONTROL "Match &whole word only",IDC_EDIT_WHOLE_WORD,"Button", 13 | BS_AUTOCHECKBOX | WS_GROUP | WS_TABSTOP,4,26,100,12 14 | CONTROL "Match &case",IDC_EDIT_MATCH_CASE,"Button", 15 | BS_AUTOCHECKBOX | WS_TABSTOP,4,42,64,12 16 | GROUPBOX "Direction",IDC_STATIC,107,26,68,28,WS_GROUP 17 | CONTROL "&Up",IDC_EDIT_DIRECTION_UP,"Button",BS_AUTORADIOBUTTON | 18 | WS_GROUP,111,38,25,12 19 | CONTROL "&Down",IDC_EDIT_DIRECTION_DOWN,"Button", 20 | BS_AUTORADIOBUTTON,138,38,35,12 21 | DEFPUSHBUTTON "&Find Next",IDOK,182,5,50,14,WS_GROUP 22 | PUSHBUTTON "Cancel",IDCANCEL,182,23,50,14 23 | END 24 | 25 | IDD_EDIT_REPLACE DIALOG FIXED IMPURE 36, 44, 230, 88 26 | STYLE DS_MODALFRAME | DS_3DLOOK | WS_POPUP | WS_CAPTION | WS_SYSMENU 27 | CAPTION "Replace" 28 | FONT 8, "MS Shell Dlg" 29 | BEGIN 30 | LTEXT "Fi&nd what:",IDC_STATIC,4,9,48,8 31 | EDITTEXT IDC_EDIT_TEXT,54,7,114,12,ES_AUTOHSCROLL | WS_GROUP 32 | LTEXT "Re&place with:",IDC_STATIC,4,26,48,8 33 | EDITTEXT IDC_EDIT_REPLACE_WITH,54,24,114,12,ES_AUTOHSCROLL | 34 | WS_GROUP 35 | CONTROL "Match &whole word only",IDC_EDIT_WHOLE_WORD,"Button", 36 | BS_AUTOCHECKBOX | WS_GROUP | WS_TABSTOP,5,46,91,12 37 | CONTROL "Match &case",IDC_EDIT_MATCH_CASE,"Button", 38 | BS_AUTOCHECKBOX | WS_TABSTOP,5,62,59,12 39 | GROUPBOX "Replace in",IDC_STATIC,97,43,71,37,WS_GROUP 40 | CONTROL "&Selection",IDC_EDIT_SCOPE_SELECTION,"Button", 41 | BS_AUTORADIOBUTTON | WS_GROUP,102,54,59,10 42 | CONTROL "Wh&ole file",IDC_EDIT_SCOPE_WHOLE_FILE,"Button", 43 | BS_AUTORADIOBUTTON,102,66,58,10 44 | DEFPUSHBUTTON "&Find Next",IDC_EDIT_SKIP,174,4,50,14,WS_GROUP 45 | PUSHBUTTON "&Replace",IDC_EDIT_REPLACE,174,21,50,14 46 | PUSHBUTTON "Replace &All",IDC_EDIT_REPLACE_ALL,174,38,50,14 47 | PUSHBUTTON "Cancel",IDCANCEL,174,55,50,14 48 | END 49 | 50 | IDR_MARGIN_ICONS BITMAP DISCARDABLE "mg_icons.bmp" 51 | 52 | IDR_MARGIN_CURSOR CURSOR DISCARDABLE "mg_cur.cur" 53 | 54 | STRINGTABLE DISCARDABLE 55 | BEGIN 56 | IDS_EDIT_TEXT_NOT_FOUND "Cannot find string""%s""" 57 | IDS_MENU_UNDO_FORMAT "&Undo %s\tCtrl+Z" 58 | IDS_MENU_REDO_FORMAT "&Redo %s\tCtrl+Y" 59 | IDS_MENU_UNDO_DEFAULT "&Undo\tCtrl+Z" 60 | IDS_MENU_REDO_DEFAULT "&Redo\tCtrl+Z" 61 | IDS_EDITOP_UNKNOWN "Unknown" 62 | IDS_EDITOP_PASTE "Paste" 63 | IDS_EDITOP_DELSELECTION "Delete Selection" 64 | IDS_EDITOP_CUT "Cut" 65 | IDS_EDITOP_DELETE "Delete" 66 | IDS_EDITOP_TYPING "Typing" 67 | IDS_EDITOP_BACKSPACE "Backspace" 68 | IDS_EDITOP_INDENT "Indent" 69 | IDS_EDITOP_DRAGDROP "Drag And Drop" 70 | IDS_EDITOP_REPLACE "Replace" 71 | IDS_EDITOP_AUTOINDENT "Auto Indent" 72 | END 73 | 74 | IDR_DEFAULT_ACCEL ACCELERATORS DISCARDABLE 75 | BEGIN 76 | "0", ID_EDIT_GO_BOOKMARK0, VIRTKEY, ALT, NOINVERT 77 | "0", ID_EDIT_TOGGLE_BOOKMARK0, VIRTKEY, CONTROL, 78 | NOINVERT 79 | "1", ID_EDIT_GO_BOOKMARK1, VIRTKEY, ALT, NOINVERT 80 | "1", ID_EDIT_TOGGLE_BOOKMARK1, VIRTKEY, CONTROL, 81 | NOINVERT 82 | "2", ID_EDIT_GO_BOOKMARK2, VIRTKEY, ALT, NOINVERT 83 | "2", ID_EDIT_TOGGLE_BOOKMARK2, VIRTKEY, CONTROL, 84 | NOINVERT 85 | "3", ID_EDIT_GO_BOOKMARK3, VIRTKEY, ALT, NOINVERT 86 | "3", ID_EDIT_TOGGLE_BOOKMARK3, VIRTKEY, CONTROL, 87 | NOINVERT 88 | "4", ID_EDIT_GO_BOOKMARK4, VIRTKEY, ALT, NOINVERT 89 | "4", ID_EDIT_TOGGLE_BOOKMARK4, VIRTKEY, CONTROL, 90 | NOINVERT 91 | "5", ID_EDIT_GO_BOOKMARK5, VIRTKEY, ALT, NOINVERT 92 | "5", ID_EDIT_TOGGLE_BOOKMARK5, VIRTKEY, CONTROL, 93 | NOINVERT 94 | "6", ID_EDIT_GO_BOOKMARK6, VIRTKEY, ALT, NOINVERT 95 | "6", ID_EDIT_TOGGLE_BOOKMARK6, VIRTKEY, CONTROL, 96 | NOINVERT 97 | "7", ID_EDIT_GO_BOOKMARK7, VIRTKEY, ALT, NOINVERT 98 | "7", ID_EDIT_TOGGLE_BOOKMARK7, VIRTKEY, CONTROL, 99 | NOINVERT 100 | "8", ID_EDIT_GO_BOOKMARK8, VIRTKEY, ALT, NOINVERT 101 | "8", ID_EDIT_TOGGLE_BOOKMARK8, VIRTKEY, CONTROL, 102 | NOINVERT 103 | "9", ID_EDIT_GO_BOOKMARK9, VIRTKEY, ALT, NOINVERT 104 | "9", ID_EDIT_TOGGLE_BOOKMARK9, VIRTKEY, CONTROL, 105 | NOINVERT 106 | "A", ID_EDIT_SELECT_ALL, VIRTKEY, CONTROL, NOINVERT 107 | "C", ID_EDIT_COPY, VIRTKEY, CONTROL, NOINVERT 108 | "F", ID_EDIT_FIND, VIRTKEY, CONTROL, NOINVERT 109 | "H", ID_EDIT_REPLACE, VIRTKEY, CONTROL, NOINVERT 110 | "V", ID_EDIT_PASTE, VIRTKEY, CONTROL, NOINVERT 111 | VK_BACK, ID_EDIT_DELETE_BACK, VIRTKEY, NOINVERT 112 | VK_BACK, ID_EDIT_DELETE_WORD_BACK, VIRTKEY, CONTROL, NOINVERT 113 | VK_BACK, ID_EDIT_UNDO, VIRTKEY, ALT, NOINVERT 114 | VK_DELETE, ID_EDIT_DELETE, VIRTKEY, NOINVERT 115 | VK_DELETE, ID_EDIT_CUT, VIRTKEY, SHIFT, NOINVERT 116 | VK_DOWN, ID_EDIT_LINE_DOWN, VIRTKEY, NOINVERT 117 | VK_DOWN, ID_EDIT_SCROLL_DOWN, VIRTKEY, CONTROL, NOINVERT 118 | VK_DOWN, ID_EDIT_EXT_LINE_DOWN, VIRTKEY, SHIFT, NOINVERT 119 | VK_END, ID_EDIT_LINE_END, VIRTKEY, NOINVERT 120 | VK_END, ID_EDIT_TEXT_END, VIRTKEY, CONTROL, NOINVERT 121 | VK_END, ID_EDIT_EXT_LINE_END, VIRTKEY, SHIFT, NOINVERT 122 | VK_END, ID_EDIT_EXT_TEXT_END, VIRTKEY, SHIFT, CONTROL, NOINVERT 123 | VK_F2, ID_EDIT_CLEAR_ALL_BOOKMARKS, VIRTKEY, SHIFT, CONTROL, NOINVERT 124 | VK_F2, ID_EDIT_TOGGLE_BOOKMARK, VIRTKEY, CONTROL, NOINVERT 125 | VK_F2, ID_EDIT_GOTO_NEXT_BOOKMARK, VIRTKEY, NOINVERT 126 | VK_F2, ID_EDIT_GOTO_PREV_BOOKMARK, VIRTKEY, SHIFT, NOINVERT 127 | VK_F3, ID_EDIT_REPEAT, VIRTKEY, NOINVERT 128 | VK_F3, ID_EDIT_FIND_PREVIOUS, VIRTKEY, SHIFT, NOINVERT 129 | VK_HOME, ID_EDIT_HOME, VIRTKEY, NOINVERT 130 | VK_HOME, ID_EDIT_TEXT_BEGIN, VIRTKEY, CONTROL, NOINVERT 131 | VK_HOME, ID_EDIT_EXT_HOME, VIRTKEY, SHIFT, NOINVERT 132 | VK_HOME, ID_EDIT_EXT_TEXT_BEGIN, VIRTKEY, SHIFT, CONTROL, 133 | NOINVERT 134 | VK_INSERT, ID_EDIT_SWITCH_OVRMODE, VIRTKEY, NOINVERT 135 | VK_INSERT, ID_EDIT_COPY, VIRTKEY, CONTROL, NOINVERT 136 | VK_INSERT, ID_EDIT_PASTE, VIRTKEY, SHIFT, NOINVERT 137 | VK_LEFT, ID_EDIT_CHAR_LEFT, VIRTKEY, NOINVERT 138 | VK_LEFT, ID_EDIT_WORD_LEFT, VIRTKEY, CONTROL, NOINVERT 139 | VK_LEFT, ID_EDIT_EXT_CHAR_LEFT, VIRTKEY, SHIFT, NOINVERT 140 | VK_LEFT, ID_EDIT_EXT_WORD_LEFT, VIRTKEY, SHIFT, CONTROL, 141 | NOINVERT 142 | VK_NEXT, ID_EDIT_PAGE_DOWN, VIRTKEY, NOINVERT 143 | VK_NEXT, ID_EDIT_EXT_PAGE_DOWN, VIRTKEY, SHIFT, NOINVERT 144 | VK_PRIOR, ID_EDIT_PAGE_UP, VIRTKEY, NOINVERT 145 | VK_PRIOR, ID_EDIT_EXT_PAGE_UP, VIRTKEY, SHIFT, NOINVERT 146 | VK_RIGHT, ID_EDIT_CHAR_RIGHT, VIRTKEY, NOINVERT 147 | VK_RIGHT, ID_EDIT_WORD_RIGHT, VIRTKEY, CONTROL, NOINVERT 148 | VK_RIGHT, ID_EDIT_EXT_CHAR_RIGHT, VIRTKEY, SHIFT, NOINVERT 149 | VK_RIGHT, ID_EDIT_EXT_WORD_RIGHT, VIRTKEY, SHIFT, CONTROL, 150 | NOINVERT 151 | VK_TAB, ID_EDIT_TAB, VIRTKEY, NOINVERT 152 | VK_TAB, ID_EDIT_UNTAB, VIRTKEY, SHIFT, NOINVERT 153 | VK_UP, ID_EDIT_LINE_UP, VIRTKEY, NOINVERT 154 | VK_UP, ID_EDIT_SCROLL_UP, VIRTKEY, CONTROL, NOINVERT 155 | VK_UP, ID_EDIT_EXT_LINE_UP, VIRTKEY, SHIFT, NOINVERT 156 | "X", ID_EDIT_CUT, VIRTKEY, CONTROL, NOINVERT 157 | "Y", ID_EDIT_REDO, VIRTKEY, CONTROL, NOINVERT 158 | "Z", ID_EDIT_UNDO, VIRTKEY, CONTROL, NOINVERT 159 | END 160 | -------------------------------------------------------------------------------- /exe2c_gui/exe2c_gui.001: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c_gui/exe2c_gui.001 -------------------------------------------------------------------------------- /exe2c_gui/exe2c_gui.bakvpj: -------------------------------------------------------------------------------- 1 | 2 | 8 | 12 | 13 | 14 | 15 | 16 | 22 | 23 | 24 | 30 | 31 | 32 | 38 | 39 | 40 | 44 | 45 | 46 | 50 | 51 | 52 | 58 | 59 | 60 | 61 | 62 | 66 | 67 | 68 | 69 | 70 | 76 | 77 | 78 | 84 | 85 | 86 | 92 | 93 | 94 | 98 | 99 | 100 | 104 | 105 | 106 | 112 | 113 | 114 | 115 | 116 | 117 | -------------------------------------------------------------------------------- /exe2c_gui/exe2c_gui.bakvpw: -------------------------------------------------------------------------------- 1 | Microsoft Developer Studio Workspace File, Format Version 6.00 2 | # WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE! 3 | 4 | ############################################################################### 5 | 6 | Project: "Sample"=".\Sample.dsp" - Package Owner=<4> 7 | 8 | Package=<5> 9 | {{{ 10 | }}} 11 | 12 | Package=<4> 13 | {{{ 14 | }}} 15 | 16 | ############################################################################### 17 | 18 | Global: 19 | 20 | Package=<5> 21 | {{{ 22 | }}} 23 | 24 | Package=<3> 25 | {{{ 26 | }}} 27 | 28 | ############################################################################### 29 | 30 | -------------------------------------------------------------------------------- /exe2c_gui/exe2c_gui.cpp: -------------------------------------------------------------------------------- 1 | // Sample.cpp : Defines the class behaviors for the application. 2 | // 3 | 4 | #include "stdafx.h" 5 | #include "editcmd.h" 6 | #include "exe2c_gui.h" 7 | 8 | #include "MainFrm.h" 9 | #include "ChildFrm.h" 10 | #include "SampleDoc.h" 11 | #include "SampleView.h" 12 | 13 | 14 | #ifdef _DEBUG 15 | #define new DEBUG_NEW 16 | #undef THIS_FILE 17 | static char THIS_FILE[] = __FILE__; 18 | #endif 19 | 20 | ///////////////////////////////////////////////////////////////////////////// 21 | // CSampleApp 22 | 23 | BEGIN_MESSAGE_MAP(CSampleApp, CWinApp) 24 | //{{AFX_MSG_MAP(CSampleApp) 25 | ON_COMMAND(ID_APP_ABOUT, OnAppAbout) 26 | // NOTE - the ClassWizard will add and remove mapping macros here. 27 | // DO NOT EDIT what you see in these blocks of generated code! 28 | //}}AFX_MSG_MAP 29 | // Standard file based document commands 30 | ON_COMMAND(ID_FILE_NEW, CWinApp::OnFileNew) 31 | ON_COMMAND(ID_FILE_OPEN, CWinApp::OnFileOpen) 32 | // Standard print setup command 33 | ON_COMMAND(ID_FILE_PRINT_SETUP, CWinApp::OnFilePrintSetup) 34 | END_MESSAGE_MAP() 35 | 36 | ///////////////////////////////////////////////////////////////////////////// 37 | // CSampleApp construction 38 | 39 | CSampleApp::CSampleApp() 40 | { 41 | // TODO: add construction code here, 42 | // Place all significant initialization in InitInstance 43 | } 44 | 45 | ///////////////////////////////////////////////////////////////////////////// 46 | // The one and only CSampleApp object 47 | 48 | CSampleApp theApp; 49 | 50 | ///////////////////////////////////////////////////////////////////////////// 51 | // CSampleApp initialization 52 | 53 | BOOL CSampleApp::InitInstance() 54 | { 55 | // Standard initialization 56 | // If you are not using these features and wish to reduce the size 57 | // of your final executable, you should remove from the following 58 | // the specific initialization routines you do not need. 59 | 60 | // initialized OLE 2.0 libraries 61 | if (!AfxOleInit()) 62 | { 63 | AfxMessageBox(IDS_OLE_INIT_FAILED); 64 | return FALSE; 65 | } 66 | 67 | #ifdef _AFXDLL 68 | Enable3dControls(); // Call this when using MFC in a shared DLL 69 | #else 70 | Enable3dControlsStatic(); // Call this when linking to MFC statically 71 | #endif 72 | 73 | // Change the registry key under which our settings are stored. 74 | // You should modify this string to be something appropriate 75 | // such as the name of your company or organization. 76 | SetRegistryKey(_T("Local AppWizard-Generated Applications")); 77 | 78 | LoadStdProfileSettings(); // Load standard INI file options (including MRU) 79 | 80 | // Register the application's document templates. Document templates 81 | // serve as the connection between documents, frame windows and views. 82 | // pDoctemp2 = new CMultiDocTemplate( 83 | // IDR_VIEW2_TMP, 84 | // RUNTIME_CLASS(CDoc2), // document class 85 | // RUNTIME_CLASS(CChildFrame2), // frame class 86 | // RUNTIME_CLASS(CView2)); // view class 87 | // AddDocTemplate(pDoctemp2); 88 | 89 | pDoctemp1 = new CMultiDocTemplate( 90 | IDR_SAMPLETYPE, 91 | RUNTIME_CLASS(CSampleDoc), 92 | RUNTIME_CLASS(CChildFrame), // custom MDI child frame 93 | RUNTIME_CLASS(CSampleView)); 94 | AddDocTemplate(pDoctemp1); 95 | 96 | // create main MDI Frame window 97 | CMainFrame* pMainFrame = new CMainFrame; 98 | if (!pMainFrame->LoadFrame(IDR_MAINFRAME)) 99 | return FALSE; 100 | m_pMainWnd = pMainFrame; 101 | 102 | // Enable drag/drop open 103 | // m_pMainWnd->DragAcceptFiles(); 104 | 105 | // Enable DDE Execute open 106 | // EnableShellOpen(); 107 | // RegisterShellFileTypes(TRUE); 108 | 109 | // Parse command line for standard shell commands, DDE, file open 110 | CCommandLineInfo cmdInfo; 111 | ParseCommandLine(cmdInfo); 112 | 113 | //if(cmdInfo.m_strFileName == "") 114 | // cmdInfo.m_nShellCommand = CCommandLineInfo::FileNothing; 115 | 116 | 117 | // Dispatch commands specified on the command line 118 | if (!ProcessShellCommand(cmdInfo)) 119 | return FALSE; 120 | 121 | // The main window has been initialized, so show and update it. 122 | pMainFrame->ShowWindow(SW_SHOWMAXIMIZED); 123 | pMainFrame->UpdateWindow(); 124 | 125 | return TRUE; 126 | } 127 | 128 | ///////////////////////////////////////////////////////////////////////////// 129 | // CAboutDlg dialog used for App About 130 | 131 | class CAboutDlg : public CDialog 132 | { 133 | public: 134 | CAboutDlg(); 135 | 136 | // Dialog Data 137 | //{{AFX_DATA(CAboutDlg) 138 | enum { IDD = IDD_ABOUTBOX }; 139 | //}}AFX_DATA 140 | 141 | // ClassWizard generated virtual function overrides 142 | //{{AFX_VIRTUAL(CAboutDlg) 143 | protected: 144 | virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support 145 | //}}AFX_VIRTUAL 146 | 147 | // Implementation 148 | protected: 149 | //{{AFX_MSG(CAboutDlg) 150 | // No message handlers 151 | //}}AFX_MSG 152 | DECLARE_MESSAGE_MAP() 153 | }; 154 | 155 | CAboutDlg::CAboutDlg() : CDialog(CAboutDlg::IDD) 156 | { 157 | //{{AFX_DATA_INIT(CAboutDlg) 158 | //}}AFX_DATA_INIT 159 | } 160 | 161 | void CAboutDlg::DoDataExchange(CDataExchange* pDX) 162 | { 163 | CDialog::DoDataExchange(pDX); 164 | //{{AFX_DATA_MAP(CAboutDlg) 165 | //}}AFX_DATA_MAP 166 | } 167 | 168 | BEGIN_MESSAGE_MAP(CAboutDlg, CDialog) 169 | //{{AFX_MSG_MAP(CAboutDlg) 170 | // No message handlers 171 | //}}AFX_MSG_MAP 172 | END_MESSAGE_MAP() 173 | 174 | // App command to run the dialog 175 | void CSampleApp::OnAppAbout() 176 | { 177 | CAboutDlg aboutDlg; 178 | aboutDlg.DoModal(); 179 | } 180 | 181 | ///////////////////////////////////////////////////////////////////////////// 182 | // CSampleApp commands 183 | -------------------------------------------------------------------------------- /exe2c_gui/exe2c_gui.dsp: -------------------------------------------------------------------------------- 1 | # Microsoft Developer Studio Project File - Name="exe2c_gui" - Package Owner=<4> 2 | # Microsoft Developer Studio Generated Build File, Format Version 6.00 3 | # ** DO NOT EDIT ** 4 | 5 | # TARGTYPE "Win32 (x86) Application" 0x0101 6 | 7 | CFG=exe2c_gui - Win32 Debug 8 | !MESSAGE This is not a valid makefile. To build this project using NMAKE, 9 | !MESSAGE use the Export Makefile command and run 10 | !MESSAGE 11 | !MESSAGE NMAKE /f "exe2c_gui.mak". 12 | !MESSAGE 13 | !MESSAGE You can specify a configuration when running NMAKE 14 | !MESSAGE by defining the macro CFG on the command line. For example: 15 | !MESSAGE 16 | !MESSAGE NMAKE /f "exe2c_gui.mak" CFG="exe2c_gui - Win32 Debug" 17 | !MESSAGE 18 | !MESSAGE Possible choices for configuration are: 19 | !MESSAGE 20 | !MESSAGE "exe2c_gui - Win32 Release" (based on "Win32 (x86) Application") 21 | !MESSAGE "exe2c_gui - Win32 Debug" (based on "Win32 (x86) Application") 22 | !MESSAGE 23 | 24 | # Begin Project 25 | # PROP AllowPerConfigDependencies 0 26 | # PROP Scc_ProjName "" 27 | # PROP Scc_LocalPath "" 28 | CPP=cl.exe 29 | MTL=midl.exe 30 | RSC=rc.exe 31 | 32 | !IF "$(CFG)" == "exe2c_gui - Win32 Release" 33 | 34 | # PROP BASE Use_MFC 6 35 | # PROP BASE Use_Debug_Libraries 0 36 | # PROP BASE Output_Dir "Release" 37 | # PROP BASE Intermediate_Dir "Release" 38 | # PROP BASE Target_Dir "" 39 | # PROP Use_MFC 6 40 | # PROP Use_Debug_Libraries 0 41 | # PROP Output_Dir "Release" 42 | # PROP Intermediate_Dir "Release" 43 | # PROP Ignore_Export_Lib 0 44 | # PROP Target_Dir "" 45 | # ADD BASE CPP /nologo /MD /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_AFXDLL" /Yu"stdafx.h" /FD /c 46 | # ADD CPP /nologo /MD /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_AFXDLL" /Yu"stdafx.h" /FD /c 47 | # ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /win32 48 | # ADD MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /win32 49 | # ADD BASE RSC /l 0x419 /d "NDEBUG" /d "_AFXDLL" 50 | # ADD RSC /l 0x419 /d "NDEBUG" /d "_AFXDLL" 51 | BSC32=bscmake.exe 52 | # ADD BASE BSC32 /nologo 53 | # ADD BSC32 /nologo 54 | LINK32=link.exe 55 | # ADD BASE LINK32 /nologo /subsystem:windows /machine:I386 56 | # ADD LINK32 /nologo /subsystem:windows /machine:I386 /out:"../BIN/exe2c_gui.exe" 57 | 58 | !ELSEIF "$(CFG)" == "exe2c_gui - Win32 Debug" 59 | 60 | # PROP BASE Use_MFC 6 61 | # PROP BASE Use_Debug_Libraries 1 62 | # PROP BASE Output_Dir "Debug" 63 | # PROP BASE Intermediate_Dir "Debug" 64 | # PROP BASE Target_Dir "" 65 | # PROP Use_MFC 6 66 | # PROP Use_Debug_Libraries 1 67 | # PROP Output_Dir "Debug" 68 | # PROP Intermediate_Dir "Debug" 69 | # PROP Ignore_Export_Lib 0 70 | # PROP Target_Dir "" 71 | # ADD BASE CPP /nologo /MDd /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_AFXDLL" /Yu"stdafx.h" /FD /c 72 | # ADD CPP /nologo /MDd /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_AFXDLL" /Yu"stdafx.h" /FD /c 73 | # ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /o "NUL" /win32 74 | # ADD MTL /nologo /D "_DEBUG" /mktyplib203 /o "NUL" /win32 75 | # ADD BASE RSC /l 0x419 /d "_DEBUG" /d "_AFXDLL" 76 | # ADD RSC /l 0x409 /d "_DEBUG" /d "_AFXDLL" 77 | BSC32=bscmake.exe 78 | # ADD BASE BSC32 /nologo 79 | # ADD BSC32 /nologo 80 | LINK32=link.exe 81 | # ADD BASE LINK32 /nologo /subsystem:windows /debug /machine:I386 /pdbtype:sept 82 | # ADD LINK32 /nologo /subsystem:windows /debug /machine:I386 /out:"../BIN/exe2c_gui.exe" /pdbtype:sept 83 | 84 | !ENDIF 85 | 86 | # Begin Target 87 | 88 | # Name "exe2c_gui - Win32 Release" 89 | # Name "exe2c_gui - Win32 Debug" 90 | # Begin Group "Source Files" 91 | 92 | # PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat" 93 | # Begin Source File 94 | 95 | SOURCE=.\ButtonBar.cpp 96 | # End Source File 97 | # Begin Source File 98 | 99 | SOURCE=.\Change.cpp 100 | # End Source File 101 | # Begin Source File 102 | 103 | SOURCE=.\ChildFrm.cpp 104 | # End Source File 105 | # Begin Source File 106 | 107 | SOURCE=..\exe2c\SRC\CMyString.cpp 108 | # End Source File 109 | # Begin Source File 110 | 111 | SOURCE=.\CommandDlg.cpp 112 | # End Source File 113 | # Begin Source File 114 | 115 | SOURCE=.\CoolTabCtrl.cpp 116 | # End Source File 117 | # Begin Source File 118 | 119 | SOURCE=.\cplusplus.cpp 120 | # End Source File 121 | # Begin Source File 122 | 123 | SOURCE=.\CRorEditView.cpp 124 | # End Source File 125 | # Begin Source File 126 | 127 | SOURCE=.\CRorTextBuffer.cpp 128 | # End Source File 129 | # Begin Source File 130 | 131 | SOURCE=.\CRorTextView.cpp 132 | # End Source File 133 | # Begin Source File 134 | 135 | SOURCE=.\CRorTextView2.cpp 136 | # End Source File 137 | # Begin Source File 138 | 139 | SOURCE=..\exe2c\SRC\CXmlList.cpp 140 | # End Source File 141 | # Begin Source File 142 | 143 | SOURCE=..\exe2c\SRC\CXmlPrt.cpp 144 | # End Source File 145 | # Begin Source File 146 | 147 | SOURCE=.\exe2c_gui.cpp 148 | # End Source File 149 | # Begin Source File 150 | 151 | SOURCE=.\exe2c_gui.rc 152 | # End Source File 153 | # Begin Source File 154 | 155 | SOURCE=.\Log.cpp 156 | # End Source File 157 | # Begin Source File 158 | 159 | SOURCE=.\MainFrm.cpp 160 | # End Source File 161 | # Begin Source File 162 | 163 | SOURCE=.\SampleDoc.cpp 164 | # End Source File 165 | # Begin Source File 166 | 167 | SOURCE=.\SampleView.cpp 168 | # End Source File 169 | # Begin Source File 170 | 171 | SOURCE=.\scbarg.cpp 172 | # End Source File 173 | # Begin Source File 174 | 175 | SOURCE=.\sizecbar.cpp 176 | # End Source File 177 | # Begin Source File 178 | 179 | SOURCE=.\StdAfx.cpp 180 | # ADD CPP /Yc"stdafx.h" 181 | # End Source File 182 | # Begin Source File 183 | 184 | SOURCE=.\ViewFunDlg.cpp 185 | # End Source File 186 | # Begin Source File 187 | 188 | SOURCE=..\exe2c\SRC\XmlType.cpp 189 | # End Source File 190 | # Begin Source File 191 | 192 | SOURCE=..\BIN\exe2c.lib 193 | # End Source File 194 | # End Group 195 | # Begin Group "Header Files" 196 | 197 | # PROP Default_Filter "h;hpp;hxx;hm;inl" 198 | # Begin Source File 199 | 200 | SOURCE=.\ButtonBar.h 201 | # End Source File 202 | # Begin Source File 203 | 204 | SOURCE=.\CEditReplaceDlg.h 205 | # End Source File 206 | # Begin Source File 207 | 208 | SOURCE=.\CFindTextDlg.h 209 | # End Source File 210 | # Begin Source File 211 | 212 | SOURCE=.\Change.h 213 | # End Source File 214 | # Begin Source File 215 | 216 | SOURCE=.\ChildFrm.h 217 | # End Source File 218 | # Begin Source File 219 | 220 | SOURCE=..\exe2c\SRC\CMyString.h 221 | # End Source File 222 | # Begin Source File 223 | 224 | SOURCE=.\CommandDlg.h 225 | # End Source File 226 | # Begin Source File 227 | 228 | SOURCE=.\CoolTabCtrl.h 229 | # End Source File 230 | # Begin Source File 231 | 232 | SOURCE=.\CRorEditView.h 233 | # End Source File 234 | # Begin Source File 235 | 236 | SOURCE=.\CRorEditView.inl 237 | # End Source File 238 | # Begin Source File 239 | 240 | SOURCE=.\CRorTextBuffer.h 241 | # End Source File 242 | # Begin Source File 243 | 244 | SOURCE=.\CRorTextBuffer.inl 245 | # End Source File 246 | # Begin Source File 247 | 248 | SOURCE=.\CRorTextView.h 249 | # End Source File 250 | # Begin Source File 251 | 252 | SOURCE=.\CRorTextView.inl 253 | # End Source File 254 | # Begin Source File 255 | 256 | SOURCE=..\exe2c\SRC\CXmlList.h 257 | # End Source File 258 | # Begin Source File 259 | 260 | SOURCE=..\exe2c\SRC\CXmlPrt.h 261 | # End Source File 262 | # Begin Source File 263 | 264 | SOURCE=.\editcmd.h 265 | # End Source File 266 | # Begin Source File 267 | 268 | SOURCE=..\exe2c\exe2c.H 269 | # End Source File 270 | # Begin Source File 271 | 272 | SOURCE=.\exe2c_gui.h 273 | # End Source File 274 | # Begin Source File 275 | 276 | SOURCE=.\Log.h 277 | # End Source File 278 | # Begin Source File 279 | 280 | SOURCE=.\MainFrm.h 281 | # End Source File 282 | # Begin Source File 283 | 284 | SOURCE=.\MyLog.h 285 | # End Source File 286 | # Begin Source File 287 | 288 | SOURCE=.\Resource.h 289 | # End Source File 290 | # Begin Source File 291 | 292 | SOURCE=.\SampleDoc.h 293 | # End Source File 294 | # Begin Source File 295 | 296 | SOURCE=.\SampleView.h 297 | # End Source File 298 | # Begin Source File 299 | 300 | SOURCE=.\scbarg.h 301 | # End Source File 302 | # Begin Source File 303 | 304 | SOURCE=.\sizecbar.h 305 | # End Source File 306 | # Begin Source File 307 | 308 | SOURCE=.\StdAfx.h 309 | # End Source File 310 | # Begin Source File 311 | 312 | SOURCE=.\ViewFunDlg.h 313 | # End Source File 314 | # Begin Source File 315 | 316 | SOURCE=..\exe2c\SRC\XMLTYPE.h 317 | # End Source File 318 | # End Group 319 | # Begin Group "Resource Files" 320 | 321 | # PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;cnt;rtf;gif;jpg;jpeg;jpe" 322 | # Begin Source File 323 | 324 | SOURCE=.\res\icon1.ico 325 | # End Source File 326 | # Begin Source File 327 | 328 | SOURCE=.\res\icon2.ico 329 | # End Source File 330 | # Begin Source File 331 | 332 | SOURCE=.\res\icon3.ico 333 | # End Source File 334 | # Begin Source File 335 | 336 | SOURCE=.\res\Sample.ico 337 | # End Source File 338 | # Begin Source File 339 | 340 | SOURCE=.\res\Sample.rc2 341 | # End Source File 342 | # Begin Source File 343 | 344 | SOURCE=.\res\SampleDoc.ico 345 | # End Source File 346 | # Begin Source File 347 | 348 | SOURCE=.\res\Toolbar.bmp 349 | # End Source File 350 | # End Group 351 | # Begin Source File 352 | 353 | SOURCE=.\ReadMe.txt 354 | # End Source File 355 | # End Target 356 | # End Project 357 | -------------------------------------------------------------------------------- /exe2c_gui/exe2c_gui.dsw: -------------------------------------------------------------------------------- 1 | Microsoft Developer Studio Workspace File, Format Version 6.00 2 | # WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE! 3 | 4 | ############################################################################### 5 | 6 | Project: "exe2c_gui"=".\exe2c_gui.dsp" - Package Owner=<4> 7 | 8 | Package=<5> 9 | {{{ 10 | }}} 11 | 12 | Package=<4> 13 | {{{ 14 | }}} 15 | 16 | ############################################################################### 17 | 18 | Global: 19 | 20 | Package=<5> 21 | {{{ 22 | }}} 23 | 24 | Package=<3> 25 | {{{ 26 | }}} 27 | 28 | ############################################################################### 29 | 30 | -------------------------------------------------------------------------------- /exe2c_gui/exe2c_gui.h: -------------------------------------------------------------------------------- 1 | // exe2c_gui.h : main header file for the SAMPLE application 2 | // 3 | 4 | #if !defined(AFX_SAMPLE__H) 5 | #define AFX_SAMPLE__H 6 | 7 | #if _MSC_VER >= 1000 8 | #pragma once 9 | #endif // _MSC_VER >= 1000 10 | 11 | #ifndef __AFXWIN_H__ 12 | #error include 'stdafx.h' before including this file for PCH 13 | #endif 14 | 15 | #include "resource.h" // main symbols 16 | 17 | ///////////////////////////////////////////////////////////////////////////// 18 | // CSampleApp: 19 | // See Sample.cpp for the implementation of this class 20 | // 21 | 22 | class CSampleApp : public CWinApp 23 | { 24 | public: 25 | CSampleApp(); 26 | CMultiDocTemplate* pDoctemp1; 27 | CMultiDocTemplate* pDoctemp2; 28 | // Overrides 29 | // ClassWizard generated virtual function overrides 30 | //{{AFX_VIRTUAL(CSampleApp) 31 | public: 32 | virtual BOOL InitInstance(); 33 | //}}AFX_VIRTUAL 34 | 35 | // Implementation 36 | 37 | //{{AFX_MSG(CSampleApp) 38 | afx_msg void OnAppAbout(); 39 | // NOTE - the ClassWizard will add and remove member functions here. 40 | // DO NOT EDIT what you see in these blocks of generated code ! 41 | //}}AFX_MSG 42 | DECLARE_MESSAGE_MAP() 43 | }; 44 | 45 | 46 | ///////////////////////////////////////////////////////////////////////////// 47 | 48 | //{{AFX_INSERT_LOCATION}} 49 | // Microsoft Developer Studio will insert additional declarations immediately before the previous line. 50 | 51 | #endif // !defined(AFX_SAMPLE__H) 52 | -------------------------------------------------------------------------------- /exe2c_gui/exe2c_gui.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c_gui/exe2c_gui.ico -------------------------------------------------------------------------------- /exe2c_gui/exe2c_gui.plg: -------------------------------------------------------------------------------- 1 | 2 | 3 |
 4 | 

Build Log

5 |

6 | --------------------Configuration: exe2c_gui - Win32 Release-------------------- 7 |

8 |

Command Lines

9 | Creating temporary file "D:\DOCUME~1\lewton1\LOCALS~1\Temp\RSP1CE.tmp" with contents 10 | [ 11 | /nologo /subsystem:windows /incremental:no /pdb:"Release/exe2c_gui.pdb" /machine:I386 /out:"../BIN/exe2c_gui.exe" 12 | .\Release\ButtonBar.obj 13 | .\Release\Change.obj 14 | .\Release\ChildFrm.obj 15 | .\Release\CMyString.obj 16 | .\Release\CommandDlg.obj 17 | .\Release\CoolTabCtrl.obj 18 | .\Release\cplusplus.obj 19 | .\Release\CRorEditView.obj 20 | .\Release\CRorTextBuffer.obj 21 | .\Release\CRorTextView.obj 22 | .\Release\CRorTextView2.obj 23 | .\Release\CXmlList.obj 24 | .\Release\CXmlPrt.obj 25 | .\Release\exe2c_gui.obj 26 | .\Release\Log.obj 27 | .\Release\MainFrm.obj 28 | .\Release\SampleDoc.obj 29 | .\Release\SampleView.obj 30 | .\Release\scbarg.obj 31 | .\Release\sizecbar.obj 32 | .\Release\StdAfx.obj 33 | .\Release\ViewFunDlg.obj 34 | .\Release\XmlType.obj 35 | .\Release\exe2c_gui.res 36 | ..\BIN\exe2c.lib 37 | ] 38 | Creating command line "link.exe @D:\DOCUME~1\lewton1\LOCALS~1\Temp\RSP1CE.tmp" 39 |

Output Window

40 | Linking... 41 | 42 | 43 | 44 |

Results

45 | exe2c_gui.exe - 0 error(s), 0 warning(s) 46 |
47 | 48 | 49 | -------------------------------------------------------------------------------- /exe2c_gui/exe2c_gui.rc2: -------------------------------------------------------------------------------- 1 | // 2 | // SAMPLE.RC2 - resources Microsoft Visual C++ does not edit directly 3 | // 4 | 5 | #ifdef APSTUDIO_INVOKED 6 | #error this file is not editable by Microsoft Visual C++ 7 | #endif //APSTUDIO_INVOKED 8 | 9 | 10 | ///////////////////////////////////////////////////////////////////////////// 11 | // Add manually edited resources here... 12 | 13 | #include "editres.rc" 14 | 15 | ///////////////////////////////////////////////////////////////////////////// 16 | -------------------------------------------------------------------------------- /exe2c_gui/exe2c_gui.sln: -------------------------------------------------------------------------------- 1 | Microsoft Visual Studio Solution File, Format Version 7.00 2 | Global 3 | EndGlobal 4 | -------------------------------------------------------------------------------- /exe2c_gui/mg_cur.cur: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c_gui/mg_cur.cur -------------------------------------------------------------------------------- /exe2c_gui/mg_icons.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c_gui/mg_icons.bmp -------------------------------------------------------------------------------- /exe2c_gui/res/Sample.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c_gui/res/Sample.ico -------------------------------------------------------------------------------- /exe2c_gui/res/Sample.rc2: -------------------------------------------------------------------------------- 1 | // 2 | // SAMPLE.RC2 - resources Microsoft Visual C++ does not edit directly 3 | // 4 | 5 | #ifdef APSTUDIO_INVOKED 6 | #error this file is not editable by Microsoft Visual C++ 7 | #endif //APSTUDIO_INVOKED 8 | 9 | 10 | ///////////////////////////////////////////////////////////////////////////// 11 | // Add manually edited resources here... 12 | 13 | #include "editres.rc" 14 | 15 | ///////////////////////////////////////////////////////////////////////////// 16 | -------------------------------------------------------------------------------- /exe2c_gui/res/SampleDoc.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c_gui/res/SampleDoc.ico -------------------------------------------------------------------------------- /exe2c_gui/res/Thumbs.db: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c_gui/res/Thumbs.db -------------------------------------------------------------------------------- /exe2c_gui/res/Toolbar.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c_gui/res/Toolbar.bmp -------------------------------------------------------------------------------- /exe2c_gui/res/bug.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c_gui/res/bug.bmp -------------------------------------------------------------------------------- /exe2c_gui/res/icon1.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c_gui/res/icon1.ico -------------------------------------------------------------------------------- /exe2c_gui/res/icon2.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c_gui/res/icon2.ico -------------------------------------------------------------------------------- /exe2c_gui/res/icon3.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c_gui/res/icon3.ico -------------------------------------------------------------------------------- /exe2c_gui/resource.h: -------------------------------------------------------------------------------- 1 | //{{NO_DEPENDENCIES}} 2 | // Microsoft Developer Studio generated include file. 3 | // Used by Sample.rc 4 | // 5 | #define IDD_ABOUTBOX 100 6 | #define IDD_DIALOGBAR3 103 7 | #define IDR_MAINFRAME 128 8 | #define IDR_SAMPLETYPE 129 9 | #define IDB_BITMAP1 130 10 | #define IDD_DIALOGBAR1 131 11 | #define IDD_DIALOGBAR2 132 12 | #define IDI_ICON1 133 13 | #define IDI_ICON2 134 14 | #define IDI_ICON3 135 15 | #define IDR_VIEW2_TMP 136 16 | #define IDD_DIALOG1 139 17 | #define IDD_DIALOG2 140 18 | #define IDD_DIALOG3 141 19 | #define IDD_DIALOG4 142 20 | #define IDD_COMMAND 143 21 | #define IDC_BUTTON1 1000 22 | #define IDC_BUTTON2 1001 23 | #define IDC_BUTTON3 1002 24 | #define IDC_LIST1 1004 25 | #define IDC_EDIT1 1007 26 | #define IDC_EDIT3 1011 27 | #define IDC_COMMAND 1014 28 | #define ID_DATE_TIME 32786 29 | #define ID_READ_ONLY 32795 30 | #define ID_EDIT_DISABLEBSATSOL 32796 31 | #define ID_EDIT_DISABLEDRAGANDDROP 32797 32 | #define ID_VIEW_FORM1 32800 33 | #define ID_VIEW_FORM2 32801 34 | #define ID_SHOWLEFTBAR 32802 35 | #define ID_OPTIM 32804 36 | #define ID_LOG2 32806 37 | #define IDD_VIEW_FUN 32808 38 | #define IDD_VIEW_COMMAND 32809 39 | #define ID_TEST 32810 40 | #define ID_EDIT_DELETE 37000 41 | #define IDS_OLE_INIT_FAILED 57608 42 | #define IDR_VIEW2_TMPL 61446 43 | #define IDC_MYTREECTRL 61447 44 | 45 | // Next default values for new objects 46 | // 47 | #ifdef APSTUDIO_INVOKED 48 | #ifndef APSTUDIO_READONLY_SYMBOLS 49 | #define _APS_3D_CONTROLS 1 50 | #define _APS_NEXT_RESOURCE_VALUE 145 51 | #define _APS_NEXT_COMMAND_VALUE 32811 52 | #define _APS_NEXT_CONTROL_VALUE 1015 53 | #define _APS_NEXT_SYMED_VALUE 101 54 | #endif 55 | #endif 56 | -------------------------------------------------------------------------------- /exe2c_gui/scbarg.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c_gui/scbarg.cpp -------------------------------------------------------------------------------- /exe2c_gui/scbarg.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/exe2c_gui/scbarg.h -------------------------------------------------------------------------------- /exe2c_gui/sizecbar.h: -------------------------------------------------------------------------------- 1 | 2 | #if !defined(__SIZECBAR_H__) 3 | #define __SIZECBAR_H__ 4 | 5 | #include // for CDockContext 6 | #include // for CTypedPtrArray 7 | 8 | #if _MSC_VER >= 1000 9 | #pragma once 10 | #endif // _MSC_VER >= 1000 11 | 12 | 13 | #if defined(_SCB_MINIFRAME_CAPTION) && !defined(_SCB_REPLACE_MINIFRAME) 14 | #error "_SCB_MINIFRAME_CAPTION requires _SCB_REPLACE_MINIFRAME" 15 | #endif 16 | 17 | ///////////////////////////////////////////////////////////////////////// 18 | // CSCBDockBar dummy class for access to protected members 19 | 20 | class CSCBDockBar : public CDockBar 21 | { 22 | friend class CSizingControlBar; 23 | }; 24 | 25 | ///////////////////////////////////////////////////////////////////////// 26 | // CSizingControlBar control bar styles 27 | 28 | #define SCBS_EDGELEFT 0x00000001 29 | #define SCBS_EDGERIGHT 0x00000002 30 | #define SCBS_EDGETOP 0x00000004 31 | #define SCBS_EDGEBOTTOM 0x00000008 32 | #define SCBS_EDGEALL 0x0000000F 33 | #define SCBS_SHOWEDGES 0x00000010 34 | #define SCBS_SIZECHILD 0x00000020 35 | 36 | ///////////////////////////////////////////////////////////////////////// 37 | // CSizingControlBar control bar 38 | 39 | #ifndef baseCSizingControlBar 40 | #define baseCSizingControlBar CControlBar 41 | #endif 42 | 43 | class CSizingControlBar; 44 | typedef CTypedPtrArray CSCBArray; 45 | 46 | class CSizingControlBar : public baseCSizingControlBar 47 | { 48 | DECLARE_DYNAMIC(CSizingControlBar); 49 | 50 | // Construction 51 | public: 52 | CSizingControlBar(); 53 | 54 | virtual BOOL Create(LPCTSTR lpszWindowName, CWnd* pParentWnd, 55 | CSize sizeDefault, BOOL bHasGripper, 56 | UINT nID, DWORD dwStyle = WS_CHILD | WS_VISIBLE | CBRS_TOP); 57 | virtual BOOL Create(LPCTSTR lpszWindowName, CWnd* pParentWnd, 58 | UINT nID, DWORD dwStyle = WS_CHILD | WS_VISIBLE | CBRS_TOP); 59 | 60 | // Attributes 61 | public: 62 | const BOOL IsFloating() const; 63 | const BOOL IsHorzDocked() const; 64 | const BOOL IsVertDocked() const; 65 | const BOOL IsSideTracking() const; 66 | const BOOL GetSCBStyle() const {return m_dwSCBStyle;} 67 | 68 | // Operations 69 | public: 70 | #if defined(_SCB_REPLACE_MINIFRAME) && !defined(_SCB_MINIFRAME_CAPTION) 71 | void EnableDocking(DWORD dwDockStyle); 72 | #endif 73 | virtual void LoadState(LPCTSTR lpszProfileName); 74 | virtual void SaveState(LPCTSTR lpszProfileName); 75 | static void GlobalLoadState(CFrameWnd* pFrame, LPCTSTR lpszProfileName); 76 | static void GlobalSaveState(CFrameWnd* pFrame, LPCTSTR lpszProfileName); 77 | void SetSCBStyle(DWORD dwSCBStyle) 78 | {m_dwSCBStyle = (dwSCBStyle & ~SCBS_EDGEALL);} 79 | 80 | // Overridables 81 | virtual void OnUpdateCmdUI(CFrameWnd* pTarget, BOOL bDisableIfNoHndler); 82 | 83 | // Overrides 84 | public: 85 | // ClassWizard generated virtual function overrides 86 | //{{AFX_VIRTUAL(CSizingControlBar) 87 | public: 88 | virtual CSize CalcFixedLayout(BOOL bStretch, BOOL bHorz); 89 | virtual CSize CalcDynamicLayout(int nLength, DWORD dwMode); 90 | //}}AFX_VIRTUAL 91 | 92 | // Implementation 93 | public: 94 | virtual ~CSizingControlBar(); 95 | 96 | protected: 97 | // implementation helpers 98 | UINT GetEdgeHTCode(int nEdge); 99 | BOOL GetEdgeRect(CRect rcWnd, UINT nHitTest, CRect& rcEdge); 100 | virtual void StartTracking(UINT nHitTest, CPoint point); 101 | virtual void StopTracking(); 102 | virtual void OnTrackUpdateSize(CPoint& point); 103 | virtual void OnTrackInvertTracker(); 104 | virtual void NcPaintGripper(CDC* pDC, CRect rcClient); 105 | virtual void NcCalcClient(LPRECT pRc, UINT nDockBarID); 106 | 107 | virtual void AlignControlBars(); 108 | void GetRowInfo(int& nFirst, int& nLast, int& nThis); 109 | void GetRowSizingBars(CSCBArray& arrSCBars); 110 | void GetRowSizingBars(CSCBArray& arrSCBars, int& nThis); 111 | BOOL NegotiateSpace(int nLengthTotal, BOOL bHorz); 112 | 113 | protected: 114 | DWORD m_dwSCBStyle; 115 | UINT m_htEdge; 116 | 117 | CSize m_szHorz; 118 | CSize m_szVert; 119 | CSize m_szFloat; 120 | CSize m_szMinHorz; 121 | CSize m_szMinVert; 122 | CSize m_szMinFloat; 123 | int m_nTrackPosMin; 124 | int m_nTrackPosMax; 125 | int m_nTrackPosOld; 126 | int m_nTrackEdgeOfs; 127 | BOOL m_bTracking; 128 | BOOL m_bKeepSize; 129 | BOOL m_bParentSizing; 130 | BOOL m_bDragShowContent; 131 | UINT m_nDockBarID; 132 | int m_cxEdge; 133 | 134 | // Generated message map functions 135 | protected: 136 | //{{AFX_MSG(CSizingControlBar) 137 | afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct); 138 | afx_msg void OnNcPaint(); 139 | afx_msg void OnNcCalcSize(BOOL bCalcValidRects, NCCALCSIZE_PARAMS FAR* lpncsp); 140 | afx_msg UINT OnNcHitTest(CPoint point); 141 | afx_msg void OnCaptureChanged(CWnd *pWnd); 142 | afx_msg void OnSettingChange(UINT uFlags, LPCTSTR lpszSection); 143 | afx_msg void OnLButtonUp(UINT nFlags, CPoint point); 144 | afx_msg void OnMouseMove(UINT nFlags, CPoint point); 145 | afx_msg void OnNcLButtonDown(UINT nHitTest, CPoint point); 146 | afx_msg void OnLButtonDown(UINT nFlags, CPoint point); 147 | afx_msg void OnLButtonDblClk(UINT nFlags, CPoint point); 148 | afx_msg void OnRButtonDown(UINT nFlags, CPoint point); 149 | afx_msg void OnWindowPosChanging(WINDOWPOS FAR* lpwndpos); 150 | afx_msg void OnPaint(); 151 | afx_msg void OnClose(); 152 | afx_msg void OnSize(UINT nType, int cx, int cy); 153 | //}}AFX_MSG 154 | afx_msg LRESULT OnSetText(WPARAM wParam, LPARAM lParam); 155 | 156 | DECLARE_MESSAGE_MAP() 157 | 158 | #ifdef _SCB_REPLACE_MINIFRAME 159 | friend class CSCBMiniDockFrameWnd; 160 | #endif //_SCB_REPLACE_MINIFRAME 161 | }; 162 | 163 | #ifdef _SCB_REPLACE_MINIFRAME 164 | #ifndef _SCB_MINIFRAME_CAPTION 165 | ///////////////////////////////////////////////////////////////////////// 166 | // CSCBDockContext dockcontext 167 | 168 | class CSCBDockContext : public CDockContext 169 | { 170 | public: 171 | // Construction 172 | CSCBDockContext(CControlBar* pBar) : CDockContext(pBar) {} 173 | 174 | // Drag Operations 175 | virtual void StartDrag(CPoint pt); 176 | }; 177 | #endif //_SCB_MINIFRAME_CAPTION 178 | 179 | ///////////////////////////////////////////////////////////////////////// 180 | // CSCBMiniDockFrameWnd miniframe 181 | 182 | #ifndef baseCSCBMiniDockFrameWnd 183 | #define baseCSCBMiniDockFrameWnd CMiniDockFrameWnd 184 | #endif 185 | 186 | class CSCBMiniDockFrameWnd : public baseCSCBMiniDockFrameWnd 187 | { 188 | DECLARE_DYNCREATE(CSCBMiniDockFrameWnd) 189 | 190 | // Overrides 191 | // ClassWizard generated virtual function overrides 192 | //{{AFX_VIRTUAL(CSCBMiniDockFrameWnd) 193 | public: 194 | virtual BOOL Create(CWnd* pParent, DWORD dwBarStyle); 195 | //}}AFX_VIRTUAL 196 | 197 | // Implementation 198 | public: 199 | CSizingControlBar* GetSizingControlBar(); 200 | 201 | //{{AFX_MSG(CSCBMiniDockFrameWnd) 202 | afx_msg void OnNcLButtonDown(UINT nHitTest, CPoint point); 203 | afx_msg void OnGetMinMaxInfo(MINMAXINFO FAR* lpMMI); 204 | afx_msg void OnWindowPosChanging(WINDOWPOS FAR* lpwndpos); 205 | afx_msg void OnSize(UINT nType, int cx, int cy); 206 | //}}AFX_MSG 207 | DECLARE_MESSAGE_MAP() 208 | }; 209 | #endif //_SCB_REPLACE_MINIFRAME 210 | 211 | #endif // !defined(__SIZECBAR_H__) 212 | 213 | -------------------------------------------------------------------------------- /me.txt: -------------------------------------------------------------------------------- 1 | ExeToC Decompiler 2 | first release version. 3 | 4 | http://sourceforge.net/projects/exetoc 5 | 6 | How to compile: 7 | 8 | Compile with Microsoft Visual C++ 6.0 9 | load and build: 10 | exe2c\dll\exe2c.dsw 11 | exe2c_gui\exe2c_gui.dsw 12 | 13 | 14 | LiuTaoTao 15 | bookaa@rorsoft.com 16 | 2005.5.24 -------------------------------------------------------------------------------- /petest/ReadMe.txt: -------------------------------------------------------------------------------- 1 | ======================================================================== 2 | WIN32 APPLICATION : petest 3 | ======================================================================== 4 | 5 | 6 | AppWizard has created this petest application for you. 7 | 8 | This file contains a summary of what you will find in each of the files that 9 | make up your petest application. 10 | 11 | petest.cpp 12 | This is the main application source file. 13 | 14 | petest.dsp 15 | This file (the project file) contains information at the project level and 16 | is used to build a single project or subproject. Other users can share the 17 | project (.dsp) file, but they should export the makefiles locally. 18 | 19 | 20 | ///////////////////////////////////////////////////////////////////////////// 21 | AppWizard has created the following resources: 22 | 23 | petest.rc 24 | This is a listing of all of the Microsoft Windows resources that the 25 | program uses. It includes the icons, bitmaps, and cursors that are stored 26 | in the RES subdirectory. This file can be directly edited in Microsoft 27 | Visual C++. 28 | 29 | res\petest.ico 30 | This is an icon file, which is used as the application's icon (32x32). 31 | This icon is included by the main resource file petest.rc. 32 | 33 | small.ico 34 | %%This is an icon file, which contains a smaller version (16x16) 35 | of the application's icon. This icon is included by the main resource 36 | file petest.rc. 37 | 38 | ///////////////////////////////////////////////////////////////////////////// 39 | Other standard files: 40 | 41 | StdAfx.h, StdAfx.cpp 42 | These files are used to build a precompiled header (PCH) file 43 | named petest.pch and a precompiled types file named StdAfx.obj. 44 | 45 | Resource.h 46 | This is the standard header file, which defines new resource IDs. 47 | Microsoft Visual C++ reads and updates this file. 48 | 49 | ///////////////////////////////////////////////////////////////////////////// 50 | Other notes: 51 | 52 | AppWizard uses "TODO:" to indicate parts of the source code you 53 | should add to or customize. 54 | 55 | 56 | ///////////////////////////////////////////////////////////////////////////// 57 | -------------------------------------------------------------------------------- /petest/StdAfx.cpp: -------------------------------------------------------------------------------- 1 | // stdafx.cpp : source file that includes just the standard includes 2 | // petest.pch will be the pre-compiled header 3 | // stdafx.obj will contain the pre-compiled type information 4 | 5 | #include "stdafx.h" 6 | 7 | // TODO: reference any additional headers you need in STDAFX.H 8 | // and not in this file 9 | -------------------------------------------------------------------------------- /petest/StdAfx.h: -------------------------------------------------------------------------------- 1 | // stdafx.h : include file for standard system include files, 2 | // or project specific include files that are used frequently, but 3 | // are changed infrequently 4 | // 5 | 6 | #if !defined(AFX_STDAFX_H__A9DB83DB_A9FD_11D0_BFD1_444553540000__INCLUDED_) 7 | #define AFX_STDAFX_H__A9DB83DB_A9FD_11D0_BFD1_444553540000__INCLUDED_ 8 | 9 | #if _MSC_VER > 1000 10 | #pragma once 11 | #endif // _MSC_VER > 1000 12 | 13 | #define WIN32_LEAN_AND_MEAN // Exclude rarely-used stuff from Windows headers 14 | 15 | 16 | // Windows Header Files: 17 | #include 18 | 19 | // C RunTime Header Files 20 | #include 21 | #include 22 | #include 23 | #include 24 | 25 | // Local Header Files 26 | 27 | // TODO: reference additional headers your program requires here 28 | 29 | //{{AFX_INSERT_LOCATION}} 30 | // Microsoft Visual C++ will insert additional declarations immediately before the previous line. 31 | 32 | #endif // !defined(AFX_STDAFX_H__A9DB83DB_A9FD_11D0_BFD1_444553540000__INCLUDED_) 33 | -------------------------------------------------------------------------------- /petest/petest.cpp: -------------------------------------------------------------------------------- 1 | // petest.cpp : Defines the entry point for the application. 2 | // 3 | 4 | #include "stdafx.h" 5 | #include 6 | #include "resource.h" 7 | #include "test_class.h" 8 | //---------------------------------------- 9 | void test_class() 10 | { 11 | CTest1 *pTst = new CTest1; 12 | pTst->func1(); 13 | pTst->func1(); 14 | pTst->func1(); 15 | } 16 | //---------------------------------------- 17 | void test_printf() 18 | { 19 | printf("hello %d and %d", 3, 4); 20 | } 21 | //---------------------------------------- 22 | int test_api() 23 | { 24 | Sleep(100); 25 | ShowWindow(NULL,1); 26 | return 88; 27 | } 28 | //---------------------------------------- 29 | struct st_TestStruc 30 | { 31 | int m1; 32 | int m2; 33 | int m3; 34 | }; 35 | int test_Struc1(st_TestStruc* p) 36 | { 37 | return p->m1 * 2 + p->m2 * 3 + p->m3; 38 | } 39 | void test_Struc2(st_TestStruc* p) 40 | { 41 | p->m1 = 9; 42 | p->m3 = 8; 43 | p->m2 = 7; 44 | } 45 | 46 | int test_Struc() 47 | { 48 | st_TestStruc st; 49 | st.m1 = 2; 50 | st.m2 = 3; 51 | st.m3 = 1; 52 | test_Struc2(&st); 53 | return test_Struc1(&st); 54 | } 55 | //---------------------------------------- 56 | void __stdcall nop3(int i); 57 | int test_switch_case(int i) 58 | { 59 | int n = 0; 60 | switch(i) 61 | { 62 | case 1: n+= 2; break; 63 | case 2: n+= 5; break; 64 | case 4: n+= 9; break; 65 | default: n+=6; break; 66 | } 67 | //nop3(n*(n+3)); 68 | //nop3(n*(n+3)); 69 | //nop3(n*(n+3)); 70 | return n; 71 | } 72 | //---------------------------------------- 73 | int nop1(int i) 74 | { 75 | return i+2; 76 | } 77 | int nop2(int i1, int i2) 78 | { 79 | return i1+i2+3; 80 | } 81 | int g_int; 82 | void __stdcall nop3(int i) 83 | { 84 | g_int = i; 85 | } 86 | int ttest_main() 87 | { 88 | int i1 = nop1(1); 89 | nop3(i1); 90 | int i2 = nop2(2,3); 91 | nop3(i2); 92 | int i3 = nop1(4); 93 | nop3(i3); 94 | int i4 = nop2(5,6); 95 | return i1+i3+7; 96 | } 97 | int test_main1() 98 | { 99 | for(int i = 0; i< 100; i++) 100 | { 101 | nop3(i); 102 | for(int j=0; j < 22; j++) 103 | { 104 | nop3(nop2(i,j)); 105 | } 106 | } 107 | return 5; 108 | } 109 | int test_Array(int arg[6][6]) 110 | { 111 | for (int i =1; i< 6; i++) 112 | { 113 | for(int j = 1; j < 6; j++) 114 | { 115 | arg[i-1][j] = i+j; 116 | } 117 | } 118 | return 9; 119 | } 120 | int test_main() 121 | { 122 | // test_class(); 123 | // return 0; 124 | test_printf(); 125 | return 0; 126 | test_api(); 127 | return 0; 128 | //----------- 129 | //nop3(test_switch_case(9)); 130 | //return 0; 131 | //----------- 132 | nop3(test_Struc()); 133 | return 0; 134 | //----------- 135 | int buf[6][6]; 136 | return test_Array(buf); 137 | } 138 | //---------------------------------------- 139 | 140 | #define MAX_LOADSTRING 100 141 | 142 | // Global Variables: 143 | HINSTANCE hInst; // current instance 144 | TCHAR szTitle[MAX_LOADSTRING]; // The title bar text 145 | TCHAR szWindowClass[MAX_LOADSTRING]; // The title bar text 146 | 147 | // Foward declarations of functions included in this code module: 148 | ATOM MyRegisterClass(HINSTANCE hInstance); 149 | BOOL InitInstance(HINSTANCE, int); 150 | LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM); 151 | LRESULT CALLBACK About(HWND, UINT, WPARAM, LPARAM); 152 | 153 | int APIENTRY WinMain(HINSTANCE hInstance, 154 | HINSTANCE hPrevInstance, 155 | LPSTR lpCmdLine, 156 | int nCmdShow) 157 | { 158 | Sleep(test_main()); 159 | /* 160 | Sleep(test_main()/1000); 161 | .text:0040102A mov ecx, eax 162 | .text:0040102C mov eax, 10624DD3h 163 | .text:00401031 imul ecx 164 | .text:00401033 sar edx, 6 165 | .text:00401036 mov eax, edx 166 | .text:00401038 shr eax, 1Fh 167 | .text:0040103B add edx, eax 168 | .text:0040103D push edx ; dwMilliseconds 169 | .text:0040103E call ds:Sleep 170 | 171 | 172 | Sleep(test_main()/10000); 173 | .text:0040102A 024 mov ecx, eax 174 | .text:0040102C 024 mov eax, 68DB8BADh 175 | .text:00401031 024 imul ecx 176 | .text:00401033 024 sar edx, 0Ch 177 | .text:00401036 024 mov eax, edx 178 | .text:00401038 024 shr eax, 1Fh 179 | .text:0040103B 024 add edx, eax 180 | .text:0040103D 024 push edx ; dwMilliseconds 181 | .text:0040103E 028 call ds:Sleep 182 | 183 | */ 184 | 185 | // TODO: Place code here. 186 | MSG msg; 187 | HACCEL hAccelTable; 188 | 189 | // Initialize global strings 190 | LoadString(hInstance, IDS_APP_TITLE, szTitle, MAX_LOADSTRING); 191 | LoadString(hInstance, IDC_PETEST, szWindowClass, MAX_LOADSTRING); 192 | MyRegisterClass(hInstance); 193 | 194 | // Perform application initialization: 195 | if (!InitInstance (hInstance, nCmdShow)) 196 | { 197 | return FALSE; 198 | } 199 | 200 | hAccelTable = LoadAccelerators(hInstance, (LPCTSTR)IDC_PETEST); 201 | 202 | // Main message loop: 203 | while (GetMessage(&msg, NULL, 0, 0)) 204 | { 205 | if (!TranslateAccelerator(msg.hwnd, hAccelTable, &msg)) 206 | { 207 | TranslateMessage(&msg); 208 | DispatchMessage(&msg); 209 | } 210 | } 211 | 212 | return msg.wParam; 213 | } 214 | 215 | 216 | 217 | // 218 | // FUNCTION: MyRegisterClass() 219 | // 220 | // PURPOSE: Registers the window class. 221 | // 222 | // COMMENTS: 223 | // 224 | // This function and its usage is only necessary if you want this code 225 | // to be compatible with Win32 systems prior to the 'RegisterClassEx' 226 | // function that was added to Windows 95. It is important to call this function 227 | // so that the application will get 'well formed' small icons associated 228 | // with it. 229 | // 230 | ATOM MyRegisterClass(HINSTANCE hInstance) 231 | { 232 | WNDCLASSEX wcex; 233 | 234 | wcex.cbSize = sizeof(WNDCLASSEX); 235 | 236 | wcex.style = CS_HREDRAW | CS_VREDRAW; 237 | wcex.lpfnWndProc = (WNDPROC)WndProc; 238 | wcex.cbClsExtra = 0; 239 | wcex.cbWndExtra = 0; 240 | wcex.hInstance = hInstance; 241 | wcex.hIcon = LoadIcon(hInstance, (LPCTSTR)IDI_PETEST); 242 | wcex.hCursor = LoadCursor(NULL, IDC_ARROW); 243 | wcex.hbrBackground = (HBRUSH)(COLOR_WINDOW+1); 244 | wcex.lpszMenuName = (LPCSTR)IDC_PETEST; 245 | wcex.lpszClassName = szWindowClass; 246 | wcex.hIconSm = LoadIcon(wcex.hInstance, (LPCTSTR)IDI_SMALL); 247 | 248 | return RegisterClassEx(&wcex); 249 | } 250 | 251 | // 252 | // FUNCTION: InitInstance(HANDLE, int) 253 | // 254 | // PURPOSE: Saves instance handle and creates main window 255 | // 256 | // COMMENTS: 257 | // 258 | // In this function, we save the instance handle in a global variable and 259 | // create and display the main program window. 260 | // 261 | BOOL InitInstance(HINSTANCE hInstance, int nCmdShow) 262 | { 263 | HWND hWnd; 264 | 265 | hInst = hInstance; // Store instance handle in our global variable 266 | 267 | hWnd = CreateWindow(szWindowClass, szTitle, WS_OVERLAPPEDWINDOW, 268 | CW_USEDEFAULT, 0, CW_USEDEFAULT, 0, NULL, NULL, hInstance, NULL); 269 | 270 | if (!hWnd) 271 | { 272 | return FALSE; 273 | } 274 | 275 | ShowWindow(hWnd, nCmdShow); 276 | UpdateWindow(hWnd); 277 | 278 | return TRUE; 279 | } 280 | 281 | // 282 | // FUNCTION: WndProc(HWND, unsigned, WORD, LONG) 283 | // 284 | // PURPOSE: Processes messages for the main window. 285 | // 286 | // WM_COMMAND - process the application menu 287 | // WM_PAINT - Paint the main window 288 | // WM_DESTROY - post a quit message and return 289 | // 290 | // 291 | LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) 292 | { 293 | int wmId, wmEvent; 294 | PAINTSTRUCT ps; 295 | HDC hdc; 296 | TCHAR szHello[MAX_LOADSTRING]; 297 | LoadString(hInst, IDS_HELLO, szHello, MAX_LOADSTRING); 298 | 299 | switch (message) 300 | { 301 | case WM_COMMAND: 302 | wmId = LOWORD(wParam); 303 | wmEvent = HIWORD(wParam); 304 | // Parse the menu selections: 305 | switch (wmId) 306 | { 307 | case IDM_ABOUT: 308 | DialogBox(hInst, (LPCTSTR)IDD_ABOUTBOX, hWnd, (DLGPROC)About); 309 | break; 310 | case IDM_EXIT: 311 | DestroyWindow(hWnd); 312 | break; 313 | default: 314 | return DefWindowProc(hWnd, message, wParam, lParam); 315 | } 316 | break; 317 | case WM_PAINT: 318 | hdc = BeginPaint(hWnd, &ps); 319 | // TODO: Add any drawing code here... 320 | RECT rt; 321 | GetClientRect(hWnd, &rt); 322 | DrawText(hdc, szHello, strlen(szHello), &rt, DT_CENTER); 323 | EndPaint(hWnd, &ps); 324 | break; 325 | case WM_DESTROY: 326 | PostQuitMessage(0); 327 | break; 328 | default: 329 | return DefWindowProc(hWnd, message, wParam, lParam); 330 | } 331 | return 0; 332 | } 333 | 334 | // Mesage handler for about box. 335 | LRESULT CALLBACK About(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam) 336 | { 337 | switch (message) 338 | { 339 | case WM_INITDIALOG: 340 | return TRUE; 341 | 342 | case WM_COMMAND: 343 | if (LOWORD(wParam) == IDOK || LOWORD(wParam) == IDCANCEL) 344 | { 345 | EndDialog(hDlg, LOWORD(wParam)); 346 | return TRUE; 347 | } 348 | break; 349 | } 350 | return FALSE; 351 | } 352 | -------------------------------------------------------------------------------- /petest/petest.dsp: -------------------------------------------------------------------------------- 1 | # Microsoft Developer Studio Project File - Name="petest" - Package Owner=<4> 2 | # Microsoft Developer Studio Generated Build File, Format Version 6.00 3 | # ** DO NOT EDIT ** 4 | 5 | # TARGTYPE "Win32 (x86) Application" 0x0101 6 | 7 | CFG=petest - Win32 Debug 8 | !MESSAGE This is not a valid makefile. To build this project using NMAKE, 9 | !MESSAGE use the Export Makefile command and run 10 | !MESSAGE 11 | !MESSAGE NMAKE /f "petest.mak". 12 | !MESSAGE 13 | !MESSAGE You can specify a configuration when running NMAKE 14 | !MESSAGE by defining the macro CFG on the command line. For example: 15 | !MESSAGE 16 | !MESSAGE NMAKE /f "petest.mak" CFG="petest - Win32 Debug" 17 | !MESSAGE 18 | !MESSAGE Possible choices for configuration are: 19 | !MESSAGE 20 | !MESSAGE "petest - Win32 Release" (based on "Win32 (x86) Application") 21 | !MESSAGE "petest - Win32 Debug" (based on "Win32 (x86) Application") 22 | !MESSAGE 23 | 24 | # Begin Project 25 | # PROP AllowPerConfigDependencies 0 26 | # PROP Scc_ProjName "" 27 | # PROP Scc_LocalPath "" 28 | CPP=cl.exe 29 | MTL=midl.exe 30 | RSC=rc.exe 31 | 32 | !IF "$(CFG)" == "petest - Win32 Release" 33 | 34 | # PROP BASE Use_MFC 0 35 | # PROP BASE Use_Debug_Libraries 0 36 | # PROP BASE Output_Dir "Release" 37 | # PROP BASE Intermediate_Dir "Release" 38 | # PROP BASE Target_Dir "" 39 | # PROP Use_MFC 0 40 | # PROP Use_Debug_Libraries 0 41 | # PROP Output_Dir "Release" 42 | # PROP Intermediate_Dir "Release" 43 | # PROP Ignore_Export_Lib 0 44 | # PROP Target_Dir "" 45 | # ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /YX /FD /c 46 | # ADD CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /YX /FD /c 47 | # ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /win32 48 | # ADD MTL /nologo /D "NDEBUG" /mktyplib203 /win32 49 | # ADD BASE RSC /l 0x804 /d "NDEBUG" 50 | # ADD RSC /l 0x804 /d "NDEBUG" 51 | BSC32=bscmake.exe 52 | # ADD BASE BSC32 /nologo 53 | # ADD BSC32 /nologo 54 | LINK32=link.exe 55 | # ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /machine:I386 56 | # ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /subsystem:windows /machine:I386 /out:"E:\work\work1_exe2c\exe2c_test\petest.exe" 57 | # SUBTRACT LINK32 /pdb:none 58 | 59 | !ELSEIF "$(CFG)" == "petest - Win32 Debug" 60 | 61 | # PROP BASE Use_MFC 0 62 | # PROP BASE Use_Debug_Libraries 1 63 | # PROP BASE Output_Dir "Debug" 64 | # PROP BASE Intermediate_Dir "Debug" 65 | # PROP BASE Target_Dir "" 66 | # PROP Use_MFC 0 67 | # PROP Use_Debug_Libraries 1 68 | # PROP Output_Dir "Debug" 69 | # PROP Intermediate_Dir "Debug" 70 | # PROP Ignore_Export_Lib 0 71 | # PROP Target_Dir "" 72 | # ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /YX /FD /GZ /c 73 | # ADD CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /YX /FD /GZ /c 74 | # ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /win32 75 | # ADD MTL /nologo /D "_DEBUG" /mktyplib203 /win32 76 | # ADD BASE RSC /l 0x804 /d "_DEBUG" 77 | # ADD RSC /l 0x804 /d "_DEBUG" 78 | BSC32=bscmake.exe 79 | # ADD BASE BSC32 /nologo 80 | # ADD BSC32 /nologo 81 | LINK32=link.exe 82 | # ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /debug /machine:I386 /pdbtype:sept 83 | # ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /debug /machine:I386 /pdbtype:sept 84 | 85 | !ENDIF 86 | 87 | # Begin Target 88 | 89 | # Name "petest - Win32 Release" 90 | # Name "petest - Win32 Debug" 91 | # Begin Group "Source Files" 92 | 93 | # PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat" 94 | # Begin Source File 95 | 96 | SOURCE=.\petest.cpp 97 | # End Source File 98 | # Begin Source File 99 | 100 | SOURCE=.\petest.rc 101 | # End Source File 102 | # Begin Source File 103 | 104 | SOURCE=.\StdAfx.cpp 105 | # End Source File 106 | # Begin Source File 107 | 108 | SOURCE=.\test_class.cpp 109 | # End Source File 110 | # Begin Source File 111 | 112 | SOURCE=.\test_class.h 113 | # End Source File 114 | # End Group 115 | # Begin Group "Header Files" 116 | 117 | # PROP Default_Filter "h;hpp;hxx;hm;inl" 118 | # Begin Source File 119 | 120 | SOURCE=.\petest.h 121 | # End Source File 122 | # Begin Source File 123 | 124 | SOURCE=.\resource.h 125 | # End Source File 126 | # Begin Source File 127 | 128 | SOURCE=.\StdAfx.h 129 | # End Source File 130 | # End Group 131 | # Begin Group "Resource Files" 132 | 133 | # PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe" 134 | # Begin Source File 135 | 136 | SOURCE=.\petest.ico 137 | # End Source File 138 | # Begin Source File 139 | 140 | SOURCE=.\small.ico 141 | # End Source File 142 | # End Group 143 | # Begin Source File 144 | 145 | SOURCE=.\ReadMe.txt 146 | # End Source File 147 | # End Target 148 | # End Project 149 | -------------------------------------------------------------------------------- /petest/petest.dsw: -------------------------------------------------------------------------------- 1 | Microsoft Developer Studio Workspace File, Format Version 6.00 2 | # WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE! 3 | 4 | ############################################################################### 5 | 6 | Project: "petest"=.\petest.dsp - Package Owner=<4> 7 | 8 | Package=<5> 9 | {{{ 10 | }}} 11 | 12 | Package=<4> 13 | {{{ 14 | }}} 15 | 16 | ############################################################################### 17 | 18 | Global: 19 | 20 | Package=<5> 21 | {{{ 22 | }}} 23 | 24 | Package=<3> 25 | {{{ 26 | }}} 27 | 28 | ############################################################################### 29 | 30 | -------------------------------------------------------------------------------- /petest/petest.h: -------------------------------------------------------------------------------- 1 | 2 | #if !defined(AFX_PETEST_H__53E62E68_CBF6_4F12_AA5E_1B76050D37A7__INCLUDED_) 3 | #define AFX_PETEST_H__53E62E68_CBF6_4F12_AA5E_1B76050D37A7__INCLUDED_ 4 | 5 | #if _MSC_VER > 1000 6 | #pragma once 7 | #endif // _MSC_VER > 1000 8 | 9 | #include "resource.h" 10 | 11 | 12 | #endif // !defined(AFX_PETEST_H__53E62E68_CBF6_4F12_AA5E_1B76050D37A7__INCLUDED_) 13 | -------------------------------------------------------------------------------- /petest/petest.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/petest/petest.ico -------------------------------------------------------------------------------- /petest/petest.plg: -------------------------------------------------------------------------------- 1 | 2 | 3 |
 4 | 

Build Log

5 |

6 | --------------------Configuration: petest - Win32 Release-------------------- 7 |

8 |

Command Lines

9 | Creating temporary file "D:\DOCUME~1\lewton1\LOCALS~1\Temp\RSP19C.tmp" with contents 10 | [ 11 | /nologo /ML /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /Fp"Release/petest.pch" /YX /Fo"Release/" /Fd"Release/" /FD /c 12 | "E:\work\work1_exe2c\exe2c_src\petest\petest.cpp" 13 | ] 14 | Creating command line "cl.exe @D:\DOCUME~1\lewton1\LOCALS~1\Temp\RSP19C.tmp" 15 | Creating temporary file "D:\DOCUME~1\lewton1\LOCALS~1\Temp\RSP19D.tmp" with contents 16 | [ 17 | kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /subsystem:windows /incremental:no /pdb:"Release/petest.pdb" /machine:I386 /out:"E:\work\work1_exe2c\exe2c_test\petest.exe" 18 | .\Release\petest.obj 19 | .\Release\StdAfx.obj 20 | .\Release\test_class.obj 21 | .\Release\petest.res 22 | ] 23 | Creating command line "link.exe @D:\DOCUME~1\lewton1\LOCALS~1\Temp\RSP19D.tmp" 24 |

Output Window

25 | Compiling... 26 | petest.cpp 27 | Linking... 28 | Microsoft (R) Incremental Linker Version 6.00.8447 29 | Copyright (C) Microsoft Corp 1992-1998. All rights reserved. 30 | 31 | kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /subsystem:windows /incremental:no "/pdb:Release/petest.pdb" /machine:I386 "/out:E:\work\work1_exe2c\exe2c_test\petest.exe" 32 | .\Release\petest.obj 33 | .\Release\StdAfx.obj 34 | .\Release\test_class.obj 35 | .\Release\petest.res 36 | 37 | 38 | 39 |

Results

40 | petest.exe - 0 error(s), 0 warning(s) 41 |
42 | 43 | 44 | -------------------------------------------------------------------------------- /petest/petest.rc: -------------------------------------------------------------------------------- 1 | //Microsoft Visual C++ generated resource script. 2 | // 3 | 4 | #include "resource.h" 5 | 6 | #define APSTUDIO_READONLY_SYMBOLS 7 | ///////////////////////////////////////////////////////////////////////////// 8 | // 9 | // Generated from the TEXTINCLUDE 2 resource. 10 | // 11 | #define APSTUDIO_HIDDEN_SYMBOLS 12 | #include "windows.h" 13 | #undef APSTUDIO_HIDDEN_SYMBOLS 14 | 15 | ///////////////////////////////////////////////////////////////////////////// 16 | #undef APSTUDIO_READONLY_SYMBOLS 17 | 18 | #if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_CHS) 19 | #ifdef _WIN32 20 | LANGUAGE 4, 2 21 | #pragma code_page(936) 22 | #endif //_WIN32 23 | 24 | ///////////////////////////////////////////////////////////////////////////// 25 | // 26 | // Icon 27 | // 28 | 29 | // Icon with lowest ID value placed first to ensure application icon 30 | // remains consistent on all systems. 31 | 32 | IDI_PETEST ICON DISCARDABLE "petest.ICO" 33 | IDI_SMALL ICON DISCARDABLE "SMALL.ICO" 34 | 35 | ///////////////////////////////////////////////////////////////////////////// 36 | // 37 | // Menu 38 | // 39 | 40 | IDC_PETEST MENU DISCARDABLE 41 | BEGIN 42 | POPUP "&File" 43 | BEGIN 44 | MENUITEM "E&xit", IDM_EXIT 45 | END 46 | POPUP "&Help" 47 | BEGIN 48 | MENUITEM "&About ...", IDM_ABOUT 49 | END 50 | END 51 | 52 | 53 | ///////////////////////////////////////////////////////////////////////////// 54 | // 55 | // Accelerator 56 | // 57 | 58 | IDC_PETEST ACCELERATORS MOVEABLE PURE 59 | BEGIN 60 | "?", IDM_ABOUT, ASCII, ALT 61 | "/", IDM_ABOUT, ASCII, ALT 62 | END 63 | 64 | 65 | ///////////////////////////////////////////////////////////////////////////// 66 | // 67 | // Dialog 68 | // 69 | 70 | IDD_ABOUTBOX DIALOG DISCARDABLE 22, 17, 230, 75 71 | STYLE DS_MODALFRAME | WS_CAPTION | WS_SYSMENU 72 | CAPTION "About" 73 | FONT 8, "System" 74 | BEGIN 75 | ICON IDI_PETEST,IDC_MYICON,14,9,16,16 76 | LTEXT "petest Version 1.0",IDC_STATIC,49,10,119,8,SS_NOPREFIX 77 | LTEXT "Copyright (C) 2005",IDC_STATIC,49,20,119,8 78 | DEFPUSHBUTTON "OK",IDOK,195,6,30,11,WS_GROUP 79 | END 80 | 81 | 82 | #ifdef APSTUDIO_INVOKED 83 | ///////////////////////////////////////////////////////////////////////////// 84 | // 85 | // TEXTINCLUDE 86 | // 87 | 88 | 89 | 2 TEXTINCLUDE DISCARDABLE 90 | BEGIN 91 | "#define APSTUDIO_HIDDEN_SYMBOLS\r\n" 92 | "#include ""windows.h""\r\n" 93 | "#undef APSTUDIO_HIDDEN_SYMBOLS\r\n" 94 | "#include ""resource.h""\r\n" 95 | "\0" 96 | END 97 | 98 | 3 TEXTINCLUDE DISCARDABLE 99 | BEGIN 100 | "\r\n" 101 | "\0" 102 | END 103 | 104 | #endif // APSTUDIO_INVOKED 105 | 106 | 107 | 108 | 109 | ///////////////////////////////////////////////////////////////////////////// 110 | // 111 | // String Table 112 | // 113 | 114 | STRINGTABLE DISCARDABLE 115 | BEGIN 116 | IDC_PETEST "PETEST" 117 | IDS_APP_TITLE "petest" 118 | IDS_HELLO "Hello World!" 119 | END 120 | 121 | #endif 122 | ///////////////////////////////////////////////////////////////////////////// 123 | 124 | 125 | 126 | #ifndef APSTUDIO_INVOKED 127 | ///////////////////////////////////////////////////////////////////////////// 128 | // 129 | // Generated from the TEXTINCLUDE 3 resource. 130 | // 131 | 132 | 133 | ///////////////////////////////////////////////////////////////////////////// 134 | #endif // not APSTUDIO_INVOKED 135 | 136 | -------------------------------------------------------------------------------- /petest/resource.h: -------------------------------------------------------------------------------- 1 | //{{NO_DEPENDENCIES}} 2 | // Microsoft Visual C++ generated include file. 3 | // Used by PETEST.RC 4 | // 5 | #define IDR_MAINFRAME 128 6 | #define IDD_PETEST_DIALOG 102 7 | #define IDD_ABOUTBOX 103 8 | #define IDS_APP_TITLE 103 9 | #define IDM_ABOUT 104 10 | #define IDM_EXIT 105 11 | #define IDS_HELLO 106 12 | #define IDI_PETEST 107 13 | #define IDI_SMALL 108 14 | #define IDC_PETEST 109 15 | #define IDC_MYICON 2 16 | #define IDC_STATIC -1 17 | // Next default values for new objects 18 | // 19 | #ifdef APSTUDIO_INVOKED 20 | #ifndef APSTUDIO_READONLY_SYMBOLS 21 | 22 | #define _APS_NEXT_RESOURCE_VALUE 129 23 | #define _APS_NEXT_COMMAND_VALUE 32771 24 | #define _APS_NEXT_CONTROL_VALUE 1000 25 | #define _APS_NEXT_SYMED_VALUE 110 26 | #endif 27 | #endif 28 | -------------------------------------------------------------------------------- /petest/small.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyrover/ExeToC-Decompiler/ef1321edea3c02d6e617854f493ef25f1d70cfce/petest/small.ico -------------------------------------------------------------------------------- /petest/test_class.cpp: -------------------------------------------------------------------------------- 1 | #include "stdafx.h" 2 | #include 3 | #include "test_class.h" 4 | 5 | CTest1::CTest1() 6 | { 7 | id1 = 80; 8 | id2 = new char[80]; 9 | strcpy(id2, "hello world"); 10 | } 11 | CTest1::~CTest1() 12 | { 13 | if (id2 != NULL) 14 | delete id2; 15 | } 16 | 17 | void CTest1::func1() 18 | { 19 | printf("test class %d %s\n", 20 | this->id1, 21 | this->id2); 22 | } -------------------------------------------------------------------------------- /petest/test_class.h: -------------------------------------------------------------------------------- 1 | 2 | class CTest1 3 | { 4 | private: //default for class is private 5 | protected: 6 | public: 7 | DWORD id1; 8 | char* id2; 9 | 10 | CTest1(); 11 | ~CTest1(); 12 | void func1(); 13 | }; 14 | --------------------------------------------------------------------------------