?? vb程序的加密 .txt
字號(hào):
VB程序的加密
1.讓軟件只能在軟盤(pán)上運(yùn)行
利用App對(duì)象的Path屬性返回可執(zhí)行文件的路徑進(jìn)行判斷。
Private Sub Form_Load()
Dim a As String
Dim b as String
a=App.Path '獲得可執(zhí)行文件的路徑
b=Left(a,1) '取出第一個(gè)字符If b<>"A"
Then MsgBox "本軟件只能在軟盤(pán)運(yùn)行!":End
End Sub
2.在Internet上放置你的密碼
哇,沒(méi)有搞錯(cuò)吧,放在網(wǎng)上也叫密碼?沒(méi)錯(cuò)!把密碼放到網(wǎng)上可能更安全些。Office2000還沒(méi)出來(lái)微軟就聲稱要讓用戶在網(wǎng)上注冊(cè),以后還可能把office搬到網(wǎng)上實(shí)現(xiàn)真正的網(wǎng)上辦公。如果您制作的是網(wǎng)絡(luò)軟件,不妨干脆把密碼放到Internet上,這樣即使別人翻遍你的硬盤(pán)也一無(wú)所獲。
現(xiàn)在很多網(wǎng)站都提供免費(fèi)個(gè)人主頁(yè)空間,這無(wú)疑為你存放密碼提供理想場(chǎng)所,你需要在網(wǎng)頁(yè)某處放置一文本,或者將網(wǎng)頁(yè)某處的文本當(dāng)作密碼。這樣,只要能訪問(wèn)到該網(wǎng)頁(yè),就可以用關(guān)鍵字搜索到該段字符串。
假設(shè)你的主頁(yè)為www.home.com/mypage.htm在該頁(yè)上有一文本mypassword:1234其中“mypassword:”是關(guān)鍵字,“1234”是密碼。關(guān)鍵字與密碼相連,主要用于確定密碼的位置。注意關(guān)鍵字在網(wǎng)頁(yè)的唯一性,以免判斷密碼位置發(fā)生錯(cuò)誤。
右鍵單擊工具欄,在彈出的菜單中選擇部件,在控件中選擇Microsoft Internet Transfer Control 6.0,單擊確定。雙擊工具箱中新出現(xiàn)的Inet圖標(biāo),在啟動(dòng)窗體中加入Internet Transfer控件Inet1 。如果你是電話撥號(hào)上網(wǎng),請(qǐng)使用該控件的缺省屬性;如果在Intranet上,可能需要提供代理服務(wù)器才能連接到Internet上,特別是有防火墻的Intranet,需將AccessType屬性設(shè)置為icNamedProxy(2),再加入代碼 Inet1.Proxy="myProxyName"。
在程序中加入以下代碼:
Private Sub Form1_Load()
Dim lo As Variant
Dim text As String
Dim p1 As Long
Dim p2 As Long
Dim p As String
Dim website As String
website="http://www.home.com/mypage.htm"
Open ("c:\password.txt") For Output As #1 '建立文本文件放置HTML文檔
Write #1,Inet1.OpenURL(website) '調(diào)用OpenURL方法返回指定的HTML文檔,在打開(kāi)的文件里寫(xiě)入該文檔的源代碼,如果檢測(cè)到未與網(wǎng)絡(luò)連接則自動(dòng)彈出撥號(hào)連接窗口,連接后程序才繼續(xù)運(yùn)行。
Close #1
Open "c:\password.txt" For Binary As #2 '打開(kāi)文件準(zhǔn)備查找關(guān)鍵字
lo=LOF(2) '獲取password.txt的大小
text=String(lo," ") '設(shè)定text的長(zhǎng)度
Get #2,1,text '將整個(gè)文件讀入字符串變量
p1=InStr(1,text,"password:") '查找關(guān)鍵字password在文件中的位置
If p1=0 Then MsgBox "該文件未存放密碼":End '找不到關(guān)鍵字則函數(shù)返回0值
p2=p1+Len("password") '計(jì)算密碼的位置
p=Mid(text,p2,4) '取出4位數(shù)的密碼,注意p2須定義為L(zhǎng)ong
Close #2
Kill("c:\password.txt") '密碼已取出,刪除臨時(shí)文件
a=InputBox("請(qǐng)輸入密碼")
If a<>p Then MsgBox "密碼錯(cuò)誤":End
End Sub
注意如果聯(lián)系不到服務(wù)器或找不到指定的HTML文檔,不會(huì)發(fā)生錯(cuò)誤,而會(huì)返回一些代碼,不同的服務(wù)器返回的代碼可能不同。
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -