请教几个vb方面的问题
1.windows中有什么文件时每次启动都要读写的文件,我想通过获得这个文件的访问时间来获得系统真正的日期.2.acad vba中怎样创建鼠标右键菜单.vb中用"菜单编辑器"创建菜单来实现,vba中没有"菜单编辑器",该怎么做?
3.由于vb的dll编程时无法调试,我现在是在acad vba中调试,等全部调试通过后再把所有源程序用vb打开,再编译成dll.请问源文件需要做些什么修改?或者编dll有什么方法调试?
4.vb中如何获得acad的安装路径? 1、注册表的文件肯定会有读写的。是System.dat和User.dat。其实通过读取系统时间就行了。
2、右键菜单是通过菜单的shortcutMenu属性来判断,如果为True,那么它就是快捷菜单,快捷菜单只有一项。
3、DLL需要新建一个工程进行调试,也可以直接编写标准的工程,等完工之后再转化成ActiveX DLL。
VBA中编写之后转到VB,需要增加跟ACAD的接口部分,并把所有的ThisDrawing更改为自己的ActiveDocument对象。 1.win98,nt,2000,xp 下不一样吧,2000等好像没有这个文件.主要是要限制软件使用时间,读取系统时间容易被修改.
2.能不能详细点,cad帮助上关于menu的实在看不懂.能否给个源程序?
3."需要增加跟ACAD的接口部分"是什么意思,具体怎么改?在vba中我都是用activedocument.
4.在vb中获得acad安装路径?? 获取接口:getobject(,"autocad.application") mikewolf2k发表于2004-1-10 22:30:00static/image/common/back.gif1.win98,nt,2000,xp 下不一样吧,2000等好像没有这个文件.主要是要限制软件使用时间,读取系统时间容易被修改.
2.能不能详细点,cad帮助上关于menu的实在看不懂.能否给个源程序?
3."需要
对于1,系统时间更改了,那些文件的时间也变了,所以通过这个方法不可取,应该在每次运行时,判断前一次运行的时间,只能增大。
2、帮助中就有示例。
Dim currMenu As AcadPopupMenu
Dim menuStatus As String
menuStatus = ""
For Each currMenu In ThisDrawing.Application.MenuGroups.Item(0).Menus
If currMenu.shortcutMenu Then
menuStatus = menuStatus & currMenu.name & " is the shortcut menu." & vbCrLf
Else
menuStatus = menuStatus & currMenu.name & " is not the shortcut menu." & vbCrLf
End If
Next currMenu
MsgBox menuStatus
3、开人发员手册的介绍。
Sub Ch2_ConnectToAcad()
Dim acadApp As AcadApplication
On Error Resume Next
Set acadApp = GetObject(, "AutoCAD.Application")
If Err Then
Err.Clear
Set acadApp = CreateObject("AutoCAD.Application")
If Err Then
MsgBox Err.Description
Exit Sub
End If
End If
MsgBox "Now running " + acadApp.Name + _
" version " + acadApp.Version
End Sub
Dim acadDoc as AcadDocument
Set acadDoc = acadApp.ActiveDocument
4、安装路径一是通过注册表读取,二是使用Application的Path属性吧。 1.一般对付限制使用时间的软件,是运行该软件前把时间改到有效期内,软件运行完毕后再改回来.而始终把日期放到有效期内的好像不多.所以我想获得每次启动都读写的文件日期.
2.不知道怎样创建自己的右键菜单啊~~~
4.能否在详细些.我太菜啦.
谢谢谢谢谢谢!!! 再顶顶 4、安装路径一是通过注册表读取,二是使用Application的Path属性吧。
楼上的已经写得很详细了。
Public Sub AppPath()
MsgBox ThisDrawing.Application.path
End Sub
页:
[1]