- 积分
- 395
- 明经币
- 个
- 注册时间
- 2005-5-18
- 在线时间
- 小时
- 威望
-
- 金钱
- 个
- 贡献
-
- 激情
-
|
楼主 |
发表于 2005-5-19 11:26:00
|
显示全部楼层
以下是自动加载的方法
我是从以前的帖子复制过来的,希望对现在要用的人有用
需要说明的:是论坛以前发的东西,我只是复制一下,未做改动,原创者不要生气:
让你的ARX程序自动加载
void Regiter(LPCTSTR lpszMyAppName) { CString strKeyPos=::acrxProductKey()+CString(_T("\\AutodeskApps")); //下边函数的第一个参数:AcadApp::kOnCommandInvocation,是调用你的命令时自动加载 ::acrxRegisterApp(AcadApp::kOnCommandInvocation,lpszMyAppName,strKeyPos,2); CRegKey regKey; if(regKey.Create(HKEY_LOCAL_MACHINE,strKeyPos+_T("\\")+lpszMyAppName)==ERROR_SUCCESS) { CRegKey regSubKey; if(regSubKey.Create(regKey,_T("Commands"))==ERROR_SUCCESS) { regSubKey.SetValue("E:\\刘万辉程序相关\\VC源代码\\HMBDesigner\\Debug\\","ARXHMBDesigner.arx"); //一直加加到你的命令加完为止 regSubKey.Close(); } if(regSubKey.Create(regKey,_T("Loader"))==ERROR_SUCCESS) { regSubKey.SetValue(acedGetAppName(),_T("MODULE")); regSubKey.Close(); } if(regSubKey.Create(regKey,_T("Name"))==ERROR_SUCCESS) { regSubKey.SetValue(lpszMyAppName,lpszMyAppName); regSubKey.Close(); } regKey.Close(); } } //将上边那个函数放在AcRx::kInitAppMsg消息处,当然你的ARX至少要运行一次才行。 //----------------------------------------------------------------------------------------- |
|