【发布时间】:2012-08-09 14:04:50
【问题描述】:
我正在尝试调用 WinAPI 函数DialogBox()。在Microsoft website 上,此函数被指定在 user32.dll 中。但是,当尝试通过将其声明为从 dll 导入的函数来导入此函数时,链接器告诉我它不存在。然后我尝试在 C:\Windows\System32\user32.dll 中使用依赖项walker 找到该函数,但该函数不存在。 (我可以在那里看到所有其他花哨的函数文字。)这可能是什么原因,我该如何解决这个问题?
我正在使用 D 编程语言。标准库中的 windows 模块不会在 WinAPI 中导入完整的函数集。因此,我有时不得不手动导入东西。
【问题讨论】:
-
您使用什么语言?如何导入 WinAPI 函数很大程度上取决于此,您没有提供任何信息。如果你正确地标记你的问题,它可以帮助你更快地得到答案。 (至少发布您尝试用于导入函数的代码。)
-
我正在使用 D 编程语言。但问题不是特定于语言的。我尝试使用“extern(Windows) INT_PTR DialogBoxA(HINSTANCE hInstance, LPCTSTR lpTemplate, HWND hWndParent, DLGPROC lpDialogFunc);”导入符号,但现在通过导入函数 DialogBoxParamA() 并编写 DialogBoxA() 解决了问题包装函数。
标签: winapi dllimport dialog user32