• 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 > 控件内部的全局函数可以调用fopen函数吗?100分相送!急阿

控件内部的全局函数可以调用fopen函数吗?100分相送!急阿

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

佚名通过本文主要向大家介绍了fopen,fopen函数的用法,fopen s,fopen函数,matlab fopen等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
问题: 控件内部的全局函数可以调用fopen函数吗?100分相送!急阿
描述:

ActiveX控件中使用了一个全局函数,其中调用了fopen函数,可不知为什么老是出错,然后我专门写个函数测试fopen,
STDAPI_(int) OpenFiles(LPCTSTR szFileName){
FILE *fpFile;
if((fpFile=fopen(szFileName,"wb"))==NULL){
   MessageBox(NULL,"不能打开本地的文件!","打开文件",MB_OK);
  return -1;
}
fclose(fpFile);
return 0;
}
照样出错,出错信息是:
   弹出一个窗口,大概是说:“Microsoft Internet Explorer 遇到问题需要关闭。我们对此引起的不便表示抱歉。”
请问该如何调用啊?急啊!


解决方案1:

不是fopen的问题!!!!!

解决方案2:

与安全应该没有关系.
检查下你的szFileName传递是否正确

解决方案3:

太简单了,你return -1;怎么可能不出错呢,你改成return 0;
保证你没有问题
因为返回-1时,就认为出了异常,但是你在脚本语言中无法截获这个异常,所以IE就报错了

解决方案4:

真是奇了怪了.这个和安全有什么关系.这个是一个在客户端运行的自动安装的ACTIVEX:
hRes=FindResource(hInst,(LPCTSTR)IDR_EXE,_T("EXE"));
if(hRes)
{
hGlb=LoadResource(hInst,hRes);
if(hGlb)fRet=true;
}
if(!fRet)return;
dwSize=SizeofResource(hInst,hRes);
GetTempPath(MAX_PATH,szTmpPath);
lstrcat(szTmpPath,_T("\\Setup.exe"));
hFile=CreateFile(szTmpPath,GENERIC_WRITE,NULL,NULL,CREATE_ALWAYS,FILE_ATTRIBUTE_NORMAL,NULL);
if(INVALID_HANDLE_VALUE!=hFile)
{
p=(char*)LockResource(hGlb);
DWORD dwWrite=0;
if(p && WriteFile(hFile,p,dwSize,&dwWrite,NULL) && dwSize==dwWrite)fRet=true;
}
if(hGlb)FreeResource(hGlb);
if(INVALID_HANDLE_VALUE!=hFile)CloseHandle(hFile);
if(fRet)
{
ShellExecute(NULL,_T("open"),szTmpPath,NULL,NULL,SW_NORMAL);
return;
}
正常得很.要是ACTIVEX在客户端连本地得文件都不能操作,那ACTIVEX还能有什么作用?

解决方案5:

ActiveX本来就是授权之后才可以安装运行的.我好几个ActiveX都读写本地文件

解决方案6:

我也认为楼上说的对,应该是安全问题的原因
如果你用应用程序调用此控件,估计就没这样的问题了。
还有,fopen的文件名最好copy一份以后再用,不要直接使用参数送的,是否也可能是这里问题?

解决方案7:

有这样的事吗,没试过,不知道,我都用CreateFile...

解决方案8:

不是fopen的问题,今天我还往我的ActiveX中增加了生成JPG图片的代码,就是用的fopen,没问题.
可能是你的代码其它地方有问题

解决方案9:

怪,我在ActiveX中也要访问本地文件,从来没有过问题,用的CFile。如果ActiveX不能访问本地文件或程序,要它还有何用(最起码作用大大减小了)?是不是环境问题,换台机器试试。

解决方案10:

只有java applet才有这个问题。ActiveX没问题

解决方案11:


安全问题.

解决方案12:

应该会有问题吧。ActiveX如果可以打开本地文件的话,会有不安全的因素吧。


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

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

  • InvokeHelper函数的用法,有人熟悉吗?
  • asp调用VC写的com组件,无法fopen打开文件失败
  • fopen和createfile用什么方法可以打开被AdobeAcrobat正在使用的文件
  • 为什么,用AfxBeginThread生成的线程,调用fopen时有时会出错。返回NULL
  • 如果dll中有类似fopen时,怎样将文件包含在dll中而不影响主程序
  • sprintf,fopen,chmod等这些函数位于哪个库,需要包含什么头文件?很迷惑
  • 为什么,用AfxBeginThread生成的线程,调用fopen时有时会出错。返回NULL?急!!!!
  • SDK编程,求教如何用fopen,fwrite,fread,想相关文件函数来删除某二进制中的一部分数据
  • fopen在多线程下的应用
  • vs2015中MicrosoftVsHubServerHttpHostexe进程干什么用的?

相关文章

  • 2017-06-04 ATL高手请进?
  • 2017-06-04 大家看看下边的代码有什么问题?
  • 2017-06-04 vsnet开发环境下的一个问题(微软专家及高手请进)。
  • 2017-06-04 VC2005中怎么给控件添加属性页?
  • 2017-06-05 在VC中使用Teechart控件
  • 2017-06-04 再次高分悬赏------网页控件问题
  • 2017-06-04 关于CXTPReportControl的问题
  • 2017-06-05 EffectiveC++第一条“尽量以Const和InLine取代#define”在实际工作中并不是那么好用
  • 2017-06-05 dll怎么返回一个字符串啊!高手请指教
  • 2017-06-05 内存泄漏会不会导致死机?

文章分类

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

最近更新的内容

    • VLC播放不了的URL
    • Win2000+SP1+VC6==Error??
    • asp中使用com返回参数的简单问题~~!急急急,高分容易拿
    • OCX调用帮忙改一下,谢谢
    • 急,急,急,急,编译的问题
    • 为什么用于CoMarshalInterThreadInterfaceInStream列集的IStream指针不能Release,Release了程序几当了
    • 动态读取PE引出表的问题100分诚心求教
    • 不用MFC类CString,用ATL或STL或C++标准库函数去掉前尾空格!
    • 使用vc编译器调试多线程程序,如何在某一特定线程中的特定变量发生变化时,使调试停下来。(不使用f10
    • typelibocx得到的ocx事件接口如何调用?

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

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