2013-05-04 76 views
-4

我遇到了一个奇怪的问题,只能通过命令行或快捷方式运行程序时出现差异。Windows快捷方式与命令行行为

有问题的应用程序是一个命令行C#程序,它从QuickBooks公司文件生成条形码。我已经设置了一个运行程序的快捷方式。如果我运行这个快捷方式,我的程序中会出现无法再现的奇怪错误。这些错误不是来自外部库。如果我通过命令行运行此快捷方式或直接从Program Files运行正确的命令行参数,它运行良好。

任何想法?我可以提供有关错误的更多信息,但它们必须处理程序的逻辑,而不是任何语法/空指针/对象引用错误。

+3

我们没有水晶球。 '我的程序中出现了不可重现的奇怪错误'并没有多大意义。 – I4V 2013-05-04 20:43:46

+0

有关错误的更多信息确实是必需的。当然,我建议打印出使用快捷方式时用来运行程序的命令,以验证命令是否与命令行相同。我可以猜到的唯一的其他潜在问题是权限错误,但正如所述,我们确实需要更多信息才能提供帮助。 – 2013-05-04 20:46:50

回答

1

有一点可以通过命令行或资源管理器启动进程,以快捷方式启动进程:“工作目录”。命令行或资源管理器将其设置为可执行文件的目录。在你的捷径中做同样的事情。

在您的程序中,您不应该依赖工作目录作为可执行文件的路径(对于配置文件,请重新输入a.s.o.)。而是在运行时确定正确的路径。

+0

我想这可能是一个评论。不过,我认为这是他的问题的答案,所以我选择不仅评论。 – JeffRSon 2013-05-04 22:17:33

+0

好的。我最近才开始积极参与SO,所以我需要获得更多的经验。 – JeffRSon 2013-05-04 22:26:45