关于NMHTTP的问题

haixing511 2005-03-11 05:19:36
我现在要写这样一个程序:我的程序要读取一个网页的内容。登陆时需要用户名,密码。如果登陆成功的话,会弹出一个要你保存的ini文件。
我想问的是:我要在程序里如何实现这个ini文件的读取。
用NMHTTP可以吗,如何用?
高分求救。
...全文
131 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
haixing511 2005-03-12
  • 打赏
  • 举报
回复
谢谢你了unsigned。我还想打扰你一下。
我说的是:当我访问指定的http 网页时,会有一个页面提示输入用户名,密码。
如果用户名,密码输入正确就会弹出严格ini文件叫你保存。我所需要的是用程序来读取这个ini文件。
不知道是不是也是这样做的。

还有我不知道如何给你分啊。
我是第一次发帖子。
请回我,好吗?
ly_liuyang 2005-03-12
  • 打赏
  • 举报
回复
现在还是使用Indy的好

http://lysoft.7u7.net
僵哥 2005-03-12
  • 打赏
  • 举报
回复
调用方法:
写入:
int ErrorCode=SaveUserMessage(文件名,网址,用户名,密码);
switch(ErrorCode)
{
case ERROR_WEB_INI_UNEXPECTED:
ShowMessage("保存网页信息时发生未知错误:"+IntToStr(GetLastError()));
break;
case ERROR_WEB_INI_SUCCESS:
ShowMessage("保存网页信息成功");
break;
case ERROR_WEB_INI_NOFILE:
ShowMessage("未指定文件");
break;
case ERROR_WEB_INI_NOPATH:
ShowMessage("指定保存的路径不存在");
break;
case ERROR_WEB_INI_EMPTYURL:
ShowMessage("网址不得为空");
break;
}

读出
AnsiString UserName,Password;
int ErrorCode=GetUserMessage(文件名,网址,UserName,Password);
switch(ErrorCode)
{
case ERROR_WEB_INI_UNEXPECTED:
ShowMessage("保存网页信息时发生未知错误:"+IntToStr(GetLastError()));
break;
case ERROR_WEB_INI_SUCCESS:
ShowMessage("获取网页信息成功,用户名:"+UserName+" 密码:"+Password);
break;
case ERROR_WEB_INI_NOFILE:
ShowMessage("未指定文件");
break;
case ERROR_WEB_INI_NOPATH:
ShowMessage("指定的文件不存在");
break;
case ERROR_WEB_INI_EMPTYURL:
ShowMessage("网址不得为空");
break;
}

这只是一个示例,只针对同一页的单用户模式。
僵哥 2005-03-12
  • 打赏
  • 举报
回复
不知道楼主是否指的是把用户名和密码保存到ini文件当中

写入:
#include <IniFiles.hpp>
#define ERROR_WEB_INI_UNEXPECTED (-1)
#define ERROR_WEB_INI_SUCCESS 0
#define ERROR_WEB_INI_NOFILE 1
#define ERROR_WEB_INI_NOPATH 2
#define ERROR_WEB_INI_EMPTYURL 3
#define ERROR_WEB_INI_NORECORD 4

int GetUserMessage(const AnsiString FileName,
const AnsiString Url,
AnsiString &UserName,
AnsiString &Password)
{
TIniFile *iniFile;
if(FileName.Trim()=="")
return ERROR_WEB_INI_NOFILE
if(!FileExists(FileName))
return ERROR_WEB_INI_NOPATH; //ini文件未找到
if(Url.Trim()=="")
return ERROR_WEB_INI_EMPTYURL; //未指定网址
iniFile=new TIniFile(FileNmae);
try
{
if(!iniFile->SectionExists(Url))
return ERROR_WEB_INI_NORECORD;
UserName=iniFile->ReadString(Url,"UserName","");
Password=iniFile->ReadString(Url,"PassWord","");
return ERROR_WEB_INI_SUCCESS;
}
__finally
{
iniFile->Free();
}
return ERROR_WEB_INI_UNEXPECTED;
}
int SaveUserMessage(const AnsiString FileName,
const AnsiString Url,
const AnsiString UserName,
const AnsiString Password)
{
TIniFile *iniFile;
if(FileName.Trim()=="")
return ERROR_WEB_INI_NOFILE
if(!PathExists(ExtractFilePath(FileName)))
return ERROR_WEB_INI_NOPATH; //路径未找到
if(Url.Trim()=="")
return ERROR_WEB_INI_EMPTYURL; //未指定网址
iniFile=new TIniFile(FileNmae);
try
{
iniFile->WriteString(Url,"UserName",UserName);
iniFile->WriteString(Url,"PassWord",Password);
return ERROR_WEB_INI_SUCCESS;
}
__finally
{
iniFile->Free();
}
return ERROR_WEB_INI_UNEXPECTED;
}

1,317

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder 网络及通讯开发
社区管理员
  • 网络及通讯开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧