闂傚倸鍊搁崐鎼佸磹閹间礁纾归柟闂寸绾惧綊鏌熼梻瀵割槮缁炬儳缍婇弻鐔兼⒒鐎靛壊妲紒鐐劤濠€閬嶅焵椤掑倹鍤€閻庢凹鍙冨畷宕囧鐎c劋姹楅梺鍦劋閸ㄥ綊宕愰悙鐑樺仭婵犲﹤鍟扮粻鑽も偓娈垮枟婵炲﹪寮崘顔肩<婵炴垶鑹鹃獮鍫熶繆閻愵亜鈧倝宕㈡禒瀣瀭闁割煈鍋嗛々鍙夌節闂堟侗鍎愰柣鎾存礃缁绘盯宕卞Δ鍐唺缂備胶濮垫繛濠囧蓟瀹ュ牜妾ㄩ梺鍛婃尰閻熝呭垝鐠囧樊鍚嬪璺猴功閿涚喖姊绘笟鍥у闁告娲熷畷鍫曨敆婢跺娅栨繝鐢靛Т閿曘倝骞婇幇鐗堝€垮┑鍌氭啞閻撶喖骞栭幖顓炵仯缂佸鏁婚弻娑氣偓锝傛櫇閸斿秶绱掗崒姘毙㈡顏冨嵆瀹曞ジ鎮㈤崫鍕闂傚倷绀侀幉锟犲礉閹达箑绀夌€光偓閸曨偆鍔﹀銈嗗笒閸婂綊寮抽渚囨闁绘劘灏欑粻濠氭煕閳轰礁顏€规洘枪椤﹀绱掗悩瀹犲妞ゎ亜鍟存俊鍫曞幢濡も偓椤洭姊虹粙鍖℃敾婵炶尙鍠庨锝夊箹娴e摜顓哄┑鐘亾閸ㄥ綊鏌婇敐鍛殾闁诡垶鍋婂顏堟⒒婵犲骸澧婚柛鎾跺枛瀵鎮㈢喊杈ㄦ櫓闂佷紮绲介張顒勫闯閺夋娓婚柕鍫濆暙閻忣亝淇婇銏犳殭闁伙絿鍏橀幃銏ゆ偂楠烆兘鏅犻弻鏇熷緞閸績鍋撻弴鈶哄顫濋懜鐢靛幗闂佺粯鏌ㄩ幗婊堟儗婵犲嫮纾肩紓浣姑ù顔锯偓瑙勬礃瀹€鎼佺嵁閹烘绠婚柛鎾茶兌濡插洦绻濆▓鍨灍闁挎洍鏅犲畷婊冣槈閵忊晜鏅e┑鐐叉▕娴滄繈鍩涢幋锔界厵缂佸鐏濋銏ゆ煟閹惧崬鍔﹂柡灞剧☉铻i柤濮愬€楅悡澶愭倵鐟欏嫭绀冮柛銊ユ健閻涱喖螣閼测晝锛滃┑鈽嗗灣缁垶鎮甸弽顓熲拻濞撴埃鍋撻柍褜鍓涢崑娑㈡嚐椤栨稒娅犻柟缁㈠枟閻撴瑦銇勯弴妤€浜剧紓浣哄У閻楃姴顕i锕€绠荤紓浣姑禍褰掓⒑閼测斁鎷¢柛鎿勭畵瀹曘儳鈧綆鍋傜换鍡涙煟閹板吀绨婚柍褜鍓氶悧鏇$亱婵炶揪缍€椤宕h箛娑欑厪闁割偅绻嶅Ο鍫ユ煛娴i潻韬柡宀嬬節瀹曞爼濡烽妷褌鐥梻浣瑰▕閺€杈╂暜閹烘绠掗梻浣瑰缁诲倿骞婅箛娑樼疅闁告縿鍎崇壕鐓庮熆鐠洪缚瀚伴柛鏂款儏鑿愰柛銉戝秷鍚銈冨灪濞茬喐鎱ㄩ埀顒勬煃閵夈儱甯犳繛锝庡櫍濮婄粯鎷呯粵瀣異闂佸摜濮靛畝绋跨暦閹达箑围濠㈣泛锕ラ悗顒勬⒑閸涘﹤濮﹂柛鐘崇墱婢规洟宕楅崗鐓庡伎濠碘槅鍨板ḿ锟犲传濞差亝鐓熼柟鍨缁夘喗鎱ㄦ繝鍕笡闁瑰嘲鎳樺畷顐﹀Ψ椤喓鍔岄埞鎴﹀煡閸℃ぞ绨诲┑鐐点€嬬换婵嬬嵁閸愵喗鍊烽柣鎴炆戝▍鍥⒑缁嬫寧婀扮紒瀣灦缁傚秴螖閸涱喒鎷洪梻鍌氱墛娓氭危閹绢喗鐓涢柛娑卞枤閻帡鏌熼鍡欑瘈闁诡喓鍨藉畷妤呮嚃閳轰礁绠伴梻鍌欑劍閹爼宕曢鈧鎻掆槈濞嗘埈娴勫┑鐘诧工閻楀﹪鎮¢崘顏呭枑婵犲﹤鐗嗙粈鍫熺箾閸℃鐛滈柤鏉挎健濮婃椽顢楅埀顒傜矓閹绢喗鍊块柛顭戝亖娴滄粓鏌熼崫鍕ラ柛蹇撶焸閺屾盯鎮㈤崫銉ュ绩闂佸搫鐬奸崰鏍х暦濞嗘挸围闁糕剝顨忔导锟�     濠电姷鏁告慨鐑藉极閸涘﹥鍙忛柣鎴f閺嬩線鏌涘☉姗堟敾闁告瑥绻橀弻锝夊箣閿濆棭妫勯梺鍝勵儎缁舵岸寮诲☉妯锋婵鐗婇弫楣冩⒑閸涘﹦鎳冪紒缁橈耿瀵鏁愭径濠庢綂闂佺粯锚濡﹤螞瀹€鍕拺閺夌偞澹嗛ˇ锕傛煥閺囥劋閭€殿喖顭烽崹楣冨箛娴e憡鍊梺纭呭亹鐞涖儵鍩€椤掆偓绾绢參顢欓幇鐗堚拻闁稿本鑹鹃埀顒佹倐瀹曟垿宕卞☉妯虹€梻渚囧墮缁夊瓨顢婇梻浣告啞濞诧箓宕规导鏉戠闁逞屽墴濮婃椽妫冨ù銈嗙洴瀹曘劑顢涘顒傜憿缂傚倸鍊搁崐鎼佸磹瀹勬噴褰掑炊閳哄啰顦╂繛鏉戝悑濞兼瑧澹曠憴鍕瘈闂傚牊渚楅崕蹇涙煢閸愵亜鏋涢柡灞诲妼閳规垿宕遍埡鍌傃囨⒑閸濆嫭鍣洪柣鎿勭節瀵鈽夊Ο閿嬵潔闂佸憡顨堥崑鐐烘倶瀹ュ鈷戦柛锔诲幖閸樻潙霉濠婂啰鍩f鐐插暙铻栭柛鎰ㄦ櫅閺嬪倿姊洪崨濠冨闁告挻鐩棟闁靛ň鏅滈埛鎴犵磽娴h偂鎴﹀箚閸垻纾肩紓浣贯缚缁犳挻銇勯弴顏嗙ɑ缂佺粯绻傞~婵嬵敇閻愭壆鐩庨梻浣藉吹閸嬬偟绮欓崼銉ョ劦妞ゆ巻鍋撻柛妯荤墬缁旂喖寮撮悙鈺傛杸闂佺粯鍔栧ḿ娆撴倶閿斿浜滈煫鍥ч瀹撳棙顨ラ悙宸剶闁轰礁鍟撮崺鈧い鎺戝€搁ˉ姘舵煕瑜庨〃鍡涙偂濞戙垺鐓曢柕澶堝灪濞呭懘鏌$€n偅鈷掔紒杈ㄥ浮閹晠鎳¢妶鍥ㄦ瘒闂備礁鎼惉濂稿窗閹捐鐒垫い鎺嶈兌閳洖鐣濋敐鍛仴妤犵偛锕畷姗€顢欓悾灞藉箺闂傚⿴鍋勫ú銈夋晝閵夈儮鏋嶅┑鐘叉处閻撴稓鈧厜鍋撻悗锝庡墰琚︽俊銈囧Х閸嬬偛鐜婚崸妤€鐒垫い鎺戝濞懷囨煙鐠囇呯瘈鐎规洘鑹鹃埥澶愬閳锯偓閹锋椽姊洪崨濠勭畵閻庢凹鍘奸敃銏″鐎涙ḿ鍘介梺鍐叉惈閿曘倝鎮橀敃鍌涚厽婵炴垵宕▍宥団偓瑙勬礀閻栧ジ銆佸Δ鍛劦妞ゆ帒鍊婚惌鍡涙煕瀹€鈧崑鐐烘偂閺囩喓绡€闂傚牊绋戦鈺呮煕閺冣偓缁捇寮婚敓鐘插窛妞ゆ挻绮屾禒顔尖攽椤旂》鍔熺紒顕呭灦楠炲繘宕ㄧ€涙ɑ鍎梺鑽ゅ枑婢瑰棝顢曟總鍛娾拻濞达絿鍎ら崵鈧梺纭咁嚋缁绘繈鐛崘顔肩<闁绘劦浜栭崑鎾寸瑹閳ь剙顕f禒瀣╅柕澹懐宓佹繝鐢靛Х閺佸憡鎱ㄧ€电硶鍋撳☉鎺撴珖缂佽京鍋為幆鏃堝煢閳ь剟寮ㄦ禒瀣厽闁归偊鍓欑痪褔鏌嶇紒妯荤闂囧绻濇繝鍌氼伀闁活厽甯楅〃銉╂倷閺夋垹浼岄梺纭呮珪缁捇骞冨▎鎾寸劵婵炴垶姘ㄥ▔鍧楁⒒閸屾瑦绁版い顐㈩槸閻e嘲螣鐞涒剝鐏冨┑鐐村灦閻熝囥€呴柨瀣瘈濠电姴鍊搁弳濠囨煛閳ь剚绂掔€n偆鍘撻梺瀹犳〃缁€渚€寮抽悙鐑樼厪闁搞儯鍔庣粻鏍煙娓氬灝濡界紒缁樼箞瀹曘劑顢氶崨顒€鎽嬮梻鍌欒兌閹虫挸顕i崼鏇炵闁告劘灏欓弳锕傛煟閺冨倵鎷¢柡浣告喘閺岋綁寮崑鍐茬秺瀵煡骞栨担鍏夋嫼闁荤姴娲ゅ鍫曞船婢跺浜滄い鎰╁焺濡叉悂鎮¢妶澶嬬厽闁哄倹宕橀懡锛勭磽閸屾稒鐨戦柟鍙夋倐瀵噣宕煎☉鎺戜壕濞达絽澹婂ḿ鈺呮偣鏉炴壆绉块柕濞炬櫆閻撱儵鏌¢崒姘变虎闁抽攱妫冮弻锝夋晝閳ь剟鎮ч幘鎰佹綎婵炲樊浜滅粻褰掓煟閹邦厼绲诲┑顔肩焸濮婃椽宕ㄦ繝鍐弳缂備礁顦伴幐鎶藉春閵忕媭鍚嬪璺衡看濞煎﹪姊洪棃娑氬婵☆偄鐭傞獮蹇撁洪鍛幗闂佺粯锚閸樻牠鎳滈鍫熺厱闁哄倽鍎荤€氫即鏌嶇拠鑼ф鐐叉喘閹囧醇閵忕姴绠ラ梻鍌欑閹诧繝宕归鐐茬9闁哄稁鍋€閸嬫挸顫濋悙顒€顏�

45fan.com - 路饭网

搜索: 您的位置主页 > 网络频道 > 阅读资讯:怎么样VB“破解”有时间限制的程序?

怎么样VB“破解”有时间限制的程序?

2016-09-05 08:36:53 来源:www.45fan.com 【

怎么样VB“破解”有时间限制的程序?

用VB“破解”有时间限制的程序


张 胜

你是否经常遇到有时间限制的程序?我等懒人尤其对此特别反感,可惜囊中羞涩,只好反复修改其系统日期而使自己多用几次此软件——实在是辛苦!于是使用“Anyday32”,可惜也太麻烦了;再后使用“时光倒流”,也不好用,而且——居然还有Bugs!......看样子只好自己动手做“VB软件DIY”了。
一、问题所在
有时间限制的程序大都是依靠在启动过程中检测系统日期,再与其记录的第一次使用日期(放于注册表或特殊文件中)进行对比检测是否试用期已到,若试用期已到,可能会在注册表中作一定的标记,使下次程序不可用。
二、解决问题
我们一般可以通过修改系统时间来使用此类程序,当然在其作过过期标志后可能此“大法”就无效了;也有一些程序的检测细化到了小时,那我们只能将时间也一块改了。
三、DIY中的思路及注意事项
我们可以在自己的程序中先修改系统日期,再启动相应的有时间限制的程序,过一段时间后再将系统日期改回来。
注意:在等待外部程序检测系统日期的等待过程中,系统日期已经改变,那么我们改回的系统日期将是错误的!因此我们要进行一定的检测,以防止此类错误的发生。
四、开始软件DIY
这里我们为方便控制,使用Access数据库进行软件编制。
数据库中表的设计:

字段名

类型

长度

备注

程序名称

Text

20

程序的标识,以便于管理

启动程序

Text

255

实际启动的程序

启动日期

Date/Time

8

应改回的系统日期

窗体及控件设计:

名称

类型

设置

Form1

窗体

BorderStyle=1

Command1

command

Caption="执行(&R)"

Command2

command

Caption="退出(&Q)"

Check1

CheckBox

Caption="启动程序后自动关闭本软件"

Timer1

Timer

Enabled=False;Interval=5000

Data1

Data

DatabaseName=数据库路径及名称

RecordSource=数据表名称

CommonDialog1

CommonDialog

Filter="请选择您想要启动的程序 (*.*)"

DBGrid1

DBGrid

AllowaddNew=True;AllowDelete=True;DataSource=Data1

CommonDialog和DBGrid控件需要另外加载,其中还需在DBGrid的属性页中进行一定的数据库挂接和设置,要在其属性页中“布局”中的第二列的“按钮”选中。
以下是本小软件的源代码:
Option Explicit
'启动外部应用程序的API函数定义
Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" _
(ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, _
ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
 
Dim OldDate As Date '保存系统日期
 
Private Sub Command1_Click()
If Not Data1.Recordset.EOF Then '若数据库正在添加记录则不动作
Date = Data1.Recordset(2) '改系统时间
Call ShellExecute(0, vbNullString, Data1.Recordset(1), vbNullString, vbNullString, vbOK) '启动外部程序
Me.Enabled = False '屏蔽其他操作
Timer1.Enabled = True '启动延时记时器
End If
End Sub
 
Private Sub Command2_Click()
End '关闭本系统
End Sub
 
Private Sub DBGrid1_BeforeUpdate(Cancel As Integer)
If MsgBox("记录改变吗?", vbYesNo + vbQuestion) <> vbYes Then Cancel = True '是否更新数据库控制
End Sub
 
Private Sub DBGrid1_ButtonClick(ByVal ColIndex As Integer)
On Error GoTo errdeal '打开错误监测
CommonDialog1.CancelError = True '系统对话框错误控制
CommonDialog1.ShowOpen '打开系统对话框
If CommonDialog1.filename <> "" Then DBGrid1.Text = CommonDialog1.filename '写入要启动的程序信息
errdeal:
End Sub
 
Private Sub Form_Load()
OldDate = Date '保存系统时间
Call Parameter '获取系统启动时的参数
End Sub
 
Private Sub Timer1_Timer()’五秒钟后恢复
If Format(Time, "HH:MM:SS") < "00:00:05" Then OldDate = OldDate + 1 '防止在接近零时时的日期恢复错误
Date = OldDate '恢复系统时间
Me.Enabled = True '恢复正常操作
Timer1.Enabled = False '屏蔽延时记时器
If Check1.Value = 1 Then End '是否关闭本系统
End Sub
 
Private Sub Parameter() '系统参数处理
If Command <> "" Then
'查找相应的启动程序
Data1.RecordSource = "Select * From [StartProgram] Where [程序名称]='" & Trim(Command) & "'"
Data1.Refresh
If Not (Data1.Recordset.EOF And Data1.Recordset.BOF) Then
Me.Hide '隐藏本系统
Check1.Value = 1 '设置关闭标志
Command1_Click '激活本系统的执行事件
Else
'未找到处理
MsgBox "没有此启动程序!", 16, Me.Caption '错误提示
End '关闭
End If
End If
End Sub
五、小 结
本小软件可启动多个有时间限制的程序,也可以通过命令参数(格式是:本程序名 要启动的程序名称)一次启动一个程序,可用于作相应的快捷方式(和Anyday32类似),让你放心去使用。
程序编完了,但还需你的完善和润色,遇到问题自己解决——我是软件DIY人!

 

本文地址:http://www.45fan.com/a/question/72523.html
Tags: 限制 时间 破解
编辑:路饭网
关于我们 | 联系我们 | 友情链接 | 网站地图 | Sitemap | App | 返回顶部