我正在用C/C++编写一个程序,该程序必须使用以下代码隐藏运行:

#define _WIN32_WINNT 0x0500
#include <windows.h>
int main(){
    HWND hWnd = GetConsoleWindow();
    ShowWindow(hWnd, SW_HIDE);
    . . .
}

我真的很想使用tinyc进行编译,因为它比gcc好得多(几乎,最终的可执行文件比gcc小得多)。
关键是当我尝试使用以下命令进行编译时:
tcc PROGRAM.c -luser32

它产生一个错误,指出:
tcc: error: undefined symbol '_GetConsoleWindow@0'

但是,当我使用gcc时,它可以工作!我想我错过了一个图书馆,但我不知道哪个图书馆。
请一些帮助:)

最佳答案

根据MSDNGetConsoleWindow位于Kernel32.dll

尝试:

tcc PROGRAM.c -luser32 -lkernel32

编辑:

tcc的kernel32.def缺少GetConsoleWindow的导出。

将字符串GetConsoleWindow附加在tcc安装文件夹内lib目录中def文件的末尾。

关于c++ - tcc : error: undefined symbol '_GetConsoleWindow@0' ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30243579/

10-12 20:53