C++/CLI:链接器为win32函数提供"未解析的令牌"

Bin*_*ier 2 .net c++-cli visual-studio

伙计们,

我刚刚创建了我的第一个C++/CLI项目(Visual Studio 2008),它是一个库,允许我的C#app访问销售点计数打印机.

从C#exe调用时,我的库构建良好,并且简单的函数可以工作.

但是,只要我包含WinGDI调用(在这种情况下为DeleteObject),链接器就会抱怨"未解析的令牌"错误.

错误2错误LNK2028:未解析的令牌(0A000088)"extern"C"int __stdcall DeleteObject(void*)"(?DeleteObject @@ $$ J14YGHPAX @ Z)在函数"private:__ clrcall ReceiptPrinter :: Epson :: ~Epson"中引用void)"(?? 1Epson @ReceiptPrinter @@ $$ FA $ AAM @XZ)ReceiptPrinter.obj ReceiptPrinter

我在过去4年里没有做过任何严肃的C++,而且我对MS C++编译器的经验很少,因此我不知道我在链接器设置中寻找什么.

任何帮助都将得到很好的接受.

谢谢

dir*_*tly 6

额外的依赖是"NoInherit",当我看到"设置"下面时,有一个lib列表,gdi32.lib在列表中.我检查了"从父项目继承",它现在有效.德克,如果你把所有这些作为答案添加我会选择它并给你代表.

检查链接器命令行中是否存在Gdi32.lib("属性">"链接器">"CommandLine").

(你去了 - 你成功地吸引了我的自私,寻求灵魂的一部分;))