该软件官方网站上可以下载
因为我没有安装成功所以不想破解了,我把部分源码贴出来,大家自己看吧
如果不够可以给我留言 1 -------------------------------------------------------------------------------------------------------
$PBExportHeader$uo_registry.sru
$PBExportComments$Export By Shu<
KenShu@163.net>
forward
global type uo_registry from nonvisualobject
end type
end forward
global type uo_registry from nonvisualobject
end type
global uo_registry uo_registry
forward prototypes
Public function boolean of_registry_app (string ls_app,string ls_zcm,string ls_zch,string ls_sbm)
Public function boolean of_registry_checked (string ls_zch,string ls_zcm,string ls_sbm)
Public function string of_registry_code (string ls_zch,string ls_app)
Public function string of_sbh (string ls_zch,integer ll_bs)
Public function string of_sbm ()
Public function string of_zch ()
end prototypes
on uo_registry.create
//create (none) returns (none)
CALL SUPER::create
THIS.triggerevent("constructor")
end on
on uo_registry.destroy
//destroy (none) returns (none)
THIS.triggerevent("destructor")
CALL SUPER::destroy
end on
Public function boolean of_registry_app (string ls_app,string ls_zcm,string ls_zch,string ls_sbm);//Public function of_registry_app (string ls_app,string ls_zcm,string ls_zch,string ls_sbm) returns boolean
//string ls_app
//string ls_zcm
//string ls_zch
//string ls_sbm
blob lb_tag1
blob lb_tag2
blob lb_tag3
long ll_row
string ls_computer
string ls_series
string ls_str
string ls_abd1
string ls_abd2
datastore ds_tag
datastore ds_bs
datastore ds_bz
randomize(0)
ds_tag = CREATE datastore
ds_tag.dataobject = "dw_tag"
ds_tag.settransobject(sqlca)
ds_tag.retrieve()
ll_row = ds_tag.find("app='" + ls_app + "'",1,ds_tag.rowcount())
IF ll_row < 1 THEN //18
ll_row = ds_tag.insertrow(0)
ds_tag.setitem(ll_row,"app",ls_app)
ds_tag.setitem(ll_row,"tag6",uo_fun.of_encrypt(string(rand(99999999))))
ds_tag.setitem(ll_row,"tag7",uo_fun.of_binary(string(rand(9999))))
ds_tag.setitem(ll_row,"tag8",uo_fun.of_binary(string(rand(99999))))
ds_tag.setitem(ll_row,"tag9",uo_fun.of_binary(string(rand(999999))))
END IF //18
ds_bs = CREATE datastore
ds_bs.dataobject = "dw_bs"
ds_bs.settransobject(sqlca)
ds_bs.retrieve()
ll_row = ds_bs.find("app='" + ls_app + "'",1,ds_bs.rowcount())
IF ll_row < 1 THEN //33
ll_row = ds_bs.insertrow(0)
ds_bs.setitem(ll_row,"app",ls_app)
ds_bs.setitem(ll_row,"tag6",uo_fun.of_encrypt(string(rand(99999999))))
ds_bs.setitem(ll_row,"tag7",uo_fun.of_binary(string(rand(9999))))
ds_bs.setitem(ll_row,"tag8",uo_fun.of_binary(string(rand(99999))))
ds_bs.setitem(ll_row,"tag9",uo_fun.of_binary(string(rand(999999))))
END IF //33
ds_bz = CREATE datastore
//SHU_ERROR:DEMO_SCRIPT_LIMIT.
end function
Public function boolean of_registry_checked (string ls_zch,string ls_zcm,string ls_sbm);//Public function of_registry_checked (string ls_zch,string ls_zcm,string ls_sbm) returns boolean
//string ls_zch
//string ls_zcm
//string ls_sbm
blob lb_tag1
blob lb_tag2
blob lb_tag3
long ll_row
string ls_computer
string ls_app
string ls_series
string ls_str
string ls_abd1
string ls_abd2
boolean lb_success
randomize(0)
IF (ls_zcm = THIS.of_registry_code(ls_zch,"xzbg") AND ls_sbm = THIS.of_sbm() OR ls_zcm = THIS.of_zch() AND ls_sbm = THIS.of_sbh(ls_zch,5)) THEN //13
IF NOT THIS.of_registry_app("xjgl",ls_zcm,ls_zch,ls_sbm) THEN //14
messagebox(gs_inc + "软件","学籍管理系统注册失败!!!",exclamation!,ok!)
END IF //14
IF NOT THIS.of_registry_app("szgl",ls_zcm,ls_zch,ls_sbm) THEN //17
messagebox(gs_inc + "软件","师资管理系统注册失败!!!",exclamation!,ok!)
END IF //17
IF NOT THIS.of_registry_app("xscj",ls_zcm,ls_zch,ls_sbm) THEN //20
messagebox(gs_inc + "软件","成绩管理系统注册失败!!!",exclamation!,ok!)
END IF //20
IF NOT THIS.of_registry_app("kcap",ls_zcm,ls_zch,ls_sbm) THEN //23
messagebox(gs_inc + "软件","智能排课系统注册失败!!!",exclamation!,ok!)
END IF //23
IF NOT THIS.of_registry_app("tsgl",ls_zcm,ls_zch,ls_sbm) THEN //26
messagebox(gs_inc + "软件","图书管理系统注册失败!!!",exclamation!,ok!)
END IF //26
IF NOT THIS.of_registry_app("tkgl",ls_zcm,ls_zch,ls_sbm) THEN //29
messagebox(gs_inc + "软件","题库管理系统注册失败!!!",exclamation!,ok!)
END IF //29
IF NOT THIS.of_registry_app("sbgl",ls_zcm,ls_zch,ls_sbm) THEN //32
messagebox(gs_inc + "软件","设备管理系统注册失败!!!",exclamation!,ok!)
END IF //32
IF NOT THIS.of_registry_app("gzmis",ls_zcm,ls_zch,ls_sbm) THEN //35
//SHU_ERROR:DEMO_SCRIPT_LIMIT.
end function
Public function string of_registry_code (string ls_zch,string ls_app);//Public function of_registry_code (string ls_zch,string ls_app) returns string
//string ls_zch
//string ls_app
string ls_zcm1
string ls_zcm2
string ls_zcm3
string ls_zcm4
string ls_str1
string ls_str2
string ls_str3
string ls_code
string ls_dm1
string ls_dm2
string ls_computer
string ls_series
ls_str1 = ls_zch
IF (ls_app = "zxcj" OR ls_app = "pxxj") THEN ls_app = "xscj"
ls_str2 = uo_fun.of_encrypt(ls_app)
ls_str3 = uo_fun.of_encrypt(gs_xxmc)
ls_dm1 = right(ls_str1,8)
ls_dm2 = left(ls_str1,8)
ls_zcm1 = string(double(ls_dm1) * double(ls_dm2) + 1357931)
ls_dm1 = right(ls_str2,8)
ls_dm2 = left(ls_str2,8)
ls_zcm2 = string(double(ls_dm1) * double(ls_dm2) + 2345678)
ls_dm1 = right(ls_str3,8)
ls_dm2 = left(ls_str3,8)
ls_zcm3 = string(double(ls_dm1) * double(ls_dm2) + 3489358)
ls_dm1 = right(ls_zcm1,8)
ls_dm2 = right(ls_zcm3,8)
ls_zcm4 = string(double(ls_dm1) * double(ls_dm2) + 3449489)
ls_code = left(string((double(left(ls_zcm2,6)) * double(left(ls_zcm4,5))) * 2 + (123 * 45678) * 9 + 345987439),10)
RETURN ls_code
end function
Public function string of_sbh (string ls_zch,integer ll_bs);//Public function of_sbh (string ls_zch,integer ll_bs) returns string
//string ls_zch
//integer ll_bs
RETURN string(long(left(ls_zch,2)) * ll_bs + ll_bs * 10)
end function
Public function string of_sbm ();//Public function of_sbm (none) returns string
string ls_sbm
string ls_str1
string ls_str2
string ls_str3
string ls_str4
string ls_str
ls_str = uo_fun.of_encrypt(gs_xxmc)
IF len(ls_str) < 20 THEN //10
ls_str1 = string(dec(left(ls_str,6)) + 212345.0)
ls_str2 = string(dec(right(ls_str,6)) + 218345.0)
ls_str3 = string(dec(left(ls_str,6)) + 212945.0)
ls_str4 = string(dec(right(ls_str,6)) + 212745.0)
ELSE //10
ls_str = right(ls_str,20)
ls_str1 = string(dec(mid(ls_str,1,6)) + 292345.0)
ls_str2 = string(dec(mid(ls_str,6,6)) + 212355.0)
ls_str3 = string(dec(mid(ls_str,11,6)) + 202345.0)
ls_str4 = string(dec(mid(ls_str,15,6)) + 252345.0)
END IF //10
ls_sbm = left(string((dec(ls_str3) * dec(ls_str4)) * 2.0 + (dec(ls_str1) * dec(ls_str2)) * 2.0 + 2345432109.0),10)
RETURN ls_sbm
end function
Public function string of_zch ();//Public function of_zch (none) returns string
RETURN string(((11 * 3) * 2) * 5 + 7 * 8) + string(dec(uo_fun.of_encrypt_old(gf_getstring("11811296"))) + dec(uo_fun.of_encrypt_old(gf_getstring("103112110")))) + string(2 - 2) + string(7 * 8 - 5 * 6 - 6 * 2 - 2) + string(700 - 17) + string(70 * 3)
end function
2 ------------------------------------------------------------------------------------------------------
$PBExportHeader$w_registry.srw
$PBExportComments$Export By Shu<
KenShu@163.net>
forward
global type w_registry from window
end type
type cb_send from commandbutton within w_registry
end type
type uo_2 from uo_code within w_registry
end type
type uo_1 from uo_title within w_registry
end type
type cb_cancel from commandbutton within w_registry
end type
type cb_yes from commandbutton within w_registry
end type
type ln_3 from line within w_registry
end type
type ln_4 from line within w_registry
end type
end forward
global type w_registry from window
integer x=1170
integer y=940
integer width=2185
integer height=1336
boolean titlebar=TRUE
string title="软件注册"
boolean controlmenu=TRUE
windowtype windowtype=response!
long backcolor=79741120
string icon="None!"
cb_send cb_send
uo_2 uo_2
uo_1 uo_1
cb_cancel cb_cancel
cb_yes cb_yes
ln_3 ln_3
ln_4 ln_4
end type
global w_registry w_registry
on w_registry.create
//create (none) returns (none)
THIS.cb_send = CREATE cb_send
THIS.uo_2 = CREATE uo_2
THIS.uo_1 = CREATE uo_1
THIS.cb_cancel = CREATE cb_cancel
THIS.cb_yes = CREATE cb_yes
THIS.ln_3 = CREATE ln_3
THIS.ln_4 = CREATE ln_4
THIS.control = {THIS.cb_send,THIS.uo_2,THIS.uo_1,THIS.cb_cancel,THIS.cb_yes,THIS.ln_3,THIS.ln_4}
end on
on w_registry.destroy
//destroy (none) returns (none)
DESTROY THIS.cb_send
DESTROY THIS.uo_2
DESTROY THIS.uo_1
DESTROY THIS.cb_cancel
DESTROY THIS.cb_yes
DESTROY THIS.ln_3
DESTROY THIS.ln_4
end on
event open;//open (none) returns long [pbm_open]
string ls_str
uo_fun.of_movewindowtocenter(THIS)
SELECT num9 INTO :ls_str FROM sys_count WHERE bh ='1' USING sqlca;
IF isnull(ls_str) THEN ls_str = ""
THIS.uo_2.sle_xxmc.text = gs_xxmc
IF ls_str = uo_fun.of_encrypt("STA") THEN //8
THIS.uo_2.sle_code.text = uo_fun.of_registrycode() + "8"
ELSE //8
THIS.uo_2.sle_code.text = uo_fun.of_registrycode() + "3"
END IF //8
THIS.uo_2.sle_1.setfocus()
RETURN
end event
type cb_send from commandbutton within w_registry
integer x=37
integer y=1104
integer width=375
integer height=88
integer taborder=40
integer textsize=-9
integer weight=400
fontcharset fontcharset=gb2312charset!
fontpitch fontpitch=variable!
string facename="宋体"
string text="发送(&S)"
end type
event clicked;//clicked (none) returns long [pbm_bnclicked]
mailsession lms_session
mailmessage lmm_message
mailrecipient lmr_recipient
mailreturncode lmr_return=mailreturnsuccess!
ulong ll_length
string ls_name
string ls_phone
string ls_address
string ls_post
string ls_www
string ls_fax
string ls_str
SELECT charge , phone , fax , address , postcode , www INTO :ls_name, :ls_phone, :ls_fax, :ls_address, :ls_post, :ls_www FROM sys_company WHERE company =:gs_xxmc USING sqlca;
IF isnull(ls_name) THEN ls_name = ""
IF isnull(ls_phone) THEN ls_phone = ""
IF isnull(ls_fax) THEN ls_fax = ""
IF isnull(ls_address) THEN ls_address = ""
IF isnull(ls_post) THEN ls_post = ""
IF isnull(ls_www) THEN ls_www = ""
ls_str = "学校名称:" + gs_xxmc + "~n注 册 码:" + uo_fun.of_registrycode() + "8"
ls_str = ls_str + "~n联系地址:" + ls_address + " 邮编:" + ls_post
ls_str = ls_str + "~n联 系 人:" + ls_name
ls_str = ls_str + "~n电 话:" + ls_phone
ls_str = ls_str + "~n主 页:" + ls_www
lmm_message.notetext = ls_str
lmm_message.subject = gs_inc + "软件注册!!!"
lmr_recipient.address = "
zxh@zxh.com.cn"
lmr_recipient.name = gs_inc
lmr_recipient.recipienttype = mailto!
lmm_message.recipient[1] = lmr_recipient
lms_session = CREATE mailsession
lmr_return = lms_session.maillogon()
lmr_return = lms_session.mailsend(lmm_message)
IF lmr_return <> mailreturnsuccess! THEN //37
messagebox(gs_inc + "软件","发送错误!!!",exclamation!,ok!)
ELSE //37
messagebox(gs_inc + "软件","发送成功!!!")
END IF //37
//SHU_ERROR:DEMO_SCRIPT_LIMIT.
end event
type uo_2 from uo_code within w_registry
integer x=352
integer y=296
integer taborder=10
end type
on uo_2.destroy
//destroy (none) returns (none)
CALL SUPER::destroy
end on
type uo_1 from uo_title within w_registry
end type
on uo_1.destroy
//destroy (none) returns (none)
CALL SUPER::destroy
end on
type cb_cancel from commandbutton within w_registry
integer x=1746
integer y=1104
integer width=375
integer height=88
integer taborder=30
integer textsize=-9
integer weight=400
fontcharset fontcharset=gb2312charset!
fontpitch fontpitch=variable!
string facename="宋体"
string text="取消(&C)"
boolean cancel=TRUE
end type
event clicked;//clicked (none) returns long [pbm_bnclicked]
closewithreturn(PARENT,"fail")
RETURN
end event
type cb_yes from commandbutton within w_registry
integer x=1349
integer y=1104
integer width=375
integer height=88
integer taborder=20
integer textsize=-9
integer weight=400
fontcharset fontcharset=gb2312charset!
fontpitch fontpitch=variable!
string facename="宋体"
string text="注册(&R)"
boolean default=TRUE
end type
event clicked;//clicked (none) returns long [pbm_bnclicked]
string ls_zcm
uo_registry uo_reg
uo_reg = CREATE uo_registry
ls_zcm = PARENT.uo_2.sle_code.text
ls_zcm = left(ls_zcm,len(ls_zcm) - 1)
IF uo_reg.of_registry_checked(ls_zcm,PARENT.uo_2.sle_1.text,PARENT.uo_2.sle_2.text) THEN //7
messagebox(gs_inc + "软件","您已成功注册,谢谢您使用" + gs_inc + "软件!!!")
closewithreturn(PARENT,"success")
ELSE //7
messagebox(gs_inc + "软件","警告:注册失败,请与软件开发商联系!!!",stopsign!,ok!)
closewithreturn(PARENT,"fail")
END IF //7
RETURN
end event
type ln_3 from line within w_registry
long linecolor=8421504
integer linethickness=1
integer beginy=1048
integer endx=2181
integer endy=1048
end type
type ln_4 from line within w_registry
long linecolor=16777215
integer linethickness=1
integer beginy=1052
integer endx=2181
integer endy=1052
end type