objectarx 之让用户自定义插件命令

#include <iostream>
#include <fstream>
virtual AcRx::AppRetCode On_kInitAppMsg (void *pkt) {
		// TODO: Load dependencies here

		// You *must* call On_kInitAppMsg here
		AcRx::AppRetCode retCode =AcRxArxApp::On_kInitAppMsg (pkt) ;
		
		// TODO: Add your initialization code here
		//读取记录命令的文本
		ifstream infile; 
		infile.open(L"自定义插件命令1.txt");
		
		string s;
		getline(infile,s);
		infile.close();

		TCHAR strNewCmdName[256];

            //如果没有内容,则加入一个默认命令
		if(s.empty()){
			acedRegCmds->addCommand(_T("CQiangToLiangApp"),L"ee",L"ee",ACRX_CMD_TRANSPARENT, ECDQiangToLiangee);
		}
		else{
                   //string zhuan TCHAR数组
			#ifdef UNICODE
			_stprintf_s(strNewCmdName, MAX_PATH, _T("%S"), s.c_str());//%S宽字符
			#else
			_stprintf_s(strNewCmdName, MAX_PATH, _T("%s"), s.c_str());//%s单字符
			#endif
			acedRegCmds->addCommand(_T("CQiangToLiangApp"),strNewCmdName,strNewCmdName,ACRX_CMD_TRANSPARENT, ECDQiangToLiangee);

		}
		return (retCode) ;
	}

 这个On_kInitAppMsg是appload插件的时候执行的方法,所以当加载插件之后,就会添加执行插件的命令。

猜你喜欢

转载自www.cnblogs.com/HelloQLQ/p/12752309.html