爲了好玩,我想創建一個不依賴於CRT的(工作)可執行文件。這並不難讀了一些文章後,所以我看中了:如何手動導入Windows API函數?
/* test.c */
int main(){
return 0;
}
...
/* Compiling & Linking: */
cl /c /O2 /Ox /Os test.c
link /ENTRY:main /NODEFAULTLIB /SUBSYSTEM:WINDOWS /ALIGN:16 /ignore:4108 test.obj
到目前爲止好,但我希望能夠調用Windows API的功能。例如,我應該怎麼鏈接下面的代碼塊?:
#define UNICODE
#include <windows.h>
int main(){
MessageBox
(NULL, TEXT("Hello Stackoverflow!"), TEXT("Hello Stackoverflow"), MB_OK);
return 0;
}
我閱讀下面的文章,但未能拿出一個解決方案: Minicrt,Small Programs,Tiny PE,Techniques for reducing Executable size。
感謝提前:)
這個問題與放棄CRT無關,你仍然沒有這樣做。 – hamstergene