2007年8月16日星期四

indy10(技术贴)

从老妖(www.ccrun.com)网站上下载indy10组件,并按照网站上的安装方式进行安装
不过在安装前先卸载CB6自带的版本,并手动删除部分文件
具体文件如下(CB安装目录下):
idhttp.hpp
idglobal.hpp
idglobal.dcu
IdStack.hpp
IdSocks.hpp
IdTcp*.hpp
因为只试验了IdHttp控件,所以在使用其它控件时根据具体的错误查找冲突的文件
需要检测的文件:
1,CB报错所在的文件名(.hpp)
2,该文件中包含的头文件(.hpp)
在indy10安装目录和CB的安装目录下查找,发现有重复的文件,删除CB自带的即可

附一段试验代码(上传文件到WEB服务器)
TIdMultiPartFormDataStream* PostStream = new TIdMultiPartFormDataStream();
try{
AnsiString tFileName = "c:\\indy.lib";
PostStream->AddFormField("mark","123");
PostStream->AddFile("xx",tFileName,GetMIMETypeFromFile(tFileName));
IdHTTP1->Request->ContentType = PostStream->RequestContentType;
IdHTTP1->Post("http://127.0.0.1/WEBServer/fileupload", PostStream);
}
__finally
{
delete PostStream;
}

没有评论: