您的位置:程序门 -> vb -> 基础类



怎样是防止自己写的“activex dll”和“activex 控件”被别人用来做vb程式?


[收藏此页] [打印本页]选择字色:背景色:字体:[][][]


怎样是防止自己写的“activex dll”和“activex 控件”被别人用来做vb程式?[已结贴,结贴人:programfana]
发表于:2007-04-04 09:17:12 楼主
具体意思就是我自己写的vb程式包含“activex   dll”和“activex   控件”,在别人安装我的程式后,怎样阻止别人用我的“activex   dll”和“activex   控件”做程式和二次开发?
发表于:2007-04-04 09:26:321楼 得分:10
最好做一个编译生成.dll和.ocx的文件后,自己要用就直接引用就可以啊
这样能安全点!
发表于:2007-04-04 09:39:332楼 得分:20
可以考虑在dll或控件中增加一个接口,输入一串认证码之类的东西,只有输入正确时,该dll或控件才起作用。
发表于:2007-04-04 09:42:193楼 得分:10
对于ocx工程属性里有一个选项“要求许可证关键字”,打上钩,别人没有开发许可证不能进行开发,对于dll只能自己编制注册码了。
发表于:2007-04-04 09:43:124楼 得分:0
你说的是不是在sub   mian()入口那里写?
发表于:2007-04-04 09:44:255楼 得分:0
我看到那个许可证关键字了,不知道什么意思。
发表于:2007-04-04 09:50:136楼 得分:40
做一个property
private   const   mysn= "你的密码串 "
dim   m_sn   as   string

public   property   let   sn(byval   newsn   as   string)
        m_sn=newsn
end   property

这样就是一个只写的属性了
然后在主要功能里写上
if   m_sn <> mysn   then
        exit   sub/function/property
end   if
别人就用不了了。必要还可以对mysn加密一下,把输入的sn也做加密运算再对比,这样就难破解一点。
发表于:2007-04-04 10:21:457楼 得分:0
那不是要在每个功能上都检查那个属性?
发表于:2007-04-04 10:22:298楼 得分:0
能不能多给点思路。
发表于:2007-04-04 10:57:069楼 得分:10
这个应该不用担心,你的接口是不透明的。用户没法用的
发表于:2007-04-04 11:32:4810楼 得分:0
接口是透明的啊,别人引用以后用对象查看起一看就知道了。
接口肯定是公开的,activex本身就设计成这样的。
发表于:2007-04-04 11:45:0511楼 得分:5
没写过
帮顶
发表于:2007-04-04 12:01:4112楼 得分:5
我看到那个许可证关键字了,不知道什么意思。

许可证打上钩以后,vb会生一个扩展名为vbl的文本文件,如果别人不把此文件导入到注册表,则只能使用你开发的控件(用户模式),如果想用此控件去开发程序(设置模式)会提示使用时缺少许可证。
发表于:2007-04-04 12:03:3413楼 得分:0
ocx和dll的都可以自己写注册码,通过加密算法进行验证。比哪写在类初始化事件中。
发表于:2007-04-04 15:29:1414楼 得分:0
用注册码的话,别人是不是需要单独注册那些文件?


快速检索

最新资讯
热门点击