2013-05-04 77 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