找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 1019|回复: 12

[VBA程序]:如何在cad中运行可执行文件

[复制链接]
发表于 2002-5-23 08:38:49 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
我想在autocad2002中运行用fortran编写的可执行文件,可以用VBA实现吗?
请高手指教!
谢谢!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

已领礼包: 23个

财富等级: 恭喜发财

发表于 2002-5-23 08:42:31 | 显示全部楼层
你的程序是Windows平台上运行的PE程序吗?如果是,直接用:

(startapp " (path)//exefile.exe")

即可
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2002-5-23 08:47:15 | 显示全部楼层
谢谢!
autolisp我不懂,能用vba处理吗?
文件是fortran编写的quickwin应用程序。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2002-5-24 08:52:33 | 显示全部楼层
shell "path\fortran.exe" , VbNormalNoFocus
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 23个

财富等级: 恭喜发财

发表于 2002-5-24 09:21:58 | 显示全部楼层
最初由 tnt2 发布
[B]谢谢!
autolisp我不懂,能用vba处理吗?
文件是fortran编写的quickwin应用程序。 [/B]



你照抄上面的,把路径改为你的实际路径即可,无需弄懂VisualLISP的,就这么个小东西,这是最佳方法了,VBA台罗嗦了.
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2002-5-24 09:34:19 | 显示全部楼层
谢谢e2002,intercad
问题解决了!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2002-5-24 23:49:33 | 显示全部楼层
最初由 e2002 发布
[B]


你照抄上面的,把路径改为你的实际路径即可,无需弄懂VisualLISP的,就这么?.. [/B]


人家需要VBA解决方法,你提供了Vlisp方法,顺便还把VBA埋汰一下。
□□□□□□□□□□□□□□□□□□□□(奉斑竹之命,此处删除19字)
----------------------------------------------------------
呵呵,第一次采取引用,试试,老弟别生气。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 23个

财富等级: 恭喜发财

发表于 2002-5-25 03:00:00 | 显示全部楼层
我只是告诉他这个问题的最简单最直接有效的方法而已,并非答非所问.更不是要埋汰VBA.,...

走捷径有什么不好吗?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2002-5-25 03:20:09 | 显示全部楼层
很多问题不是孤立的。例如,可能用VBA进行数据前处理,中间要调用一个现成的fortran程序计算。(奉斑竹暗谕,以下文字具有对名士e2002不恭之嫌,特删除)
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2002-5-25 10:08:07 | 显示全部楼层
如果vba 中可以调用winapi, 就可以用shellexecute(...)
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2002-5-25 10:19:28 | 显示全部楼层

  1. <body>

  2. <p>下面的 VBA 代码用记事本打开FileName文件。</p>
  3. <pre class="code"><font face="Courier New">Set WshShell = CreateObject(&quot;WScript.Shell&quot;)
  4. WshShell.<code><b class="cfe">Run </b></code>&quot;%windir%\notepad &quot; &amp; FileName</font></pre>
  5. <p>下面的 VBA
  6. 代码与上述代码完成的操作相同,不同之处在于,它指定窗口类型,等待用户关闭记事本,关闭记事本时保存从记事本返回的错误代码。</p>
  7. <pre class="code"><font face="Courier New">Set WshShell = CreateObject(&quot;WScript.Shell&quot;)
  8. Return = WshShell.Run(&quot;notepad &quot; &amp; FileName, 1, true)</font></pre>
  9. <div id="nsbanner">
  10.   <div id="TitleRow" style="PADDING-RIGHT: 10px; PADDING-LEFT: 22px; PADDING-BOTTOM: 0px; PADDING-TOP: 0px">
  11.     <h4><a name="wsmthrun"></a>Run 方法</h4>
  12.   </div>
  13. </div>
  14. <div class="sapop" onkeypress="ieKey" id="sapop" style="VISIBILITY: hidden">
  15.   <h4 class="dtH4">请参阅</h4>
  16.   <p><a href="mk:@MSITStore:E:\QiuFeng\wsh\Windows%20Script%20Host%205.6\WSH5.6手册\Script56.CHM::/html/wsobjwshshell.htm">WshShell
  17.   对象</a></p>
  18.   <!--Footer Start-->
  19. </div>
  20. <!--NONSCROLLING BANNER END-->
  21. <div id="nstext" valign="bottom">
  22.   <p>在新过程中运行程序。</p>
  23.   <pre class="syntax"><i><a class="synParam" onclick="showTip(this)" href>object</a></i><b>.Run</b>(<i><a class="synParam" onclick="showTip(this)" href>strCommand</a></i>, [<i><a class="synParam" onclick="showTip(this)" href>intWindowStyle</a></i>], [<i><a class="synParam" onclick="showTip(this)" href>bWaitOnReturn</a></i>]) </pre>
  24.   <div class="reftip" id="reftip" style="VISIBILITY: hidden; OVERFLOW: visible; POSITION: absolute">
  25.   </div>
  26.   <h5>参数</h5>
  27.   <dl>
  28.     <dt><i>object</i>
  29.     <dd>WshShell 对象。
  30.     <dt><i>strCommand</i>
  31.     <dd>表示要运行的命令行的字符串值。必须包括要传递到可执行文件的所有参数。
  32.     <dt><i>intWindowStyle</i>
  33.     <dd>可选。表示程序窗口外观的整数值。请注意,并非所有程序都使用此信息。
  34.     <dt><i>bWaitOnReturn</i>
  35.     <dd>可选。布尔值,表示在继续执行脚本中的下一条语句之前,脚本是否等待执行完程序。如果设为
  36.       true,则在执行完程序后才执行脚本,Run
  37.       方法返回由程序返回的任何错误代码。如果设为 false(默认值),则
  38.       Run 方法将自动在启动程序后立即返回 0(不是错误代码)。</dd>
  39.   </dl>
  40.   <h5>说明</h5>
  41.   <p>Run 方法返回一个整数。Run 方法启动在新 Windows
  42.   进程中运行的程序。可以让脚本等到程序执行完后再继续执行。这允许您同步运行脚本和程序。<i>strCommand</i>
  43.   参数内的环境变量自动扩展。如果某个文件类型已正确注册到某个程序中,则对该类型的文件调用
  44.   Run
  45.   方法时将执行该程序。例如,如果您的计算机系统中装有
  46.   Word,则对 *.doc 文件调用 Run 方法时将启动 Word
  47.   并加载该文档。下表列出了 <i>intWindowStyle</i> 的可用设置。</p>
  48.   <div class="tablediv">
  49.     <table class="dtTABLE" cellSpacing="0" border="1">
  50.       <tbody>
  51.         <tr vAlign="top">
  52.           <th width="23%">intWindowStyle</th>
  53.           <th width="77%">说明</th>
  54.         </tr>
  55.         <tr vAlign="top">
  56.           <td width="23%">0</td>
  57.           <td width="77%">隐藏一个窗口并激活另一个窗口。</td>
  58.         </tr>
  59.         <tr vAlign="top">
  60.           <td width="23%">1</td>
  61.           <td width="77%">激活并显示窗口。如果窗口处于最小化或最大化状态,则系统将其还原到原始大小和位置。第一次显示该窗口时,应用程序应指定此标志。</td>
  62.         </tr>
  63.         <tr vAlign="top">
  64.           <td width="23%">2</td>
  65.           <td width="77%">激活窗口并将其显示为最小化窗口。</td>
  66.         </tr>
  67.         <tr vAlign="top">
  68.           <td width="23%">3</td>
  69.           <td width="77%">激活窗口并将其显示为最大化窗口。</td>
  70.         </tr>
  71.         <tr vAlign="top">
  72.           <td width="23%">4</td>
  73.           <td width="77%">按最近的窗口大小和位置显示窗口。活动窗口保持活动状态。</td>
  74.         </tr>
  75.         <tr vAlign="top">
  76.           <td width="23%">5</td>
  77.           <td width="77%">激活窗口并按当前的大小和位置显示它。</td>
  78.         </tr>
  79.         <tr vAlign="top">
  80.           <td width="23%">6</td>
  81.           <td width="77%">最小化指定的窗口,并按照 Z
  82.             顺序激活下一个顶部窗口。</td>
  83.         </tr>
  84.         <tr vAlign="top">
  85.           <td width="23%">7</td>
  86.           <td width="77%">将窗口显示为最小化窗口。活动窗口保持活动状态。</td>
  87.         </tr>
  88.         <tr vAlign="top">
  89.           <td width="23%">8</td>
  90.           <td width="77%">将窗口显示为当前状态。活动窗口保持活动状态。</td>
  91.         </tr>
  92.         <tr vAlign="top">
  93.           <td width="23%">9</td>
  94.           <td width="77%">激活并显示窗口。如果窗口处于最小化或最大化状态,则系统将其还原到原始大小和位置。还原最小化窗口时,应用程序应指定此标志。</td>
  95.         </tr>
  96.         <tr vAlign="top">
  97.           <td width="23%">10</td>
  98.           <td width="77%">根据启动应用程序的程序状态来设置显示状态。</td>
  99.         </tr>
  100.       </tbody>
  101.     </table>
  102.   </div>
  103. </div>
  104. <p> </p>

  105. </body>
复制代码
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2002-5-25 10:30:20 | 显示全部楼层
由于上述方法是基于activex  的。
所以,在vlisp中也可以实现。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2002-5-25 10:41:55 | 显示全部楼层
VBA本身就有shell函数,何必动用API和WSH。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2024-12-23 05:44 , Processed in 0.472226 second(s), 53 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表