0

我编写了一个使用 xcopy (cmd.exe /Q /D /C xcopy "C:\_Depot\Tools\CAD\2009" "C:\Apps\CAD 2009" /E /K /R /Y ) 复制一些文件。

如果我通过双击运行 .exe,xcopy 操作每次都有效。

如果我通过双击 .exe 的快捷方式来运行 .exe,则 xcopy 仅在快捷方式与 .exe 位于同一文件夹中时才有效。

我尝试将当前目录设置为正在执行的程序集的文件夹,但这无济于事。

在我的所有测试中,快捷方式的“开始于:”值与 .exe 的文件夹相同。(这并不重要——我希望代码不管值如何都能正常工作。)

任何想法,人们?

4

2 回答 2

2

您的代码依赖于当前工作目录。重新格式化命令,使其不会。

或者,向我们展示您传递的 [args],我们会尽力提供帮助。

于 2010-05-30T03:30:45.533 回答
0

我解决了这个问题。我使用以管理员身份运行的 xplorer2 而不是 Windows 资源管理器。当我从 xplorer2 打开快捷方式时,复制操作有效。但是,当我从桌面打开它时,复制失败了。我首先从实际桌面打开快捷方式(失败),然后从 xplorer2 中的 C:\Users[username]\Desktop\(成功)来测试这一点。我的代码将文件复制到 Program Files 分支,如果没有管理权限,Windows 不允许这样做。对困惑感到抱歉。

于 2010-06-01T02:38:47.707 回答