首页 新闻 论坛 群组 Blog 文档 下载 读书 Tag 网摘 搜索 .NET Java 游戏 视频 人才 外包 培训 数据库 书店 程序员
中国软件网
欢迎您:游客 | 登录 注册 帮助
  • 关于VB软件只能在指定电脑运行 [已结贴,结贴人:qiuye258]
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-06-26 18:10:30 楼主
    这几天给公司做了一个VB的OA网站登陆器,经理要求只能在公司内部的电脑使用。假如软件被流传到外面也运行不了。
    所以很头疼,恳请大家指教下,谢谢!
    要求简单方便就可以了!
    20  修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-06-26 21:17:311楼 得分:1
    取硬盘的出厂ID
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-06-26 22:06:432楼 得分:0
    if msgbox("老板是不是猪", vbyesno) = vbno then end
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-06-26 23:33:403楼 得分:1
    那就给软件设个加密狗
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-06-27 00:28:364楼 得分:2
    在公司内网加一台认证服务器,软件可以通过认证服务器识别网络环境,也可以实现用户认证
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-06-27 07:58:035楼 得分:2
    这个其实也简单。很多商用软件的 Liecense 是根据机内网卡的 MAC 码生成的,因而是唯一的。
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-06-27 09:06:466楼 得分:0
    绑定机器的硬盘序列号和CPU序列号
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-06-27 09:10:237楼 得分:0
    谢谢以楼上所有朋友!我也查了很多相关资料,认为绑定机器的硬盘序列号和CPU序列号比较简单方便!
    但是具体是代码是怎样的呢,望指教!
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-06-27 09:14:068楼 得分:10
        '验证用户合法性
        SQL = "select * from userinfo where SERIALNUMBER='" & GetSerialNumber("c:\") & "' and yhm='" & LCase(txtUserName.Text) & "'"
        adoRS.Open SQL, DB, adOpenDynamic, adLockReadOnly

        If adoRS.EOF Then
            '向LOGINMSG添加登录信息
            SQL = "insert into LOGINMSG(CLIENTTYPE,STATE,SERIALNUMBER,WINUSERNAME,APPUSERNAME,LOGINTIME,LOGOUTTIME,CNAME,VER) values('Client','ERROR','" & GetSerialNumber("c:\") & "','" & My_GetUserName & "','" & txtUserName.Text & "',getdate(),NULL,'" & My_GetComputerName & "','" & strVerUpgrade & "')"
            DB.Execute SQL
            adoRS.Close
            MsgBox "请确认你对此软件的合法使用权,再重新打开程序。" & Chr(10) & "如有问题请与系统管理员联系!", vbOKOnly + vbCritical, " 非法使用"
            Exit Sub
        End If
        adoRS.Close
       
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-06-27 09:26:549楼 得分:0
    谢谢楼上的,我的VB代码如下,真不知道什么整合进去!


    Private Sub Command1_Click()

    If Text1.Text = "" Then MsgBox "用户名不能为空": Exit Sub
    If Text2.Text = "" Then MsgBox "密码不能为空": Exit Sub


    Dim LoginMessage As String

    Dim md5Pwd As String

    md5Pwd = Md5_String_Calc(Text2)

    If Option2 = False And Text1.Text <> "" And Text2.Text <> "" Then


    Shell "C:\Program Files\Internet Explorer\IEXPLORE.EXE " & "http://127.0.0.1/admin/oa_login.asp?action=login&user_name=" & Trim(Text1.Text) & "&password=" & md5Pwd & "", vbNormalFocus

    Else

    Shell "C:\Program Files\Internet Explorer\IEXPLORE.EXE " & "http://127.0.0.1/admin/sms_login.asp?action=login&user_name=" & Trim(Text1.Text) & "&password=" & md5Pwd & "", vbNormalFocus

    End If


    End Sub

    Private Sub Command2_Click()
    Unload Me
    End Sub

    Private Sub Form_Load()
    Text1.Text = ""
    Text2.Text = ""
    End Sub

    Private Sub Picture1_Click()

    End Sub

    Private Sub Image2_Click()

    End Sub

    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-06-27 10:15:2110楼 得分:0
    //[找一台服务器,每台机器只有连接到服务器才能运行]
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-06-27 12:10:1311楼 得分:0
    我是意思是最好能绑定公司的电脑硬盘信息!
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-06-28 06:29:4512楼 得分:4
    VB code
    Private Declare Function GetVolumeInformation Lib "kernel32" Alias "GetVolumeInformationA" (ByVal lpRootPathName As String, ByVal lpVolumeNameBuffer As String, ByVal nVolumeNameSize As Long, lpVolumeSerialNumber As Long, lpMaximumComponentLength As Long, lpFileSystemFlags As Long, ByVal lpFileSystemNameBuffer As String, ByVal nFileSystemNameSize As Long) As Long Private Sub Command1_Click() Dim SN As Long Dim str1 As String * 255 Dim str2 As String * 255 GetVolumeInformation "C:\", str1, Len(str1), SN, 0, 0, str2, Len(str2) 'SN 即为硬盘序列号 End Sub
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-06-28 12:22:0313楼 得分:0
    谢谢smoked  ,那我公司的硬盘系列号什么定义或者手工指定呢?
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-06-28 15:34:0414楼 得分:0
    到邮局,奥~!期间!不能寄光盘了,无论是什么光盘都不寄了,就连加密锁也当成U盘,不能寄了!

     

    我做的一款实用软件,在一个行业全国范围都非常实用的,原来用的是硬件加密锁,现在怎么办啊~~!

    只要有一个破解版,一下就会在行业内部传开了,投资就血本不归啊~~!

     

    我的软件,客户要在台式机上用,也要用笔记本(移动办公)使用。用加密锁,每论他在什么地方用都方便~!

    现在用什么加密方法才能满足啊~~ ,如果用硬盘ID类捆绑,对软件的价值伤害太大了,捆死了客户,就是捆死了自已。

     

    还有,如果客户不能上网呢?不能要求客户每次使用都要链网取受权啊~~!

    头痛啊~解决不了就只有关门,到北京看个球了~

    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-07-01 14:14:1615楼 得分:0
    公司里有域环境的话,可以直接用域认证,即windows认证,很方便的。
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-07-01 14:59:0816楼 得分:0
    帮你顶一下。
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-07-01 16:19:0817楼 得分:0
    最方便是在OA数据服务器上增加IP筛选,或在OA数据服务器前加个带防火墙的路由器,设置成只允许公司网段或指定IP访问。既不用改代码,又不用加认证服务器。
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-07-01 23:28:5918楼 得分:0
    mac
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-07-02 09:13:3319楼 得分:0
    学习了
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-07-02 13:21:3820楼 得分:0
    比较清晰的架构是

    在你局网的服务器上专门开个验证用的端口

    客户端运行前去查询下这个端口是否存在(发个字符回显之类的,当然你要搞的很完美可以把自己电脑的银盘号带上去,服务器拿来和保存的有效银盘号比较)

    要是出了这个局网就根本访问不了这个端口(或者银盘序列号不对)
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-07-09 17:17:3121楼 得分:0
    个人觉得用硬盘物理序列号和CPU序列号就行了,两个都是唯一的。
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-07-09 22:13:2822楼 得分:0
    换个经理就可以了。
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-07-10 06:47:5923楼 得分:0
    难啊  想想想...
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-07-10 11:20:3624楼 得分:0
    大哥们。。。这有什么难啊。。。你不公布你的OA到公网上就成了。
    修改 删除 举报 引用 回复

    网站简介广告服务网站地图帮助联系方式诚聘英才English 问题报告
    北京创新乐知广告有限公司 版权所有 京 ICP 证 070598 号
    世纪乐知(北京)网络技术有限公司 提供技术支持
    Copyright © 2000-2008, CSDN.NET, All Rights Reserved