[求助]高手请进!
小弟现在遇到一个问题我现在在制作CAD外挂的安装程序,需要自动将autoCAD下的acad××doc.lsp文件用我自己编写的lsp程序覆盖,请问如何通过*.bat和VB得到解决?谢谢了,急!!!! 首先要知道ACAD的路径,再找到它,然后备份(不推荐直接覆盖),再拷贝自己的文件。
ACAD的路径获取,一是运行ACAD,然后根据它的属性来返回,二是查找注册表。 copy命令 或 copy方法 这个思路是不错,我想过程大概是这样的:先通过VB找到cad的AcadLocation键值,然后将lsp的文件名全路径表示出来,再通过VB的shell功能或者打开文件进行追加实现我的目的,请问能否提供VB的代码,我由于对VB和注册表的操作不熟悉,现在很急,只知道可以利用API实现这些东西,还望高手赐教,我的邮箱qijiun@etang.com,3ks a lot!! 现在我编出来一段了,你能否看看?
Private Sub Form_Load()
Form1.Hide
Dim Temp As String
Dim File(1) As String
Dim Ver As String
Dim Path(1) As String
Dim Nkeyhandle As Long, Nvaluetype As Long, Nlength As Long
Dim objFSO As FileSystemObject
Dim objText As TextStream
Path(0) = "HKEY_LOCAL_MACHINE\SOFTWARE\Autodesk\AutoCAD\R15.0"
Path(1) = "HKEY_LOCAL_MACHINE\SOFTWARE\Autodesk\AutoCAD\R16.0\ACAD-201:804"
Call RegOpenKey(Path(0), "curver", Nkeyhandle)
Call RegQueryValueEx(Nkeyhandle, "curver", 0, Nvaluetype, Ver, Nlength)
Path(0) = Path(0) + "\" + Ver
里边Call RegOpenKey里的path(0)有问题,不知道怎么能够解决呢:(因为项里边有点,所以不能直接拼写)
谢谢!! 用法有错误吧。RegOpenKey只能取到项值(相当于路径),"HKEY_LOCAL_MACHINE\SOFTWARE\Autodesk\AutoCAD\R15.0",而不能直接键值。有点类似于文件的操作,首先使用RegOpenKey打开目录,然后使用RegQueryvalueEx操作文件。
应该是:
Const HKEY_LOCAL_MACHINE = &H80000002
Call RegOpenKey(HKEY_LOCAL_MACHINE, "SOFTWARE\Autodesk\AutoCAD\R15.0", Nkeyhandle)
Call RegQueryvalueEx(Nkeyhandle, "curver", 0, Nvaluetype, Ver, Nlength) 嗯,现在知道怎么用了:)
谢谢!
页:
[1]