VC++编程,ActiveX控件嵌入

来源:百度知道 编辑:UC知道 时间:2024/05/25 07:46:04
想请教你一个问题:
如何在VC++生成的exe中嵌入ActiveX控件?
我想做个flash播放器,但我想不是每个人的电脑上都装了这个,所以我想集成到exe中,不知道这样可以吗?
谢谢!
shaokai3239:可不可以把你说的那个软件发到我邮箱?地址:86191770@qq.com

用intehel的方法后好像在使用时要先运行安装程序.
楼主你是不是想做个flash播放器?那个技术上不难,但是很麻烦,而且做出来的界面还不一定好看,现在这样的播放器很多,我觉得adobe自己的就已经很不错了,我见到过一款flash打包器,和你提到的要求很像,好像叫flashpacker.
还是上QQ聊吧,我不是经常上百度我加你Q.

可以只要你做完之后整合成的是用release调试的就可以在没有安装VC的机器上运行

打包时候一块打包进去是不是就可以了

不想打包的话会有些麻烦。
你可以将整个ocx以二进制的方式添加进工程的资源里。在程序运行时,判断用户机器上是否已注册flash控件,如果已注册,继续运行。
如果未注册,释放资源到系统目录形成ocx文件,并getprocaddress取其dllregisterserver函数地址进行注册。然后程序继续运行。
这样的话,如果客户机器上未安装此控件,第一次运行时需要的时间稍长一些。

可以使用早期的flash.ocx版本,只有几百K,这样exe的大小不会特别突出。

将flash.ocx嵌入到工程的资源内.
程序运行时判断注册表内HKCR\ShockWaveFlash.ShockWaveFlash键是否存在,如果存在的话就是已经注册了.程序可以继续运行.
否则,将exe资源里的flash.ocx释放到系统目录,然后使用LoadLibrary装载,然后使用GetProcAddress取其DllRegisterServer函数的地址并调用.即可注册该控件.然后程序继续运行.

直接给人写源代码是不可取的,授人以鱼不如授人以渔.

别失望估计不行,因为ocx把所有的东西封装了
建议你自己写一个.bat文件,自动注册ocx,
你写程序时用语句执行它就行了,下面是一个.bat文件注册ocx的例子

echo 建立文件夹
md %windir%\ocx2
md %windir%\system32\Macromed\Flash

echo 复