我正在编写一个使用 Windows API 访问注册表项的程序。我正在尝试使用 TCC 编译我的程序,但它引发了关于我从 Windows API 调用的函数的“未定义符号”错误。我决定尝试用 GCC 再次编译它,它运行良好,完全没有问题。
我之前编写过使用 Windows API 的程序,并使用 TCC 完美地编译它们,但是每当我尝试编译与 Windows API 的注册表端有关的任何内容时,它都会返回“未定义符号”错误。
#include <stdio.h>
#include <Windows.h>
int main(int argc, char *argv[])
{
HKEY hkey = HKEY_LOCAL_MACHINE;
char key_name[] = "SOFTWARE\\7-zip";
HKEY key = NULL;
DWORD err = RegOpenKey(hkey, key_name, &key);
if (err != ERROR_SUCCESS)
{
printf("error opening key: %d\n", err);
}
else
{
printf("success");
}
}