小弟的winform程序中用到了flash8,在客户端安装时,如果客户机注册了flash8.ocx,则安装时不自动注册,否则就注册。现在是不知道flash8在注册表中的键值啊,请高手指点一下。
解决方案 »
- 怎么获取PDF的方向?
- Remoting客户端使用log4net的问题?
- 请教下怎么用VS2005在SQL数据库里面读取出图片并且点击按钮“上一张”“下一张”读取
- 难题求救:windbg和sos.dll的版本对不上?是怎么回事?
- DataGridView模型
- 安装了Visual studio.net 2005后出现的问题
- 新建一个300/300的图片,如何控制把一张1000/1000的图片的某快区域现在这张300/300的图片中?
- TreeView问题
- 再问REMOTING问题:REMOTING中不能用反射调用远程对象的方法?
- 关于dll中的函数加载顺序的问题?
- 关于VS2005中的源代码管理问题?
- 北京做.net薪水多少
我不能重复注册,如果这样,一亘它卸载我的软件时,那么将flash8也卸掉了,我判断的目的是:如果flash8是因为安装我的软件而注册的,那么卸载时也要卸载掉flash8,否则,不能卸载.
如果是vb6,可以直接createobject(classname)这样创建对象
dotnet引用时会自动封装了一个类,你创建这个类就可以了
2.我就是在工具箱中添加引用了这个com组件,然后把控件放到了窗体上.
3.部署时,我把flash8.ocx的Register属性改为:vsdrfCom,这样安装软件时,就自动注册了flash8.
这样做的问题时,如果卸载我的软件,那么flash8也掉了,所以在加上判断的,请jimh(Jimmy)指点。
try
{
obj = createobject("adodb.recordset")
}
catch
{
有问题的创建不起来的话。会报错误信息
}
try
{
AxShockwaveFlashObjects.AxShockwaveFlash axShockwaveFlash = new AxShockwaveFlashObjects.AxShockwaveFlash();
}
catch (Exeception ex)
{
//出错就有可能是没注册了
}
HKEY_CLASSES_ROOT\CLSID\{D27CDB6E-AE6D-11CF-96B8-444553540000}
如果存在,那说明已经注册了flash8.ocx。
[HKEY_CLASSES_ROOT\CLSID\{D27CDB6E-AE6D-11cf-96B8-444553540000}\InprocServer32]
@="C:\\WINDOWS\\system32\\Macromed\\Flash\\Flash8.ocx"
我先注册了flash8.ocx,当然,不在@="C:\\WINDOWS\\system32\\Macromed\\Flash\\Flash8.ocx"这个路径里。
然后再把它卸载掉,发现注册表里HKEY_CLASSES_ROOT\CLSID\{D27CDB6E-AE6D-11CF-96B8-444553540000}是始终有的,不管你注没注册flash8.ocx