|
照着PRO/E WILDFIRE 4.0二次开发实例解析 王文波主编 清华大学出版社 这本书一步一步做,有两个链接错误。代码就几行,如下
#include "stdafx.h"
#include "yangli.h"
#include <ProMenu.h>
#include <ProMenuBar.h>
#include <ProUtil.h>
#include <ProToolkit.h>
static uiCmdAccessState AccessDefault (uiCmdAccessMode);
#ifdef _DEBUG
#define new DEBUG_NEW
#endif
// CyangliApp
BEGIN_MESSAGE_MAP(CyangliApp, CWinApp)
END_MESSAGE_MAP()
// CyangliApp 构造
CyangliApp::CyangliApp()
{
// TODO: 在此处添加构造代码,
// 将所有重要的初始化放置在 InitInstance 中
}
// 唯一的一个 CyangliApp 对象
CyangliApp theApp;
// CyangliApp 初始化
BOOL CyangliApp::InitInstance()
{
CWinApp::InitInstance();
return TRUE;
}
int messagebox()
{
AfxMessageBox(_T("第一个程序!")); //弹出一个消息框
return(0);
}
extern "C" int user_initialize() //初始化函数,任何同步模式都必须包含该函数
{
ProError status; //地位,状态
ProFileName message_file;
uiCmdCmdId cmd_id1;
ProFileName MsgFile;
ProStringToWstring(MsgFile, "Message2.txt");
status=ProMenubarMenuAdd ("CHECK", "CHECK","Utilities", PRO_B_TRUE, MsgFile);
status = ProCmdActionAdd("ShowTest1",(uiCmdCmdActFn)messagebox,uiCmdPrioDefault,AccessDefault,
PRO_B_TRUE,PRO_B_TRUE,&cmd_id1);
status = ProMenubarmenuPushbuttonAdd("CHECK", "messagebox", "messagebox",
"Active messagebox menu", NULL,PRO_B_TRUE, cmd_id1,
ProStringToWstring(message_file, "Message2.txt"));
return status;
}
extern "C" void user_terminate() //终止同步模式时调用
{
}
static uiCmdAccessState AccessDefault (uiCmdAccessMode access_mode)
{
return (ACCESS_AVAILABLE);
}
错误如下:
protk_dllmd.lib(srcwrappers.obj) : error LNK2019: 无法解析的外部符号 _NetRemoteTOD@8,该符号在函数 _NetRemoteTOD_thunk 中被引用
1>protk_dllmd.lib(srcwrappers.obj) : error LNK2019: 无法解析的外部符号 _NetApiBufferFree@4,该符号在函数 _NetApiBufferFree_thunk 中被引用
库文件和包含文件都设置好了,附加依赖项等如下:
附加依赖项
wsock32.lib
mpr.lib
psapi.lib
protk_dllmd.lib
prodev_dllmd.lib
忽略特定库
libcmtd
我是菜鸟,请各位高手指导,这问题困扰我很久了,劳烦说的详细些,谢谢了!! |
|