[英].net c# cannot find img resources when open with exe
我的exe處理文本文檔,我希望能夠右鍵單擊文檔,選擇“打開方式”並指向我的exe文件。 我可以雙擊我的exe並選擇要使用OpenFileDialog處理的文件,它可以正常工作。 但是,當我打開時,出現FileNotFound錯誤。
這是錯誤日志:
System.IO.FileNotFoundException: attention.jpg
at System.Drawing.Image.FromFile(String filename, Boolean useEmbeddedColorManagement)
at System.Drawing.Image.FromFile(String filename)
at ImzaDogrulamaUygulamasi.frmCertificate.FillTreeView() in D:\VSS\SOURCE\VS2008\EGA\ImzaDogrulamaUygulamasi\ImzaDogrulamaUygulamasi\frmCertificate.cs:line 76
at ImzaDogrulamaUygulamasi.frmCertificate.Form2_Load(Object sender, EventArgs e) in D:\VSS\SOURCE\VS2008\EGA\ImzaDogrulamaUygulamasi\ImzaDogrulamaUygulamasi\frmCertificate.cs:line 244
at System.Windows.Forms.Form.OnLoad(EventArgs e)
at System.Windows.Forms.Form.OnCreateControl()
at System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
at System.Windows.Forms.Control.CreateControl()
at System.Windows.Forms.Control.WmShowWindow(Message& m)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.ScrollableControl.WndProc(Message& m)
at System.Windows.Forms.ContainerControl.WndProc(Message& m)
at System.Windows.Forms.Form.WmShowWindow(Message& m)
at System.Windows.Forms.Form.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
這就是我在代碼中添加圖像的方式,所有資源都與exe文件位於同一目錄中:
ImageList myImageList = new ImageList();
myImageList.Images.Add(Image.FromFile("attention.jpg"));
myImageList.Images.Add(Image.FromFile("sandglass.jpg"));
myImageList.Images.Add(Image.FromFile("11.JPG"));
myImageList.Images.Add(Image.FromFile("checkGif.jpg"));
treeView1.ImageList = myImageList;
任何幫助深表感謝。 謝謝
如果選擇“打開方式”,則您的應用程序可能會在與您要打開的文件相同的文件夾中運行。 也就是說,您的應用程序的執行路徑與找到可執行文件的路徑不同。
因此,您的文件attention.jpg
搜索相對於這條道路,而不是應用程序的路徑。
若要更正此問題,請使用:
string appPath = Application.StartupPath;
myImageList.Images.Add(Image.FromFile(Path.Combine(appPath, "attention.jpg")));
另一個可能更好的替代方法是通過My.Resource
使用嵌入式資源,而不是依賴於單獨的資源文件。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.