我的INI文件如下
server.ini内容如下
[server]
ip=192.168.0.11
port=8080读取配置文件代码如下:
ip:=myinifile.ReadString('server','ip','127.0.0.1');
port:=myinifile.ReadString('server','port','8080'); 在其他系统中都能读取到IP=192.168.0.11,但是在windows 2003系统中却只能得到默认IP 127.0.0.1
有人碰到过类似问题吗?该怎么解决
server.ini内容如下
[server]
ip=192.168.0.11
port=8080读取配置文件代码如下:
ip:=myinifile.ReadString('server','ip','127.0.0.1');
port:=myinifile.ReadString('server','port','8080'); 在其他系统中都能读取到IP=192.168.0.11,但是在windows 2003系统中却只能得到默认IP 127.0.0.1
有人碰到过类似问题吗?该怎么解决
解决方案 »
- 如何把ini文件中一个键值下的所有分支内容读到ListBox1中?
- 请教利用TPrinter设置页边距为0?
- karach进来领分
- ADODataSet.Parameters.Clear和ADODataSet.Parameters.Refresh的用法
- 在线等待....
- 我程序的目的是从sql server中的三张表中分别导数据至本地dbf库(也是三个),请问用多线程做是否可行?
- CSDN的“大本营”怎么了?为什么进不去哪?
- 关于viewtree读取数据库的数据
- 怎样实现字符串的模糊查找?请说高见。
- 如何把你的工作小结写得更好?让老板越看越喜欢,可有范例?
- 关于值域\有效位\字长字节数的理解
- 奇怪的问题求解
GetModuleFileName(HInstance,FilePath,255);
Filename:=ExtractFileDir(Filepath)+'\hdcv1.ini';
myinifile:=Tinifile.Create(filename);
ip:=myinifile.ReadString('server','ip','127.0.0.1');
port:=myinifile.ReadString('server','port','8080');
myinifile.Free;代码就这点,绝对不是路径的问题,而是跟2003这个操作系统有关系
我的代码如下,你参考一下:procedure TDM.DataModuleCreate(Sender: TObject);
var
tmpIni:TINIFile;
begin
tmpIni:=TIniFile.Create(extractfilepath(application.exename)+'config.ini');
server:=tmpIni.ReadString('COMMON','HostAddress','127.0.0.1');
dm.adoconnection1.Connected:=false;
dm.adoconnection1.ConnectionString:='Provider=SQLOLEDB.1;Persist Security Info=False;User ID=sa;Initial Catalog=RC;Data Source='+''''+ server +'''';
dm.adoconnection1.Connected:=true;
tmpini.Free;
end;config.ini内容如下
[common]
HostAddress=192.168.1.188
myinifile:=Tinifile.Create(filename);
ip:=myinifile.ReadString('server','ip','127.0.0.1');
port:=myinifile.ReadString('server','port','8080');
myinifile.Free;
这样试试,GetModuleFileName先别用
myinifile:=Tinifile.Create(filename);
ip:=myinifile.ReadString('server','ip','127.0.0.1');
port:=myinifile.ReadString('server','port','8080');
myinifile.Free;
这样试试,GetModuleFileName先别用
使用extractfilepath 就只能是被DELPHI调用了,而且我查看过取到的路径是对的
改为
Filename:=ExtractFileDir(Filepath)+'hdcv1.ini'; 若不行你可以试试我的代码
GetModuleFileName(HInstance,FilePath,255);
Filename:=ExtractFileDir(Filepath)+'\hdcv1.ini';
showmessage(filename);//我在这里加了提示,提示出来的路径是对的
myinifile:=Tinifile.Create(filename);
ip:=myinifile.ReadString('server','ip','127.0.0.1');
port:=myinifile.ReadString('server','port','8080');
myinifile.Free; 主要问题就是这里读取配置文件只是在部分WINDOWS 2003版本上有问题,大概就是我们自己盗版的WINDOWS 2003版本,正版的WINDOWS 2003版本都是可以读取到的
若不想将来麻烦,那你现在应该重装win2003,最好是原版,不要GOST版或优化的