首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ Builder >

Win Service 加载配置文件遇到的有关问题

2012-02-15 
Win Service 加载配置文件遇到的问题我写了一个Win Service程序,现在的问题是在加载conifg.ini文件时,总是

Win Service 加载配置文件遇到的问题
我写了一个Win Service程序,现在的问题是在加载conifg.ini文件时,总是读不出来文件中的内容,服务的安装和卸载都正常,在windows日志中,总是写入 “2011/11/7 17:24:25 DeamonPort: 123 ”。

代码如下,各位帮看一下。

C/C++ code
void TSubClientServiecs::LoadConfigInfo(){    //----获取运行程序的目录开始    char dir[MAX_PATH];    char *tfile = "/SubstationConfig.ini";    //将程序现在目录所在输入此字符数组    ::GetCurrentDirectory(MAX_PATH,dir);    //将现在目录加上指定文件名    strcat(dir,tfile);    //----获取运行程序的目录结束    TIniFile  *ini = new TIniFile(dir);    try    {       myConfig->strDeamonIP = ini->ReadString("IP","DeamonIP",123);       LogMessage(DateTimeToStr(Now())+" DeamonPort: "+myConfig->strDeamonIP + " ",EVENTLOG_INFORMATION_TYPE,0,0);       ini->WriteInteger("PORT","DeamonPort1",100);    }    catch(...)    {        //    MessageBox(Application->Handle,"读取配置文件config.ini失败!","信息提示!",MB_OK+MB_ICONINFORMATION+MB_SYSTEMMODAL);        LogMessage(DateTimeToStr(Now())+"加载配置文件未成功!",EVENTLOG_INFORMATION_TYPE,0,0);        delete ini;    }    delete ini;}


SubstationConfig.ini文件内容如下:
 
C/C++ code
[PORT]DeamonPort=51001DeamonPort1=5[IP]DeamonIP=1234


[解决办法]
Win Service程序的当前目录应该是windows\\system32\\所以你是目录弄错了。你要是c++builder写的代码,可以这样 TIniFile *ini = new TIniFile(ExtractFilePath(Application->ExeName)+"SubstationConfig.ini");

热点排行