2010-06-07 6 views
5

Tôi có một dự án .NET CF. Trong thư mục dự án, tôi đặt một tệp xml đơn giản (users.xml) mà thiết bị phải đọc. Khi tôi gỡ lỗi ứng dụng trên trình mô phỏng thiết bị và thử tải tệp từ mã, ngoại lệ được ném (FileNotFoundException "Could not find file '\\users.xml'.").Khuôn khổ .NET nhỏ gọn - nơi đặt các tệp sao cho chúng có thể truy cập được tới trình mô phỏng

Có cơ chế để tự động triển khai các tệp cấu hình vào trình mô phỏng thiết bị không?

+0

Bạn có thể muốn xem xét sử dụng tài nguyên nhúng http://bit.ly/cFuYOc http://bit.ly/a8DXOl – slf

+0

Visual Studio làm gì Bạn sử dụng? – Shaihi

+0

Visual Studio 2005 – cubesoft

Trả lời

2

Bạn có đường dẫn đặt sai trong mã của mình. Sau khi làm theo hướng dẫn của Shaihi hoặc Sphynx để có được Studio để triển khai tệp, tệp sẽ nằm trong thư mục với ứng dụng.

Dựa trên thực tế là bạn đang gặp phải lỗi không thể tìm thấy "\ users.xml" cho tôi biết rằng bạn đang yêu cầu cụ thể tìm trong thư mục gốc hoặc bạn chưa chỉ định thư mục.

Windows CE yêu cầu bạn cung cấp đường dẫn đủ điều kiện, vì vậy ứng dụng của bạn nên sử dụng đường dẫn đầy đủ được triển khai tới (ví dụ: "Program Files \ MyApp \ users.xml") hoặc bạn cần tạo đường dẫn :

Path.Combine(
    Path.GetDirectoryName(
    Assembly.GetExecutingAssembly().GetName().CodeBase 
), "users.xml"); 
+0

Path.Combine (...) đưa ra trong trường hợp của tôi '\\ MyExe.exe \\ users.xml' \t và System.IO.DirectoryNotFoundException được ném. Điều gì là sai? – cubesoft

+0

bah, đó là những gì Tôi nhận được để không kiểm tra mã của tôi - Tôi đã cập nhật nó trong câu trả lời – ctacke

0

Bạn có thể thử thêm tệp vào ứng dụng của mình, đặt "Xây dựng hành động" thành nội dung và bật "Sao chép vào thư mục đầu ra". Ngoài ra, tôi tin rằng có một tùy chọn trong tùy chọn giả lập cho phép chia sẻ tệp giữa trình giả lập và hệ điều hành máy chủ.

+0

"Hành động xây dựng" được đặt thành nội dung và "sao chép ra thư mục" không hoạt động. Tôi có thể thấy trong "Cửa sổ đầu ra" mà các tệp được triển khai nhưng khi tôi cố tải tệp, FileNotFoundException – cubesoft

2

Đây là cách thực hiện trong VS2005. Nó triển khai tập tin cùng với dự án.
Đây là một ứng dụng gốc - ứng dụng phải giống với ứng dụng được quản lý.

Trường Content chỉ định có nên triển khai tệp đến mục tiêu hay không. Tệp được triển khai vào cùng thư mục với ứng dụng. Tôi không chắc chắn làm thế nào VS2005 xử lý việc triển khai trong trường hợp bạn cập nhật các tập tin, có nghĩa là bạn có thể cần phải tự xóa nó trên thiết bị.

VS2005 http://www.freeimagehosting.net/uploads/255e2922df.jpg

0

Đi tới File->Configuration trên trình mô phỏng và chia sẻ thư mục từ PC. Thư mục này trở thành thẻ lưu trữ của bạn vì vậy nếu bạn đặt một tệp ở đó như test.csv thì bạn có thể đọc nó từ "Thẻ lưu trữ \ test.csv" trong chương trình. (Tôi đang sử dụng giả lập VS2008 và Windows Mobile 5.0 Pocket PC RC 2.