乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 100|回复: 8

AutoCAD 2016中的错误更改

[复制链接]

170

主题

1424

帖子

8

银币

顶梁支柱

Rank: 50Rank: 50

铜币
2119
发表于 2015-4-6 08:35:34 | 显示全部楼层 |阅读模式
AutoCAD版本更改了工作目录,如我所见...AutoCAD 2009-2015 不要这样做。
我的 BAT 和 SCR 文件使用
相对
路径进入自己的代码,因此现在(在 AutoCAD 2016 中)它们找不到必要的资源:scr、arg 和 dwg 文件,因为现在的工作目录与 BAT 文件所在的位置不同。
我不能使用绝对路径,因为我经常使用远程计算机(即输出路径不是本地目录)。如果我尝试计算一个完整的路径,那么它将有一些这样的路径:\\CompName\DirName\etc。我无法将此类路径写入我的 BAT abd SCR 文件中,因为它们位于远程计算机上,并且不知道此类路径。
例如,它适用于AutoCAD 2015:
  1. call "C:\Program Files\Autodesk\AutoCAD 2015\accoreconsole.exe" /s "..\NUnit\startup-2015.scr" /p "..\NUnit\acad_2015_and_newer_NUnit_testing_profile.arg"

但对于AutoCAD 2016,它不起作用:
  1. call "C:\Program Files\Autodesk\AutoCAD 2016\accoreconsole.exe" /s "..\NUnit\startup-2016.scr" /p "..\NUnit\acad_2015_and_newer_NUnit_testing_profile.arg"

AutoCAD 2016输出:
因此我的单元测试适用于AutoCAD 2009-2015,但不适用于AutoCAD 2016。
我可以获取BAT文件的当前目录:%~dp0,但是SCR文件呢(其代码使用单元测试加载托管DLL)?我的 BAT 和 SCR 文件由 msbuild 生成。
有人有解决这个问题的想法吗?

本帖以下内容被隐藏保护;需要你回复后,才能看到!

游客,如果您要查看本帖隐藏内容请回复
回复

使用道具 举报

15

主题

687

帖子

169

银币

中流砥柱

Rank: 25

铜币
582
发表于 2015-4-6 09:05:05 | 显示全部楼层
嗯......我发现了一个决定:SCR文件必须由BAT文件进行合并,而不是msbuild(就像我之前所做的那样)。在这种情况下,它可以为 SCR 文件命令写入绝对路径。
回复

使用道具 举报

170

主题

1424

帖子

8

银币

顶梁支柱

Rank: 50Rank: 50

铜币
2119
发表于 2015-6-12 12:55:54 | 显示全部楼层
安德烈对此表示感谢。
我复制了“调用”C:\ Program Files \ Autodesk \ AutoCAD 2016 \ accoreconsole . exe "/s "..\NUnit\startup-2016.scr" /p "..\ NUnit \ acad _ 2015 _ and _ newer _ NUnit _ testing _ profile . arg”(为我调整了一下)保存为. bat文件。现在显示“无效文件名”,我还需要什么吗?
回复

使用道具 举报

170

主题

1424

帖子

8

银币

顶梁支柱

Rank: 50Rank: 50

铜币
2119
发表于 2015-6-12 15:06:41 | 显示全部楼层
您将使用绝对路径而不是相对路径,正如我在上一条消息中所写的那样。因此,您需要在 BAT 文件中使用 %~dp0,即“%~dp0..\NUnit\startup-2015.scr“ 而不是 ”..\NUnit\startup-2015.scr”
回复

使用道具 举报

170

主题

1424

帖子

8

银币

顶梁支柱

Rank: 50Rank: 50

铜币
2119
发表于 2015-6-12 16:37:20 | 显示全部楼层
嗨,
您是否尝试将 LEGACYCODESEARCH  sys var设置为1?
回复

使用道具 举报

170

主题

1424

帖子

8

银币

顶梁支柱

Rank: 50Rank: 50

铜币
2119
发表于 2015-6-12 16:41:18 | 显示全部楼层
谢谢,不幸的是,在
调用"C:\Program Files\欧特克\AutoCAD 2016\accoreconsole.exe" /s"C:\User\me\Documents\Visual Studio 2012\Projects\GetThangs15.scr"之前我从未制作过bat文件。
上面是完整的路径。所以这就是我所需要的吗?我把它放在记事本中并保存为. bat
this is my.cproj.user
Program
C:\Program Files\欧特克\AutoCAD 2015\acad.exe
C:\用户\我\文档\Visual Studio 2012\Projects\
/p"Lex2015" /nologo /b"C:\用户\bwalmsley\文档\Visual Studio 2012\Projects\GetThangs15.scr"

C:\用户\我\文档\Visual Studio 2012\Projects\

ShowAllFiles

回复

使用道具 举报

15

主题

687

帖子

169

银币

中流砥柱

Rank: 25

铜币
582
发表于 2015-6-12 16:44:52 | 显示全部楼层
MCI Gile,我一直在拔头发。Tx
回复

使用道具 举报

170

主题

1424

帖子

8

银币

顶梁支柱

Rank: 50Rank: 50

铜币
2119
发表于 2015-6-15 03:23:46 | 显示全部楼层
布莱科,我不明白你最后的信息。您的问题解决了吗?
这是我的BAT文件的示例:
  1. echo _NETLOAD "%~dp0..\NUnit\ant_ut.R20.1.dll" _QUIT Y > "%~dp0..\NUnit\startup-2016.scr"
  2. call "C:\Program Files\Autodesk\AutoCAD 2016\acad.exe" /b "%~dp0..\NUnit\startup-2016.scr" /p "%~dp0..\NUnit\acad_2015_and_newer_NUnit_testing_profile.arg" /nologo
  3. IF "%1" == "" call "%~dp0..\NUnit\NUnitOrange.exe" "%~dp0..\reports\xml-reports\ant_ut.R20.1-NUnit.xml" "%~dp0..\reports\ant_ut.R20.1.html"

这个BAT文件是由msbuild生成的.exe根据我的CSPROJ文件的设置。
我不将此类文件用于我的AutoCAD .NET扩展名的C#项目。
回复

使用道具 举报

170

主题

1424

帖子

8

银币

顶梁支柱

Rank: 50Rank: 50

铜币
2119
发表于 2015-6-16 15:44:26 | 显示全部楼层
Tx Andrey,已经解决了,但是Tx对于bat文件信息,我会尝试一下
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-2-5 00:33 , Processed in 0.156913 second(s), 70 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表