当前位置:编程学习 > C#/ASP.NET >>

关于配置文件的问题

我第一次做WIN程序,以前都是做WEB的,现在情况是,
要是我数据库的IP经常换,那客户段那不是 要经常下载,有没什么好的办法解决? --------------------编程问答-------------------- 域名~~~~~~~~~
解析。。 --------------------编程问答-------------------- 我是做WIN程序啊,不是WEB程序,听别人说是用INI文本,但是不知道怎么搞 --------------------编程问答-------------------- 为什么不用XML呢? --------------------编程问答-------------------- 大家有什么好的办法都可以说说,有文章的话,把地址发我看一下.没做过这方面的东西,以前做WEB不用管这方面的东西 --------------------编程问答-------------------- 没有人搞过吗?我定一下 --------------------编程问答-------------------- 用配置文件或者ini文件都行。
使用方法:
<appSettings>
<add key="connstr"  value="192.168.23.23"/><!--系统ip-->
 </appSettings>

private static string ip= ConfigurationManager.AppSettings["connstr"].ToString();//获得ip地址

下面是修改配置文件
public void saveConfig(string key, string value)//修改配置文件中的键值
        {
            try
            {
                Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
                config.AppSettings.Settings[key].Value = value;
                config.Save(ConfigurationSaveMode.Modified);
            }
            catch (Exception e)
            {
                MessageBox.Show(e.ToString());
            }
        }

使用ini文件
//调用API  
        [DllImport("kernel32")]
        private static extern long WritePrivateProfileString(string section, string key, string val, string filePath);

        [DllImport("kernel32")]
        private static extern int GetPrivateProfileString(string section, string key, string def, StringBuilder retVal, int size, string filePath);

public static  bool writeIni(string section,string key,string value)
        {
            long temp = WritePrivateProfileString(section, key, value, path);
            if (temp > 0)
            {
                return true;
            }
            else
            {
                return false;
            }
        }
        

        public static string readIni(string section, string key)
        {
            StringBuilder st = new StringBuilder();//存放读出的数据
            int i = GetPrivateProfileString(section, key, " ", st, 255, path);
            if (i > 0)
            {
                return st.ToString();
            }
            else
            {
                return "-1";
            }
        }
要是服务器端的ip换了的话,修改客户端的配置文件中的ip值就行了,
客户端程序启动时读取配置文件中的ip值,然后访问。大体这样。我前一阵做的项目就是这样的。不知道我理解的对不对。
--------------------编程问答-------------------- 是的是的,那个配置文件要客户自己去修改是吧 --------------------编程问答-------------------- nieshoushuai ,你人呢吃饭去了 --------------------编程问答-------------------- 你可以自己写个功能来让用户来改他么。不一定非要用户直接进到iNI文件里或者COnfig改么~~~~   如果你不想每个客户端的用户都来改IP可以写一个Webservice在一个地址稳定的服务器端  同过Webservice来返回服务器ip!  



帮顶接分了~~~~~~~ --------------------编程问答-------------------- 最简单的方法写到config中就可以了 --------------------编程问答-------------------- 现在是我想改一下IP,客户那里就自动改了.他们不用管.不过好象很难实现是吧. --------------------编程问答-------------------- 顶 --------------------编程问答-------------------- 现在是我想改一下IP,客户那里就自动改了.他们不用管.不过好象很难实现是吧.
这样能实现吗,个人感觉实现不了,顶下期待更好的答案。。。。。。。 --------------------编程问答-------------------- 刚才那个朋友呢,怎么没有出现了 --------------------编程问答--------------------
引用 6 楼 nieshoushuai 的回复:
用配置文件或者ini文件都行。 
使用方法: 
<appSettings> 
<add key="connstr"  value="192.168.23.23"/> <!--系统ip--> 
</appSettings> 

private static string ip= ConfigurationManager.AppSettings["connstr"].ToString();//获得ip地址 

下面是修改配置文件 
public void saveConfig(string key, string value)//修改配置文件中的键值 
        { 
            try 
            { 
                Config…

好用!
补充:.NET技术 ,  C#
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,