新聞中心
經(jīng)過(guò)長(zhǎng)時(shí)間學(xué)習(xí)VB.NET,于是和大家分享一下,看完本文你肯定有不少收獲,希望本文能教會(huì)你更多東西。以前我做程序,版權(quán)使用協(xié)議信息總是放在一個(gè)txt文本文件中,打包時(shí)和可執(zhí)行文件放在一起,在安裝時(shí)釋放到程序的安裝路徑,然后再打開(kāi)使用。這種做法有兩大壞處,一是這個(gè)文件很容易被其它人修改,二是話(huà)這種做法太不成熟了?,F(xiàn)在我使用一個(gè)新的方法,就是將協(xié)議和可執(zhí)行文件結(jié)合在一起,在程序運(yùn)行時(shí)讀出使用,當(dāng)然這就全靠資源的作用了。

10年積累的網(wǎng)站建設(shè)、成都網(wǎng)站設(shè)計(jì)經(jīng)驗(yàn),可以快速應(yīng)對(duì)客戶(hù)對(duì)網(wǎng)站的新想法和需求。提供各種問(wèn)題對(duì)應(yīng)的解決方案。讓選擇我們的客戶(hù)得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認(rèn)識(shí)你,你也不認(rèn)識(shí)我。但先網(wǎng)站設(shè)計(jì)后付款的網(wǎng)站建設(shè)流程,更有克州免費(fèi)網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。
示例 在net中可執(zhí)行文件中嵌入一個(gè)文本文件步驟如下:
1、在VB.net中新建一個(gè)項(xiàng)目,類(lèi)型選擇windows應(yīng)用程序,項(xiàng)目名稱(chēng)改為resourcesample2。
2、點(diǎn)擊項(xiàng)目菜單,選擇添加現(xiàn)有項(xiàng),接著會(huì)彈出一個(gè)文件對(duì)話(huà)框,將文件類(lèi)型改為所有文件后,選擇要嵌入的txt文件(其實(shí)這時(shí)你可選擇任意文件,只要你喜歡*-)。接著你會(huì)在解決方案資源管理器中發(fā)現(xiàn)你新加入的文件名。如圖:
3、關(guān)鍵的一步到了,在解決方案資源管理器中點(diǎn)擊你剛加入的文件名,然后在屬性窗體中將 "加成操作" 這一屬性改為"嵌入的資源",這將告訴net,剛加入的文件將會(huì)作為資源鏈接進(jìn)VB.NET可執(zhí)行文件中。留意一下文件名哦,這在后面的程序中也很重要,強(qiáng)烈建議使用小寫(xiě)文件名!如下圖:
4、接下就是在程序中用代碼讀出這個(gè)文件的內(nèi)容。
在Form1_Click事件中加入代碼,如下所示:
- Private Sub Form1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Click
- Dim tobjStream As IO.Stream = Me.GetType.Assembly.GetManifestResourceStream("resourcesample2.License.txt")
- Dim tobjStreamReader As New IO.StreamReader(tobjStream, System.Text.Encoding.Default)
- Dim tstrLicense As String = tobjStreamReader.ReadToEnd
- '如果是圖象就可以使用dim tobjBMP as new bmp(tobjstrem)的方法直接得到資源內(nèi)容
- MessageBox.Show(tstrLicense)'顯示剛才讀得的結(jié)果
- End Sub
在此對(duì)上述代碼進(jìn)行一點(diǎn)解釋?zhuān)琻et是通過(guò)Assembly的GetManifestResourceStream讀出嵌入在VB.NET可執(zhí)行文件的資源并以IO.Stream對(duì)象返回(反正得到了這個(gè)流,就好象你時(shí)進(jìn)行文件流操作,讀/寫(xiě)到磁盤(pán)或象我一樣在程序內(nèi)部處理都由你自己決定了)。這個(gè)方法的唯一參數(shù)是資源的唯一標(biāo)識(shí),是按如下方式組成的:程序集的根命名空間+"."+資源在屬性窗口顯示的文件名(這是區(qū)分大小寫(xiě)的,在上文已提醒你注意了哦,而且這個(gè)標(biāo)識(shí)法在C#中是不同的,別問(wèn)我為什么,誰(shuí)叫你不和我一樣使用VB.net,哼8-)。
程序集的根命空間的名你可以從項(xiàng)目菜單下的XXXX(XXXX是你的項(xiàng)目名稱(chēng),可不要認(rèn)為是罵人的話(huà)8-)屬性中看到:
其余的代碼就是以流方式讀文件了,很簡(jiǎn)單吧。
5、按生成菜單下的生成解決方案,然后到你可執(zhí)文件的目錄下看看,你會(huì)發(fā)現(xiàn)除了可執(zhí)行文件外沒(méi)有別的文本文件,因?yàn)槲谋疚募岩再Y源的方式存在于VB.NET可執(zhí)行文件中啦。運(yùn)行一下看看效果啊(一些想做黑客的菜鳥(niǎo)又有什么怪怪的想法,藏木馬?……)
資源的使用就介紹到此為至吧,窗外依然小雨菲菲,在虛幻的網(wǎng)絡(luò)和殘酷的現(xiàn)實(shí)邊緣排徊久了,寫(xiě)文章都有點(diǎn)怪怪的,請(qǐng)大伙兒原諒,祝大伙編程愉快。
分享文章:教你如何在VB.NET可執(zhí)行文件中嵌入一個(gè)文本文件
網(wǎng)頁(yè)地址:http://m.5511xx.com/article/cohpsei.html


咨詢(xún)
建站咨詢(xún)
