程式運行時會需要好多外部檔案,
比如把網上下載的資料放在一個Excel模板中;那這個Excel模板應該提前放置一個地方,然后運行時復制過去。那好多類似Excel模板之類的檔案,我把它們放在一個Resource中。
程式運行時,直接
“ private string BootPath = System.AppDomain.CurrentDomain.BaseDirectory;”就可以獲取了;
比如
string Str = File.ReadAllText(BootPath + @"\Resources\Mapping.txt", System.Text.Encoding.GetEncoding("GBK"));
但我現在的問題是debug和Realse模式下的BootPath是不一樣的,為此我必須在debug和Realse檔案夾上都設定一個Resource檔案,
麻煩不說,經常出現的問題是一個改了,另一個忘記改。
其實這個問題我也找到了解決方法,就是可以把Resource放在其它位置,比如
“ private string BootPath =@“C:\””就可以了;
但新的問題就又出現了;
我最后生成的reasle檔案是利用setup project insatller生成msi發送給客戶的,而在客戶安裝后的程式中,我是希望Resource安裝在程式目錄下的,也就是希望運行的是private string BootPath = System.AppDomain.CurrentDomain.BaseDirectory;而不是在C盤給人家新建個檔案,
請問高手,這題如何解。
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/249647.html
標籤:C#
上一篇:HttpClientFactory 結合 Polly 輕松實作重試機制
下一篇:怎么plc.Write("M100.0", 1)陳述句成功,而plc.Write("MB100", 18)陳述句不成功?
