2011-11-07 132 views
0

我在我的Visual Studio 2010项目得到这个连接错误:Windows Visual Studio中的ShellExecute()链接错误?

ASWHighScores.obj:错误LNK2019:在功能_ASWLaunchURL引用

int ASWLaunchURL(const char* url) 
{ 
    ShellExecute(NULL, "open", url, NULL, NULL, SW_SHOWNORMAL); 
    return 0; // noErr 
} 

为什么我会得到一个链接错误解析的外部符号_ShellExecute?谷歌搜索,没有出现。

我已验证SHELL32.LIB确实正在链接的是在Visual Studio 2010中的链接器 - >附加依赖设置。 (它自动是一个“继承的值”,但我也把它添加到自定义列表是肯定的。)

+0

*不*宣布自己这个功能,它的名字是不实际的ShellExecute。一定要'#包括'所以你得到正确的版本。 –

回答

0

尝试调用它ShellExecuteA。通常这种替换是由Microsoft头文件中定义的一个宏自动完成的,但也许你的设置有些缺失了。

+0

然后,为ShellExecuteA –

+0

ASWHighScores.obj生成链接错误:错误LNK2019:无法解析的外部符号_ShellExecuteA在函数_ASWLaunchURL –

+1

@VernJensen中引用,您必须缺少指定函数或库的包含文件头。没有别的可以解释它。 –