2010-06-09 26 views
7

Gần đây tôi đã có một máy tính xách tay Mac mới và đang chạy VS2010 trong một máy ảo Parallels. Nó chủ yếu làm việc tốt cho tôi, nhưng tôi đang gặp một số vấn đề với việc gỡ lỗi các kiểu dự án cụ thể, liên quan đến thực tế là các dự án đang được truy cập thông qua một mạng chia sẻ. Các dự án thử nghiệm không chạy vì người thử nghiệm không thể tải DLL thử nghiệm. các dự án web không chạy trong Visual Studio máy chủ nhỏ trang web, ném ngoại lệ sau đây:Làm cách nào để gỡ lỗi các giải pháp trong Visual Studio 2010 khỏi chia sẻ mạng?

'An error occurred loading a configuration file: Failed to start monitoring changes to path\to\web.config'.

Tôi đã dành buổi tối trawling web với chút may mắn về vấn đề này. Sau khi đọc thesetwo bài đăng, tôi đã thử các thay đổi CasPol thông thường, nhưng sau đó tìm thấy this post từ một trong những bản thử nghiệm VS2010 sớm chỉ ra rằng CasPol không còn cần thiết/được hỗ trợ trong .NET 4.0 và VS2010 nữa.

Chia sẻ mạng có thể truy cập được thông qua cả ổ đĩa được ánh xạ và đường dẫn UNC. Máy chủ cho đường dẫn UNC là .pfs; theo this post Windows xử lý tên máy chủ bắt đầu bằng dấu chấm có nguồn gốc trong Vùng Internet.

Máy ảo chạy các ứng dụng của nó trong tài khoản quản trị viên, có vẻ như có tất cả các quyền cần thiết trên mạng chia sẻ để tạo, đọc, ghi và xóa tệp và thư mục. Tôi nói "có vẻ như" vì tôi không thể xem các Thuộc tính Bảo mật của thư mục thích hợp qua Explorer: tab Bảo mật không có mặt.

Có ai quản lý thành công tải và gỡ lỗi web và kiểm tra dự án từ một mạng chia sẻ trong VS2010 không?

CẬP NHẬT: Tôi đã thử tải các giải pháp trong VS2010 trên máy Windows riêng biệt bằng địa chỉ IP của MacBook của tôi, với kết quả hỗn hợp. Dự án thử nghiệm một lần nữa thất bại trong việc chạy với lỗi:

Error loading \\192.168.0.4\alastair\Code\project\bin\Debug\Tests.dll: Could not load file or assembly 'file://\\192.168.0.4\alastair\Code\project\bin\Debug\Tests.dll' or one of its dependencies. Operation is not supported. (Exception from HRESULT: 0x80131515)

Tuy nhiên, các dự án ASP.NET MVC chạy một cách chính xác như mong đợi trong bối cảnh này, và tôi nhận được chính xác kết quả tương tự ở đây nếu tôi sử dụng tên NETBIOS của MacBook.

Tất nhiên, để thực hiện điều này, tôi phải bật chia sẻ SMB trong Snow Leopard, không bắt buộc phải truy cập vị trí trong máy ảo Parallels của tôi. Có lẽ có một số thiết lập trong Parallels mà tôi cần phải tinh chỉnh để thay đổi quyền trên chia sẻ?

Tôi cũng đã gắn cờ câu hỏi này cho người kiểm duyệt để yêu cầu được chuyển đến StackOverflow; Tôi nghĩ rằng nó có thể là một diễn đàn thích hợp hơn SuperUser.

+0

@astastairs: xin lỗi, tôi đã nhìn thấy lá cờ trước câu trả lời của tôi, nhưng không nhận ra lá cờ là từ OP. di chuyển ngay. –

+0

Bạn đã giải quyết được vấn đề của mình chưa? Tôi có cùng một vấn đề. thx – ema

+0

Việc sửa chữa devenv.exe.config trong câu trả lời được chấp nhận dưới đây dường như đã giải quyết được vấn đề. Cảm ơn @Daniel Plaisted! – alastairs

Trả lời

3

Thử đặt <loadFromRemoteSources enabled="true"/> trong phần tử thời gian chạy của devenv.exe.config, như được đề xuất trong câu trả lời cho this question. Nó cố định vấn đề cho tôi ... Visual Studio vẫn cảnh báo tôi khi tải một dự án từ chia sẻ, nhưng chạy thử nghiệm bây giờ hoạt động.

+0

Ồ, điều này nghe có vẻ thú vị! Cảm ơn lời khuyên, tôi chắc chắn sẽ kiểm tra nó khi tôi về nhà! – alastairs

+2

Điều đó làm việc tốt cho tôi. Nhưng tôi đã có một số vấn đề lớn để có thể chỉnh sửa devenv.exe.config ... Truy cập từ chối greated tôi. Cách giải quyết của tôi là mở Notepad.exe "là Quản trị viên", sau đó tôi đã có thể chỉnh sửa tệp và làm cho nó hoạt động –

0

Điều này giả định vấn đề thực sự với Windows "xử lý [ing] tên máy chủ bắt đầu bằng dấu chấm có nguồn gốc trong Vùng Internet". Nó có thể là một cái gì đó khác, nhưng tùy chọn (3) dưới đây nên là một phương tiện nhanh chóng (dis) chứng minh điều này như là một phần của vấn đề.


Khoảng thời gian (.) không phải là ký tự không được sử dụng trong tên máy chủ DNS; nó thường được hiểu là dấu tách giữa tên máy chủ và tên miền (ví dụ: localhost.localdomain). Tên máy chủ DNS thường bị giới hạn ở "LDH" - Chữ cái, chữ số và dấu gạch nối.

Đường dẫn UNC và tên Mạng Windows (NetBIOS) có thể gặp phải sự cố tương tự.Theo số RFC3696, thời gian là hợp pháp, nhưng bạn cần phải thoát khỏi các khoảng thời gian được sử dụng trong tên máy chủ theo RFC1035. Nếu tôi đọc RFC1035 chính xác, tên máy chủ của bạn phải là \.pfs thay vì .pfs.

tôi tự hỏi, nếu vấn đề của bạn sẽ làm việc OK nếu bạn

  1. thay đổi tên máy (trên máy chủ cổ phiếu) để một cái gì đó không trong đó có một dấu chấm (và cập nhật các khách hàng cho phù hợp),
  2. đã thay đổi đường dẫn UNC thành phần chia sẻ (trên máy khách) để sử dụng trình tự thoát thích hợp cho các khoảng thời gian, hoặc
  3. thay đổi đường dẫn UNC thành chia sẻ (trên máy khách) để sử dụng địa chỉ IP thay cho tên máy chủ.
+0

Cảm ơn câu trả lời. Tôi đã cập nhật câu hỏi của mình với câu trả lời của tôi, một thời gian dài để nhận xét! – alastairs

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