2010-07-22 27 views
21

Tôi vừa chuyển đổi dự án thành VS2010 và bây giờ tôi bắt đầu thấy Ngoại lệ trong phần mềm của tôi trong IntelliTrace.Bản sắc ứng dụng không được đặt Ngoại lệ

Một trong những ngoại lệ là 'bản sắc ứng dụng không được thiết lập, điều này xảy ra bất cứ khi nào một cái gì đó phần mềm của tôi See như

string m_AppPath = Application.UserAppDataPath; 

Đây không phải là một vấn đề như AppDataPath trả một cách chính xác, tôi chỉ tự hỏi tại sao điều này xảy ra.

Mã nằm trong chức năng chính của Program.cs (nếu điều này tạo ra sự khác biệt), một khi ra khỏi tệp Program.cs và vào MainWindow.cs, mã hoạt động.

Vấn đề chính của tôi là tôi thiết lập Đăng nhập trước khi ứng dụng bắt đầu. Bất kỳ trợ giúp nào được đánh giá cao khi tìm kiếm trên web đều không thực sự hữu ích.

Paul

Trả lời

16

Nếu vấn đề đang xảy ra trong gỡ lỗi đầu tiên bạn có thể kiểm tra xem trình gỡ lỗi được gắn trước khi truy cập bất kỳ cài đặt ứng dụng:

If System.Diagnostics.Debugger.IsAttached then 
     Me.Text = "Debug Mode" 
Else 
     Me.Text = "Version " & My.Application.Deployment.CurrentVersion.ToString 
End If 
+2

Làm như vậy đường dẫn của tôi không bao giờ được đặt trong chế độ gỡ lỗi. – Pedro77

43

tôi thấy rằng vấn đề này chỉ tồn tại nếu bạn bỏ chọn "Just Mã của tôi "dưới tùy chọn gỡ lỗi.

+1

Câu trả lời hoàn hảo! Tôi đã bị cản trở bởi lỗi này và tắt cho tháng trước, và tip này cuối cùng đã sửa nó! – Contango

+0

Giải quyết vấn đề, nhưng tùy chọn này làm gì? Nó che giấu cho tôi nhiều ngoại lệ hơn, không chỉ là ngoại lệ này ... – miguelmpn

2

Nếu đây là ứng dụng ClickOnce đang được gỡ lỗi, một tùy chọn khác là kiểm tra cài đặt System.Deployment.Application.ApplicationDeployment.IsNetworkDeployed.

+10

Kiểm tra thuộc tính này cũng sẽ tạo ra một ngoại lệ – Calin

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