Dll发送http请求

大宝 2009-01-14 03:35:56
我写了一个dll,用途是发送http请求,得到一个返回结果,可是我用一程序调用时出现错误窗口:
Debug Assertion Failed!
Program:E:\.....*.exe
File:afxwin1.inl
Line:27
For information on how your program can cause an assertion failure, see the Visual C++ documentation on asserts.
点击忽略按钮,程序也能执行完毕。
后来调试发现因为dll里用到 CInternetSession sess; 只要有就会出现以上情况,有没有高手指点下怎么解决呢???

源码如下:

CInternetSession sess(NULL,0);//建立会话 如果不用 我怎么发送http请求???
CHttpFile *fileGet=NULL;
CString Text;
CString Texttmp="";
CString strHttpName = "http://localhost:8080/posserver/query/query.do";

CException *e;
TRY
{
fileGet=(CHttpFile*)sess.OpenURL(strHttpName);//打开文件
if (fileGet == NULL)
{
return FALSE; //读取失败返回
}
while (fileGet->ReadString(Text))
{
Texttmp = Texttmp+"\r\n";
Texttmp+=Text;
}
// 将字符串写入xml文件中
// FILE *fp=fopen("filename.xml","w");
// fwrite(Texttmp,Texttmp.GetLength(),1,fp);
// fclose(fp);
}
CATCH_ALL(e)
{
return GetLastError();
fileGet = 0;
}
sess.Close();
END_CATCH_ALL

...全文
369 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
healer_kx 2009-01-15
  • 打赏
  • 举报
回复
首先你试验一下同样的代码在exe中是不是也可以? 很有可能是线程方面的问题。


另外,Internet有一组API的,你可以考虑不用MFC的封装。
fairyprince 2009-01-15
  • 打赏
  • 举报
回复
没有引用预编译头,
stdafx.h
大宝 2009-01-15
  • 打赏
  • 举报
回复
我用的 Win32 DLL 现在新建一个MFC DLL 将头文件和源文件直接复制过去 编译出错
fatal error C1010: unexpected end of file while looking for precompiled header directive

真是头大 没有头绪了 不知道咋解决了 。。。。。。。郁闷中!!!!!!
fairyprince 2009-01-15
  • 打赏
  • 举报
回复
你建立DLL时用的是什么工程向导?

MFC DLL
还是 win32 DLL

如果你用 Win32 DLL ,你只引用
#include <stdio.h>
#include "afxinet.h"
是不行的,你可以建一个 MFC DLL 看一下和Win32 DLL 有什么不同
waizqfor 2009-01-14
  • 打赏
  • 举报
回复
断点 debug吧
大宝 2009-01-14
  • 打赏
  • 举报
回复
我用的VC6.0 头文件
#include <stdio.h>
#include "afxinet.h"
难道dll 不能用MFC库来发送http? 有没有别的方法可以发送http?
oyljerry 2009-01-14
  • 打赏
  • 举报
回复
还是要调试一下,看你的代码出错在哪
查看你一下你出错的时候的call stack
fairyprince 2009-01-14
  • 打赏
  • 举报
回复
你用了MFC?
是否用VC建的MFC dll?
如果你使用MFC 类库,就要用MFC DLL,否则你要会有问题

64,654

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

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