2011-06-12 113 views
3

我從我的C#Windows窗體應用程序使用Application對象獲取啓動路徑並嘗試在控制檯應用程序中使用它。當我這樣做時,編譯器顯示如下錯誤信息 - 「名稱'Applicaiton'在當前上下文中不存在。做了一些研究並發現Application對象在System.Windows.Forms命名空間中。然後,嘗試使用System.Windows.Forms添加到文件的頂部,並得到一個新的錯誤消息 - 「命名空間'System'中不存在類型或命名空間名稱'Windows'(是否缺少程序集引用?)「。任何人都可以闡明如何從一個控制檯應用程序訪問Application對象一些輕?如何從控制檯應用程序訪問應用程序對象?

+0

感謝您的回答。事實證明,我將System.Windows.Forms命名空間的引用添加到了錯誤的項目中,這就是爲什麼它不能識別它。所以,對於麻煩和問題的解決感到抱歉。 – 2011-06-12 23:58:22

回答

6

System.Reflection.Assembly.GetExecutingAssembly()。位置

另外,目錄需要將呼叫包裝在System.IO.Path.GetDirectory()

+0

這有什麼關係? – 2011-06-12 23:57:05

+1

「獲取啓動路徑的應用程序對象」在控制檯應用程序中不使用應用程序對象,並且需要路徑,請使用上面的行 - 因此它是相關的 – 2011-06-12 23:58:24

0

您需要同時添加對System.Windows.Forms的引用(右鍵單擊References和'Add Reference ...')並在文件頂部添加 using System.Windows.Forms。 它爲我工作。

2

應用程序不可用於控制檯應用程序,它適用於Windows窗體。 您可以使用

Assembly.GetExecutingAssembly().CodeBase 
0

由丹尼斯Biondic提供的梅託德是去一個控制檯應用程序的正確方法。但在回答你的問題時,如果你在應用程序的引用中添加了對System.Windows的引用,你可以這樣做。當您選擇一個控制檯應用程序模板時,默認情況下不包含該引用,所以如果您需要該名稱空間中的成員,則必須添加對該dll的引用。