|
oid inputvalue()
{
int res;
//输入一个整数
acedGetInt(采用T("输入一个整数:"),&res);
//显示
displayvalue(采用bstr采用t(res));acutPrintf(采用T("\n"));
/*采用bstr采用t bstrt(res);
ACHAR* tmp=cvOp.GetAcharPtr(bstrt);
acutPrintf(tmp);*/
//输入一个字符串
wchar采用t* str;
str=new wchar采用t[4000];
acedGetString(1,采用T("输入一个字符:"),str);
displayvalue(采用bstr采用t(str));
acutPrintf(采用T("\n"));
}
- // MyArxFirst.cpp : 定义 DLL 应用程序的导出函数。
- //ObjectArx开发对txt文本文件的操作一例
- #pragma once
-
- #include "stdafx.h"
- //
- #include "Convert.h"
- #include "fileSimpleClass.h"
- #include "dbSimpleClass.h"
-
-
- //定义两个函数
- void initApp();
- void unloadApp();
-
- //定义命令函数
- //------------------------------------------
- void hello();//打印"Hello world!"在AutoCAD Command上 的命令
- void pfvalue();//打印文件内容 的命令
- void pdbvalue();//ado连接数据库的方法 的命令
- void inputvalue(); //CAD交互操作的方法 的命令
- //------------------------------------------
-
- //定义CAD的实体点函数 这个函数是必须的
- extern "C"
- AcRx::AppRetCode
- acrxEntryPoint(AcRx::AppMsgCode msg, void* pkt)
- //void acrxEntryPoint(void* pkt)
- {
- switch (msg)
- {
- case AcRx::kInitAppMsg:
- acrxDynamicLinker->unlockApplication(pkt);
- acrxRegisterAppMDIAware(pkt);
- initApp();
- break;
- case AcRx::kUnloadAppMsg:
- unloadApp();
- break;
- default:
- break;
- }
- return AcRx::kRetOK;
- }
-
-
-
- void initApp()
- {
- //register a command with the AutoCAD command mechanism
- //string macro 用法:
- //采用T("helloworld") or 采用采用T("helloworld") or ACRX采用T("helloworld")
- acedRegCmds->addCommand(ACRX采用T("HELLOWORLD采用COMMANDS"),
- ACRX采用T("ArxHsgBag"),
- ACRX采用T("Hello"),
- ACRX采用CMD采用TRANSPARENT,
- hello);
- acedRegCmds->addCommand(ACRX采用T("PFVALUE采用COMMANDS"),
- ACRX采用T("ArxHsgBag"),
- ACRX采用T("pfvalue"),
- ACRX采用CMD采用TRANSPARENT,
- pfvalue);
- acedRegCmds->addCommand(ACRX采用T("PDBVALUE采用COMMANDS"),
- ACRX采用T("ArxHsgBag"),
- ACRX采用T("pdbvalue"),
- ACRX采用CMD采用TRANSPARENT,
- pdbvalue);
- acedRegCmds->addCommand(ACRX采用T("INPUTVALUE采用COMMANDS"),
- ACRX采用T("ArxHsgBag"),
- ACRX采用T("inputvalue"),
- ACRX采用CMD采用TRANSPARENT,
- inputvalue);
- //
- }
-
-
- void unloadApp()
- {
- acedRegCmds->removeGroup(ACRX采用T("HELLOWORLD采用COMMANDS"));
- acedRegCmds->removeGroup(ACRX采用T("PFVALUE采用COMMANDS"));
- acedRegCmds->removeGroup(ACRX采用T("PDBVALUE采用COMMANDS"));
- acedRegCmds->removeGroup(ACRX采用T("INPUTVALUE采用COMMANDS"));
- }
-
-
- //定义两个类变量
- fileSimpleClass fsc;
- dbSimpleClass dbsc;
- Convert cvOp;
- //----------------------------------------------------
- //实现命令函数
- void hello()//hello命令
- {
- acutPrintf(ACRX采用T("\n第一个Arx程序Hello World!"));
- }
-
- void pfvalue()//打印文件内容 命令
- {
- acutPrintf(采用T("开始输出文件内信息:\n"));
- const ACHAR* filepath=ACRX采用T("d:\\test.txt"); //OK
- acutPrintf(filepath); //OK
- fsc.pfvalue采用default(filepath); //OK
- fsc.pfvalue2(filepath); //OK
- }
-
- void pdbvalue()//输出数据库表内记录的命令
- {
- acutPrintf(采用T("开始输出数据库表内记录:\n"));
- //...
- acutPrintf(采用T("执行函数:pdbvalue采用mdb结果\n"));
- dbsc.pdbvalue采用mdb();
- acutPrintf(采用T("执行函数:pdbvalue采用mdb结果完毕!\n"));
- //
- acutPrintf(采用T("执行函数:pdbvalue采用mdb2结果\n"));
- dbsc.pdbvalue采用mdb2();
- acutPrintf(采用T("执行函数:pdbvalue采用mdb2结果完毕!\n"));
-
- dbsc.pdbvalue采用write();
- acutPrintf(采用T("执行函数:pdbvalue采用write完毕!\n"));
- }
- void displayvalue(采用bstr采用t bstrt)
- {
- ACHAR* tmp=cvOp.GetAcharPtr(bstrt);
- acutPrintf(tmp);
- }
-
- void inputvalue()
- {
- int res;
- //输入一个整数
- acedGetInt(采用T("输入一个整数:"),&res);
- //显示
- displayvalue(采用bstr采用t(res));acutPrintf(采用T("\n"));
- /*采用bstr采用t bstrt(res);
- ACHAR* tmp=cvOp.GetAcharPtr(bstrt);
- acutPrintf(tmp);*/
- //输入一个字符串
- ACHAR str;
- acedGetString(1,采用T("输入一个字符:"),&str);
- //displayvalue(采用bstr采用t(str));acutPrintf(采用T("\n"));
- }
- //----------------------------------------------------
复制代码 |
|