• 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 > MFCActiveX向导做的控件初始化问题

MFCActiveX向导做的控件初始化问题

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

佚名通过本文主要向大家介绍了mfcactivex控件,磁盘初始化和转换向导,固定资产初始化向导,激活向导初始化问题,迅雷初始化向导等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
问题: MFC ActiveX向导做的控件初始化问题
描述:

我想实现这样一个功能:用户在插入我的控件时,首先判断一个条件,如果这个条件成立则插入该控件,否则提示用户缺少...,不插入该控件.
不知道该怎么实现,请高人指点!
就象CWinApp在InitInstance()函数中可以添加这个条件,但是不知道COleControl是否有类似这样的初始化函数


解决方案1:

搂主看一下下面的代码是不是对你有帮助:
下面我就简单的来讲一下如何引用一个ActiveX控件,我以Flash控件为例:
这里我就不一步一步讲了,有兴趣的话就下载源代码吧:)
点击这里下载工程源代码
// 首先要包含几个COM头文件
// 因为要用到ATL容器窗口,所以需要初始化一个CComModule以及包含atlwin.h头文件
#include 
CComModule _Module;
#include 
#include 
#pragma comment(lib,"atl")
// 引入FLASH控件,这里的路径为自己计算机上的FLASH控件的实际路径
#import "C:\WINNT\system32\Macromed\Flash\Flash.ocx"
using namespace ShockwaveFlashObjects;
// 在WinMain中做初始化
int APIENTRY WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,LPSTR lpCmdLine,int nCmdShow)
{
 CoInitialize(NULL);
 AtlAxWinInit();
 .
 .
 .
 CoUninitialize();
 return msg.wParam;
}
// 开始创建ATL容器窗口,并通过QueryControl()方法获得FLASH控件对象
LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
{
 static CAxWindow    WinContainer;
 static CComPtr pFlash;
 switch(message)
 {
 case WM_CREATE:
  RECT rc;
  GetClientRect(hWnd,&rc);
  WinContainer.Create(hWnd,&rc,LPCTSTR("ShockwaveFlash.ShockwaveFlash"),WS_CHILD | WS_VISIBLE);
  HRESULT hr;
  hr = WinContainer.QueryControl(__uuidof(IShockwaveFlash),(void**)&pFlash);
  if(FAILED(hr))return -1L;
  hr = pFlash->put_Movie(CComBSTR(L".\\sample.swf"));
  if(SUCCEEDED(hr))pFlash->Play();
  break;
 .
 .
 .
 case WM_DESTROY:
  pFlash.Release();
  WinContainer.DestroyWindow();
  PostQuitMessage(0);
  break;
 default:
  return DefWindowProc(hWnd, message, wParam, lParam);
 }
 return 0L;
}
好了,终于我也可以在我的程序中播放FLASH动画了,高兴啊:)

解决方案2:

http://msdn.microsoft.com/library/default.asp?url=/workshop/components/activex/licensing.asp

解决方案3:

对于MFC,有一个简单的方法,重载OnCreateAggregates,如果返回FALSE,那么将创建控件失败


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

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

  • MFCActiveX控件中使用枚举常量问题?
  • 有没有用于开发MFCActiveX的VC辅助工具或插件?
  • 如何取得MFCActiveX控件的窗口句柄?
  • 使用HTML调用MFCActiveX接口问题!!!!!!!!!!
  • 无界面MFCActiveX控件问题。
  • MFCActiveX控件插入到RichEdit的问题
  • MFCACTIVEX继承Edit的问题
  • mfcactivex的两个安全相关的问题
  • 关于在网页中使用MFCactivex控件的安全问题
  • IE中如何实现双击全屏MFCActiveX控件自己做的视频控件

相关文章

  • 2017-06-04 数据插入Access的ole对象字段问题(呼唤高手)
  • 2017-06-05 新手问题:编译中出现缺少lib怎么办
  • 2017-06-04 关于NetMeetingSDK的问题
  • 2017-06-04 在dll中向主程序的主框架窗口停靠一个CControlBar窗口的奇怪现象一问?
  • 2017-06-04 关于字符串类型转换的问题,在线给分!
  • 2017-06-04 在VC++60的集成开发环境如何删除向导生成的类
  • 2017-06-05 DLL中动态调用charFAR类型的函数
  • 2017-06-05 PDF开发:如果根据鼠标位置确定Form位置
  • 2017-06-04 ?哪位贵人有COM编程精彩实例的光盘源码
  • 2017-06-04 用ActiveExe编写的程序可否在IE中直接调用

文章分类

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

最近更新的内容

    • 如何在VC中,将一个ADO记录集Recordset,转换成OleVariant类型
    • 在客户程序退出后,如何使Exe组件立即从内存中退出?
    • 高手求教?????完了给200分
    • 我在一个ATL工程中使用_bstr_t还要加#include<atlctlh>头文件吗,不加说bstr_t没定义,加了出现2个连接错误
    • 请问高手们一个问题:关于挂接API函数的。
    • com的dll注册太慢
    • 进程内存的问题
    • 关于WMI的开发?
    • 怎么将cab文件还原成之前的文件呢
    • mapxvc查询矩形范围内图元信息

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

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