├── 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 |
61 |
62 |
66 |
67 |
68 |
69 |
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 |
--------------------------------------------------------------------------------