我想更改我的應用程序查找app.config文件的位置。我知道我可以使用ConfigurationManager.OpenExeConfiguration()訪問一個任意的配置文件 - 但是,當.Net Framework讀取配置文件(例如ConnectionStrings或EventSources)時,它會查看默認位置。我想實際改變整個.Net Framework的位置(當然,對於我的應用程序)。如何更改app.config的位置
我也知道,我可以使用AppDomainSetup改變的app.config的位置爲新的AppDomain。但是,這不適用於應用程序的主AppDomain。
我也知道,我可以覆蓋函數main(),並創建一個新的AppDomain如上並運行我的新AppDomain中的應用。但是,這具有其他副作用 - 例如,Assembly.GetEntryAssembly()將返回空引用。
考慮到.Net中的其他所有工作,我希望有一些方法來配置我的應用程序的啓動環境 - 通過應用程序清單或其他方式 - 但我一直無法找到一絲希望朝這個方向發展。
任何指針都會有幫助。也許有可能解決您的實際問題,不同的方法 -
大衛·穆林
嗯。在我對這種方法的測試中(與您的方法不同),GetEntryAssembly確實返回null。但是,我沒有執行ExecuteAssembly - 我找到了我編寫並執行過的「第二主」。我會嘗試你的方法,看看它是否適合我。 – 2010-09-03 05:26:54
我認爲ExecuteAssembly有所作爲。至少Docs說GetEntryAssembly返回可執行的,*或*傳遞給ExecuteAssembly()的那個。 – 2010-09-03 08:41:06