VBScript+SCR+NetApi+Accoreconsole 批处理dwg文件
继上次powershell运行accoreconsole(https://www.cnblogs.com/NanShengBlogs/p/10981687.html)的研究之后又觉得不是很合适,毕竟powershell还存在权限问题,不像vbs这么windows原生的的脚本好用。
脚本主要部分

Option Explicit
Dim acoreFn,fso
acoreFn=inputbox("输入AutoCAD的版本号","用户输入","")
if int(acoreFn)>= then
Set fso = CreateObject("Scripting.FileSystemObject")
if fso.FileExists("C:\Program Files\Autodesk\AutoCAD " & acoreFn & "\accoreconsole.exe") then
acoreFn=chr() & "C:\Program Files\Autodesk\AutoCAD " & acoreFn & "\accoreconsole.exe" &chr()
call AccoreCmdExecute("myScrFile.scr",acoreFn)
else
msgbox "请确认本机的autocad"& int(acoreFn) & "安装路径为:" & vbNewLine & "C:\Program Files\Autodesk\AutoCAD " & acoreFn & "",vbError+vbOKOnly
end if
else
msgbox "Accoreconsole.exe 程序从AutoCAD2013 开始支持!",vbError+vbOKOnly
end if
set fso=nothing
public sub AccoreCmdExecute(scrFileName,accoreconsoleFileName)
Dim objFSO,curFdName,fl,fd,WshShell,scrFile,args
Set objFSO = CreateObject("Scripting.FileSystemObject")
curFdName = objFSO.GetFile(WScript.ScriptFullName).ParentFolder
scrFile=" /s " & chr() & curFdName & "\" & scrFileName & chr()
set fd=objFSO.GetFolder(curFdName)
Set WshShell=Wscript.CreateObject("Wscript.Shell")
for each fl in fd.Files
if LCase(objFSO.GetExtensionName(fl))="dwg" then
if (objFSO.getfile(fl).Attributes and ) or CheckFileInuse(fl)=true then
msgbox fl.name & "是只读文件或者被打开,无法执行脚本命!"
else
args=" /i " & chr() & curFdName& "\" & fl.name & chr()
WshShell.run accoreconsoleFileName & args & scrFile,,false
msgbox fl.name & "执行完成!"
end if
end if
next
set fd=nothing
set objFSO=nothing
set WshShell=nothing
end sub
public function CheckFileInuse(fn)
dim fso,fl
Set fso = CreateObject("Scripting.FileSystemObject")
Set fl = fso.GetFile(fn)
ON ERROR RESUME NEXT
fl.move fl.path
if Err= then
CheckFileInuse=true
else
CheckFileInuse=false
end if
Set fso =nothing
Set fl = nothing
end function
执行命令的部分

检查文件名是否被打开。

VBScript+SCR+NetApi+Accoreconsole 批处理dwg文件的更多相关文章
- 高精度快速预览打开dwg文件的CAD控件CAD Image DLL介绍及下载
CAD Image DLL对于DXF格式, DWG格式(AutoCAD R12 到AutoCAD 2004/2005), PLT 以及 HPGL/HPGL2文件都有快速的显示速度和精度,开发者再也不会 ...
- 用.NET从外部dwg文件导入块
翻译并引自Kean's blog的两篇文章: http://through-the-interface.typepad.com/through_the_interface/2006/08/import ...
- SVN批处理更新文件夹
SVN批处理更新文件夹 "C:\Program Files\TortoiseSVN\bin\TortoiseProc.exe" /command:update /path:&quo ...
- C# 实现预览dwg文件完整源代码(无需autocad环境)
using System; using System.Drawing; using System.Collections; using System.ComponentModel; using Sys ...
- Java执行批处理.bat文件(有问题???求高手帮忙解答!!!)
Java执行批处理.bat文件(有问题???求高手帮忙解答!!!) 在项目开发中常常都会遇到需要在代码中调用批处理bat脚本,把自己在项目中遇到过的总结下 ...
- AutoCAD开发5--批量修改dwg文件
Dim files, path, filename path = ThisDrawing.Utility.GetString(True, "输入dwg文件所在路径:") 'dwg文 ...
- 无需AutoCAD,用C#生成DWG文件
是一个类库:Teigha.NET for .DWG 利用它就可以在无需安装AutoCAD软件的情况下,生成.读取DWG文件,适合那些导入导出的场合. Teigha曾用名OpenDWG .DWGdire ...
- 批量输出dwg文件中的文本
公司来了一批图纸,里面有一部分内容需要复制到excel中,几百张来图每一张都 手工复制,烦死了.编写一个CAD插件,自动导出文本,简单记录在下面. 想法是: 1.输入命令,选择所有dwg文件 2.挨个 ...
- 使用wblockCloneObjects从后台读取dwg文件复制实体到当前数据库
AcDbDatabase *pNewDb=new AcDbDatabase(Adesk::kFalse); if (pNewDb == NULL) { return; } Acad::ErrorSta ...
随机推荐
- myeclipse通过数据表生成jpa或hibernate实体---https://blog.csdn.net/partner4java/article/details/8560289
myeclipse通过数据表生成jpa或hibernate实体-----https://blog.csdn.net/partner4java/article/details/8560289
- [luoguP3390]【模板】矩阵快速幂
传送门 模板不解释. ——代码 #include <cstdio> #include <cstring> #define LL long long int n; LL k; ; ...
- [K/3Cloud] 代码中设置某个字段必录
Control ctl = this.GetControl(fieldKey); FieldEditor editCtl = ctl as FieldEditor; if (editCtl != nu ...
- Linux下汇编语言学习笔记33 ---
这是17年暑假学习Linux汇编语言的笔记记录,参考书目为清华大学出版社 Jeff Duntemann著 梁晓辉译<汇编语言基于Linux环境>的书,喜欢看原版书的同学可以看<Ass ...
- EditText实时监测内容
editText.addTextChangedListener(new TextWatcher() { @Override public void beforeTextChanged(CharSequ ...
- Codeforces Round #374 (Div. 2) C DAG上dp
C. Journey time limit per test 3 seconds memory limit per test 256 megabytes input standard input ou ...
- 【CV论文阅读】+【搬运工】LocNet: Improving Localization Accuracy for Object Detection + A Theoretical analysis of feature pooling in Visual Recognition
论文的关注点在于如何提高bounding box的定位,使用的是概率的预测形式,模型的基础是region proposal.论文提出一个locNet的深度网络,不在依赖于回归方程.论文中提到locne ...
- Windows上安装Mac OS
在windows上开发ios程序,是一件比較痛苦的事情.由于: 开发android程序,使用eclipse.eclipse有windows版同一时候也有mac版,所以mac上开发android程序和w ...
- 关于使用data()获取自定义属性出现undefined的说明
这应该是这个函数的一个bug,没有考虑到驼峰式的写法,当我写成驼峰式,即是有大小写的变量时就会出现没有定义的情况. 今天写个交互,需要用到自定义属性,因为这个自定义属性是当作字段用的,就直接用了字段名 ...
- oracle 11g GRID 中 关于 OLR 须要知道的一些内容
oracle 11g GRID 中 关于 OLR 须要知道的一些内容 1.检查olr 的状态: [root@vmrac1 ~]# ocrcheck -local Status of Oracle ...