• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      “文件粉碎機”的VB程序?qū)崿F(xiàn)

      2007-08-25 01:30:42柏昌順
      智能計算機與應(yīng)用 2007年4期
      關(guān)鍵詞:文件名文件夾控件

      柏昌順

      摘要:描述了文件刪除的原理?!拔募鬯闄C”的原理及其應(yīng)用,并介紹了以VB程序?qū)崿F(xiàn)“文件粉碎機”的整個過程。

      關(guān)鍵詞:文件粉碎機VBAPI函數(shù)Dir函數(shù)

      “文件粉碎機”能夠?qū)⑽募氐椎匿N毀的一種程序。其原理就是將需要銷毀的文件所占用的空間使用無意義的符號重新填充一遍,然后再將文件刪除,從而達到完全刪除文件的目的。

      1界面的設(shè)計

      (1)啟動VB,新建一個標準EXEDialog Control 6.0部件:從“工程”菜單中選擇“部件”命令,打開“部件”對話框。然后在Microsoft Common DialogControl 6.0部件前的復選框中打勾;(3)在forml窗體上依次創(chuàng)建一個ListBox.一個CommonDialog,一個Pro-gressBar及五個Command控件,屬性設(shè)置。設(shè)計完成后效果。

      2“添加文件”功能的設(shè)計

      “添加文件”命令的功能主要是利用CommonDialog控件顯示“打開”對話框,將待粉碎的文件加入到列表框中。該功能的難點在于文件的多選(利用etrl或shift鍵的配合,一次選擇多個文件),及其多選后將每個文件從返回的filename中分離出來。通常情況下CommonDialog控件是只能單選的,也就是一次只能選擇一個文件。如果要實現(xiàn)多選,則需將commondialog控件的flags屬性設(shè)置為:cdlOFNAllow-Multiselect+cdlOFNExolorer。

      另外,我們還必需掌握“打開”對話框的返回值filename的格式。返回的filename是一個字符串,當僅選擇一個文件時返回值是文件的完整路徑和文件名;如果選擇的是多個文件,則返回字符串的格式為:路徑文件1文件2……文件n,路徑及文件名之間以空格隔開。實現(xiàn)方法如下:

      3“添加目錄”功能的設(shè)計

      “添加目錄”功能主要是用來將所選擇目錄及其子目錄里的所有文件都加入到待粉碎列表框中?!疤砑幽夸洝惫δ芤彩潜鞠到y(tǒng)中的一個難點。在VB中雖然為我們提供了DirveListBox(驅(qū)動器列表),DirListBox(目錄列表)。FileListBox(文件列表),CommonDia-log(通用對話框)等控件,這些控件用來瀏覽文件及文件夾或選擇文件時比較好用,但要用他們來實現(xiàn)添加目錄的功能還是比較困難的。本文使用了SHBrowseForFolder和SHGetPathFro-mlDList兩個API函數(shù)來顯示目錄選擇對話框,另外編寫了一個findfih過程實現(xiàn)對文件夾的遍歷。該過程利用VB提供的一個檢測文件是否存在的函數(shù)Dir和動態(tài)數(shù)組對文件夾以廣度優(yōu)先的順序進行遍歷。

      3.1 API函數(shù)使用說明

      使用API函數(shù)需要聲明DLL過程,在代碼窗口的“聲明”部分增加一個Declare語句。如該過程返回一個值,應(yīng)將其聲明為Function,格式如下:

      如果過程沒有返回值,可將其聲明為Sub,格式如下:

      3.2Dir函數(shù)使用說明

      Dir函數(shù)返回一個String,用以表示一個文件名、目錄名或文件夾名稱,它必須與指定的模式或文件屬性、或磁盤卷標相匹配。語法:Dir[(pathname[,attributes])],Dir函數(shù)的語法具有以下幾個部分:

      在第一次調(diào)用Dir函數(shù)時,必須指定pathname,否則會產(chǎn)生錯誤。如果也指定了文件屬性,那么就必須包括pathname,Dir會返回匹配pathname的第一個文件名。若想得到其它匹配pathname的文件名,再一次調(diào)用Dir。且不要使用參數(shù)。如果已沒有合乎條件的文件,則Dir會返回一個零長度字符串("")。一旦返回值為零長度字符串,并要再次調(diào)用Dir時,就必須指定pathname,否則會產(chǎn)生錯誤。不必訪問到所有匹配當前pathname的文件名,就可以改變到一個新的pathname上,但不能以遞歸方式來調(diào)用Dir函數(shù)。以vbDirectory屬性來調(diào)用Dir不能連續(xù)返回子目錄。

      3.3實現(xiàn)代碼如下

      List1.RemoveItem List 1.ListIndex

      End Sub

      6結(jié)束語

      通過“文件粉碎機”的學習,讀者能更深該地理解文件在計算機里的存在形式,對大家將來在重要電子文件的管理中有一定的指導意義。本人在開發(fā)過程中也對VB的文件處理有了更深的理解,特別是對API函數(shù),它能實現(xiàn)許多我們意想不到的效果。

      猜你喜歡
      文件名文件夾控件
      磁力文件夾
      右鍵調(diào)用多重更名更方便
      電腦愛好者(2019年9期)2019-10-30 03:43:29
      Excel輕松提取文件名
      關(guān)于.net控件數(shù)組的探討
      軟件(2018年7期)2018-08-13 09:44:42
      調(diào)動右鍵 解決文件夾管理三大難題
      TC一鍵直達常用文件夾
      電腦迷(2015年1期)2015-04-29 21:24:13
      不讓長文件名成為“絆腳石”
      電腦迷(2014年8期)2014-04-29 07:37:40
      就這樣玩會VBA中常見的自定義控件
      電腦迷(2012年24期)2012-04-29 00:44:03
      巧手調(diào)教《迅雷看看》
      在PowerBuUder中利用WinSock控件制作簡單的Web服務(wù)器
      浙江省| 镇坪县| 玉山县| 泽州县| 北川| 勃利县| 赤水市| 洞头县| 南华县| 肥西县| 措美县| 蒙城县| 武宁县| 天峻县| 东乡县| 榆中县| 西乌珠穆沁旗| 东源县| 襄樊市| 江城| 涿州市| 穆棱市| 陆河县| 水富县| 维西| 德阳市| 仪陇县| 拉萨市| 格尔木市| 遵义市| 凤庆县| 云龙县| 会宁县| 恩施市| 乐至县| 上思县| 泸溪县| 万盛区| 修武县| 买车| 云龙县|