|
大家都知道,用VC编译出来的HelloWorld也有几十KB,这样体积非常大,没有win32 汇编这么爽
下面的代码实现win32汇编的效果(体积小)
- //////////////////////////////////////////////////////////////////////////
-
- //脱离了VC runtime 不能使用C语言和C++的函数库;
-
- //在Release编译基础上修改;
-
- //缓冲区安全检查改成否 /GS-
-
- //代码生成 运行库 多线程DLL /MD
-
-
- #include <Windows.h>
-
- #pragma comment(linker,"/ENTRY:wWinMainCRTStartup") //更改入口点;
-
- #pragma comment(linker, "/nodefaultlib") //忽略所有默认库;
-
-
-
- //////////////////////////////////////////////////////////////////////////
-
- //用API实现的new和delete;
-
- void *operator new[] (unsigned int size)
-
- {
-
- return HeapAlloc (GetProcessHeap(),NULL,size);
-
- }
-
- void operator delete[] (void* memblock)
-
- {
-
- HeapFree (GetProcessHeap(),NULL,memblock);
-
- }
-
-
- class Fuck
-
- {
-
- public:
-
- int a;
-
- int c;
-
- void abc()
-
- {
-
- MessageBox(NULL,L"成员函数",L"测试",MB_OK);
-
- }
-
- };
-
-
-
- VOID WINAPI wWinMainCRTStartup(VOID)
-
- {
-
- Fuck * fuck = new Fuck[1];
-
- fuck->abc();
-
- delete []fuck;
-
- MessageBox(NULL,L"正常运行",L"哈哈",MB_OK);
-
- }
复制代码 |
|