2011-07-06 43 views
5

Có một số bài đăng tương tự khác, nhưng tôi không thể xác định được một bài viết liên quan hoàn toàn đến vấn đề của mình.Lấy Thư mục Cài đặt của Ứng dụng đang chạy bằng C#

một cách đơn giản, nói tập tin ứng dụng exe của tôi nằm ở C:\MyApp\run.exe,

làm thế nào tôi có thể tìm thấy programatically tìm ra con đường C:\MyApp

Trả lời

4

Hai trong số các câu trả lời được đưa ra là chính xác, nhưng dựa vào việc sử dụng Windows Forms. Nếu đó không phải là tách trà của bạn, có những lựa chọn thay thế.

Path.GetDirectoryName(Process.GetCurrentProcess().MainModule.FileName) 

và cũng

Path.GetDirectoryName(Assembly.GetExecutingAssembly().GetName().CodeBase) 
8
using System.IO; 
using System.Windows.Forms; 

string appPath = Path.GetDirectoryName(Application.ExecutablePath); 

UPDATE:

Đối với một ứng dụng WPF bạn có thể sử dụng các mục sau:

using System.Reflection; 

string appPath = Assembly.GetExecutingAssembly().Location; 
+0

gì nếu nó là một ứng dụng WPF. –

+0

@Shamim Hafiz: Tôi đã cập nhật câu trả lời của mình với phiên bản tương thích WPF. Bạn cũng có thể đi theo con đường của Matthew Ferreira. –

0

Bạn có thể thử Environment.CurrentDirectory - nếu chương trình của bạn không thao tác giá trị này vì bất kỳ lý do gì, nó sẽ cho bạn thấy đường dẫn từ đó chương trình được chạy.

Các vấn đề liên quan