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 ...
随机推荐
- HDU-3790最短路径问题,第十遍终于过了~
最短路径问题 Time Limit: 2000/1000 MS (J ...
- hihoCoder#1094 Lost in the City
原题地址 限时10s,所以不用考虑什么算法了,暴力吧 分别按照3x3视野的四个方向去地图上匹配,把符合的地点标记出来,最后统一按照从上到下,从左到右的顺序输出. 代码: #include <io ...
- 新装mvn建第一个项目报错org.apache.maven.plugins:maven-resources-plugin:2.6
1.第一次创建mvn项目会报maven-resources-plugin-2.6.jar错,原因是mvn无法自动下载这个jar包,多次删除这个目录下的C:\Users\Administrator\.m ...
- 常用生产环境的PHP安装参数
./configure --prefix=/usr/local/php5. --with-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/b ...
- webstrom设置代码缩进四个空格
言,今天在github上拉了一份代码,发现代码缩进是2个空格,不习惯.找到了解决方案. 一.File ---> Settings 搜索Code Style,取消勾选使用现文件的缩进方式,见下图. ...
- 显示锁ReentrantLock和Condition的使用
一.ReentrantLock (1).java.util.concurrent.locks包中的ReentrantLock就是重入锁,它实现了Lock接口,Lock加锁和解锁都是显示的.Reentr ...
- 洛谷——P1007 独木桥
P1007 独木桥 题目背景 战争已经进入到紧要时间.你是运输小队长,正在率领运输部队向前线运送物资.运输任务像做题一样的无聊.你希望找些刺激,于是命令你的士兵们到前方的一座独木桥上欣赏风景,而你留在 ...
- codevs——1742 爬楼梯
1742 爬楼梯 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 黄金 Gold 题解 题目描述 Description 小明家外面有一个长长的楼梯,共N阶.小明的 ...
- mysql转oracle注意事项
1.mysql中有自增长,oracle用新建sequence代替. 2.在实体类的id要指定相关的sequence @GeneratedValue(strategy=GenerationType.SE ...
- Serv-u 10.3 的图文安装教程及使用方法
现在很多windows服务器都是使用serv_u作为ftp服务器,一般情况下我们使用Serv-U FTP Server v6.4.0.6,这里以serv_u 10.3为例介绍下,方便需要的朋友 一 ...