• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >vc/mfc > 请问ATL中怎样编写上传文件的ActiveX?

请问ATL中怎样编写上传文件的ActiveX?

作者:佚名 字体:[增加 减小] 来源:互联网 时间:2017-06-04

佚名通过本文主要向大家介绍了atl activex,cf文件atl71.dll,cf缺少atl71.dll文件,atl71.dll文件,缺少atl71.dll文件等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
问题: 请问ATL中怎样编写上传文件的ActiveX?
描述:

如题。
我用CAtlNavigateData类,不能实现。
谁有这方面的经验?请指教。谢谢!


解决方案1:

以下程序在VC++.net下MFC环境调试通过[WIN2000Server]
CInternetSession m_Session("DigitalTitan");
    CHttpConnection* pServer=NULL;
    CHttpFile* pFile=NULL;
    CString strServerName=m_ServerName;
    INTERNET_PORT nPort=(INTERNET_PORT)atoi(m_ServerPort);
CString strURL=m_DesignFile;
    try
    {
        pServer=m_Session.GetHttpConnection(strServerName,nPort);
pFile=pServer->OpenRequest(CHttpConnection::HTTP_VERB_POST,strURL,NULL,1,NULL,NULL,INTERNET_FLAG_EXISTING_CONNECT);
CString strBoundary="-----------------------------7d33a816d302b6";//分界线视CGI程序做响应改动.
        pFile->AddRequestHeaders("Content-Type: multipart/form-data, boundary="+strBoundary);
        pFile->AddRequestHeaders("Accept: */*");
char* pBuf=new char[1024*1000];
//构造表单开始
FieldStruct* pFieldStruct=new FieldStruct;
POSITION CurrentPosition;
for(int iIndex=0;iIndex<m_FieldData.GetCount();iIndex++)
{
CurrentPosition=m_FieldData.FindIndex(iIndex);
pFieldStruct=(FieldStruct*)m_FieldData.GetAt(CurrentPosition);
strcat(pBuf,(LPTSTR)(LPCTSTR)strBoundary);
strcat(pBuf,"Content-Disposition: form-data;name=\"");
strcat(pBuf,(LPTSTR)(LPCTSTR)pFieldStruct->m_FieldName);
strcat(pBuf,"\"\r\n\r\n");
strcat(pBuf,(LPTSTR)(LPCTSTR)pFieldStruct->m_FieldValue);
strcat(pBuf,"\r\n");
strcat(pBuf,(LPTSTR)(LPCTSTR)strBoundary);
}
//构造表单结束
//
CStdioFile m_File;
BYTE pFileBuf[1024];
CString strBuf;
DWORD dwRead;
strcat(pBuf,"Content-Disposition: form-data;name=\"FieldName\"\r\nfilename=\"FileName\"\r\n");
if(m_File.Open(strTempDocPath,CFile::modeRead|CFile::typeBinary))
{
do
{
dwRead=m_File.Read(pFileBuf,1024);
for(int kIndex=0;kIndex<(int)dwRead;kIndex++)
{
char strChar=*(char*)(pFileBuf+kIndex);
if(strChar=='\0')
{
strBuf.Append("DigitalTitan",12);
}
else
{
strBuf.AppendChar(strChar);                             }
/*
int iLastPosition=strlen(pBuf);
pBuf[iLastPosition]=strChar;
pBuf[iLastPosition+1]=0;
*/
}
}
while(dwRead>0);
m_File.Close();
}
strcat(pBuf,(LPTSTR)(LPCTSTR)strBuf);
strcat(pBuf,"\r\n");
strcat(pBuf,(LPTSTR)(LPCTSTR)strBoundary);
strcat(pBuf,"--");
pFile->SendRequest(NULL,0,(LPVOID)pBuf,strlen(pBuf));
pFile->Close();
pServer->Close();
//AfxMessageBox("UpLoad...",MB_ICONINFORMATION);
    }
    catch(CInternetException * e)
{
AfxMessageBox("...",MB_ICONINFORMATION);
};
    delete pFile;
    delete pServer;
    m_Session.Close();

解决方案2:

QQ:81051043


分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • 大家一般都怎么打包Atl开发的ActiveX控件?
  • 在ATL中,如何设置ActiveX的运行时的属性。
  • ATL写的ActiveX要怎么取得网页里PARAM传入的值?
  • 请教,ATL写的ActiveX控件在IE中加载时接口的调用顺序
  • 用ATL改写的Win32窗口程序加载ActiveX控件出错
  • Atl做的ActiveX控件的事件,在客户端如何调用?
  • 初次编写ATL的ActiveX控件,关于属性是函数的问题!请大家帮助!
  • 如何用ATL写ActiveX文档?
  • ATL无窗口ActiveX控件中,得到容器的方法
  • 有没有用SDK开发ActiveX控件的文章或源代码啊?不用MFC或ATL

相关文章

  • 2017-06-05 50分求windows核心编程光盘上源码!
  • 2017-06-05 大神们,如何继承ATLCOM中的导出类?
  • 2017-06-05 是不是很有难度,关于VC普通DLL被其它程序调用的问题?(100分在另一贴里
  • 2017-06-04 为什么activex中无法访问注册表
  • 2017-06-05 么用VC来获得指定进程的标识符?
  • 2017-06-04 ATL宏字符转换出现内存溢出的问题,请高手帮忙!
  • 2017-06-05 线程的高手请进!
  • 2017-06-04 文件拖放到IE窗口能自动打开是如何实现的?
  • 2017-06-05 svchostexe内存占用
  • 2017-06-05 ATL::CWindow类能用于普通的窗口控件么?

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • ActiveX控件发布在iis上,XP的IE无法访问,2k的IE可以!高分求助!
    • 使用Create手动创建ActiveX如何指定风格。
    • CreateFileMapping如何获得读写权限
    • 接口参数的设置问题
    • WORDAutomation奇怪问题
    • MFC使用ADO连接SQLServer退出时出现错误
    • _DllMain@12alreadydefinedinCityBBsobj?这个什么问题(高分)
    • 为什么会不支持IDispatch接口??????????
    • 怎样在C++中调用DLL,没有dll和lib。
    • ATL里面使用对话框??

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有