當發佈軟件時,會有很多xml這類配置文件,或者圖片等資源文件,因爲軟件發佈出去了,這些文件就暴露給用戶了,我們經常要考慮哪些xml是容許暴露給客戶,哪些不行。比如說系統配置類的或者跟權限有關的一些配置文件是不能暴露給最終客戶的,這個時候就要用到resources.resx了,它以2進制方式封裝了文件、圖片、字符串等等資源。
兩個跟resources.resx有關的SDK工具
1,al.exe:程序集鏈接器從一個或多個文件(可以是模塊,也可以是資源文件)生成一個具有程序集清單的文件。 模塊是不含程序集清單的“Microsoft 中間語言”(MSIL) 文件。
2,Resgen.exe:資源文件生成器將文本(.txt 或 .restext)文件和基於 XML 的資源格式 (.resx) 文件轉換爲公共語言運行時二進制 (.resources) 文件,後者可嵌入到運行時二進制可執行文件中或編譯成附屬程序集。
調用方式:
1,在自己的程序集中:
Stream stream = this.GetType().Assembly.GetManifestResourceStream(...);
2,在其他程序集中:
Assembly asm = Assembly.LoadFrom("資源dll文件路徑");
ResourceManager rm = new ResourceManager("資源文件名", asm);
pictureBox1.BackgroundImage= Image.FromStream(rm.GetStream("圖片名"));
ResourceManager rm = new ResourceManager("資源文件名", asm);
pictureBox1.BackgroundImage= Image.FromStream(rm.GetStream("圖片名"));