tôi có thể chạy tốt điều này từ dòng lệnh:Không thể chạy lệnh từ Process.Start
C:\Windows\System32\rundll32.exe "C:\Program Files (x86)\Windows Photo Viewer\PhotoViewer.dll", ImageView_Fullscreen C:\Users\Public\Pictures\Sample Pictures\Chrysanthemum.jpg
Hình ảnh mở ra không có vấn đề.
Tuy nhiên, khi tôi cố gắng và làm điều này:
exe = "C:\\Windows\\System32\\rundll32.exe \"C:\\Program Files (x86)\\Windows Photo Viewer\\PhotoViewer.dll\", ImageView_Fullscreen C:\\Users\\Public\\Pictures\\Sample Pictures\\Chrysanthemum.jpg";
Process.Start(exe);
tôi nhận được một System.ComponentModel.Win32Exception
: Hệ thống không thể tìm thấy các tập tin định
Tôi có đã thử với dấu ngoặc kép trên cả dòng lệnh và C#, và không làm việc với chúng. Theo một câu trả lời tôi đọc trên SO gần đây phần cuối cùng không nên được trích dẫn.
Điều gì đang xảy ra?
Bạn có thể cần phải quấn param cuối cùng với dấu ngoặc kép là tốt, vì một phần của đường dẫn chứa một không gian. –
Cảm ơn bạn đã trả lời. Tôi đọc một bài viết ở đây một nơi nào đó nói rằng phần cuối cùng không nên được báo giá, và phiên bản dòng lệnh không làm việc với dấu ngoặc kép xung quanh mục cuối cùng hoặc. – sennett
Hãy thử nó anyways ;-) Ngoài ra bạn có thể chạy Process Monitor để xem tập tin được chỉ định không thể được tìm thấy, mà có thể đưa ra một gợi ý. –