从其他应用程序读取用户设置

时间:2014-01-08 16:56:15

标签: c# console-application windows-applications

我有一个使用此处描述的方法编写用户设置的Windows应用程序:

http://msdn.microsoft.com/en-us/library/bb397755(v=vs.110).aspx

这些设置保存在用户目录中的文件中,例如:

 c:\users\{you name}\Local\{Company}\{product}\user.config

我需要在随播控制台应用程序中访问这些设置。这是可能的,当我尝试从控制台应用程序访问它们时,设置返回null。

代码本身看起来像这样:

要保存App1中的设置:

namespace Application1{
    public class DemoSave{

      public void DoWork(){

         Application1.Properties.Settings.Default.CustomSettings.Title ="someValue";
         Application1.Properties.Settings.Default.Save();

      }

    }
}

要阅读其他应用中的设置:

namespace Application2{
    public class Demo{

      public void DoWork(){

         var title = Application1.Properties.Settings.Default.CustomSettings.Title;

      }
    }
}

在Application2中,Application1.Properties.Settings.Default.CustomSettings属性为null。

2 个答案:

答案 0 :(得分:0)

上次我做了类似的事情,我在解决方案中有两个项目(一个Windows服务和一个wpf应用程序),我不得不在Win Service项目中引用WPF应用程序来访问它的设置(我假设你是谈论Namespace.Properties.Settings)。它似乎对我来说很好。在这种情况下,我必须将设置上的访问修饰符设置为公共。我不确定这是不是最好的方式,但它对我来说非常小而且微不足道。

答案 1 :(得分:0)

当您修改/读取设置文件时,您是否确定指向正确的位置? 因为这可能是它不起作用的原因。