1. <nobr id="easjo"><address id="easjo"></address></nobr>

      <track id="easjo"><source id="easjo"></source></track>
      1. 
        

      2. <bdo id="easjo"><optgroup id="easjo"></optgroup></bdo>
      3. <track id="easjo"><source id="easjo"><em id="easjo"></em></source></track><option id="easjo"><span id="easjo"><em id="easjo"></em></span></option>
          貴州做網站公司
          貴州做網站公司~專業!靠譜!
          10年網站模板開發經驗,熟悉國內外開源網站程序,包括DEDECMS,WordPress,ZBlog,Discuz! 等網站程序,可為您提供網站建設,網站克隆,仿站,網頁設計,網站制作,網站推廣優化等服務。我們專注高端營銷型網站,企業官網,集團官網,自適應網站,手機網站,網絡營銷,網站優化,網站服務器環境搭建以及托管運維等。為客戶提供一站式網站解決方案?。?!

          CreateFile 打開與創建文件

          來源:互聯網轉載 時間:2024-01-29 08:03:42

          CreateFile()函數用以打開和創建文件,函數原型聲明如下:

          1 HANDLE WINAPI CreateFile(2   __in      LPCTSTR lpFileName,3   __in      DWORD dwDesiredAccess,4   __in      DWORD dwShareMode,5   __in_opt  LPSECURITY_ATTRIBUTES lpSecurityAttributes,6   __in      DWORD dwCreationDisposition,7   __in      DWORD dwFlagsAndAttributes,8   __in_opt  HANDLE hTemplateFile9 );

          在 Windows 中,創建和打開文件的 API 都是 CreateFile() 函數,并通過指定不同的參數來表示是創建一個文件,打開已存在的文件,還是重新建立文件等。

          第 1 個參數lpFileName是個輸入參數,表示操作的對象文件的相對路徑或絕對路徑。

          第 2 個參數 dwDesiredAccess 是個輸入參數,指名對文件對象的操作存取方式,比如是 GENERIC_READ(讀文件),GENERIC_WRITE(寫文件) 。

          第 3 個參數dwShareMode是個輸入參數,表示共享模式。指名與其他進程是否共享該文件,可以是共享讀(FILE_SHARE_READ),共享寫(FILE_SHARE_WRITE),共享刪除(FILE_SHARE_DELETE)。如果指名多個屬性,那么可用 "|" 將幾個屬性做或運算。如果本進程需要獨占本文件,那么就將該參數設置為 0 。

          第 4 個參數lpSecurityAttributes是一個指向 SECURITY_ATTRIBUTES 結構的指針,表示本文件句柄的安全屬性,能影響其是否可被子進程繼承等操作。如果設為 NULL,則子進程不能繼承本句柄。該結構并不常用。

          第 5 個參數dwCreationDisposition是個輸入參數,表示操作模式。

          第 6 個參數dwFlagsAndAttributes是個輸入參數,是文件屬性和文件標志。

          第 7 個參數hTemplateFile是個輸入參數,當存取權限包括 GENERIC_WRITE 時,可以設置為一個模板文件的句柄,一般情況下該參數可設為 NULL ,表示不使用模板文件。

          函數的參數選項眾多,下面主要列出比較重要且常用的幾個進行說明。

          dwShareMode
          0-- 文件不能共享,且本進程不能在這個文件上打開第 2 個 HANDLE 。
          FILE_SHARE_READ-- 其他進程,包括進行本調用進程,可以打開這個文件并進行并發訪問。
          FILE_SHARE_WRITE-- 允許并發寫文件。

          lpSecurityAttributes
          該參數指向一個 LPSECURITY_ATTRIBUTES 結構,一般使用中可置為 NULL 。

          dwCreationDisposition
          該參數指定是否創建文件,覆蓋現有文件等。選項有以下幾個:

          1. CREATE_NEW
          創建新文件,如果指定的文件已經存在那么失敗。

          2. CREATE_ALWAYS
          創建新文件,如果文件存在則重建該文件,清楚文件內容及文件屬性;如果文件不存在,則創建一個個新文件。

          3. OPEN_EXISTING
          打開現有文件,如果文件不存在則失敗。

          4. OPEN_ALWAYS
          如果文件存在,則打開文件;如果不存在,則創建它,此時等同于 CREATE_NEW。

          5. TRUNCATE_EXISTING
          將文件長度置為 0.使用該選項時,必須至少指定 GENERIC_WRITE 訪問權限,如果文件不存在時則失敗,對于已經存在的文件,則該文件的內容會被全部銷毀。

          dwFlagsAndAttributes
          該參數指定文件的屬性和長度,一共有 32 個標志和屬性。屬性是文件的特征,且與打開的文件句柄形成對照,如果打開的是現有文件,那么這些標志將被忽略。以下幾個是比較常見且重要的屬性和標志值。

          1. FILE_ATTRIBUTE_NORMAL
          該屬性只可在不設置其他屬性(可以設置標志)時才能使用。

          2. FILE_ATTRIBUTE_READONLY
          只讀文件,應用程序不能寫也不能刪除文件。

          3. FILE_ATTRIBUTE_ARCHIVE
          存檔文件

          4. FILE_ATTRIBUTE_ENCRYPTED
          加密文件

          5. FILE_ATTRIBUTE_HIDDEN
          隱藏文件


          6. FILE_ATTRIBUTE_NOT_CONTENT_INDEXED
          沒有使用內容索引服務


          7. FILE_ATTRIBUTE_OFFLINE
          離線存儲文件

          8. FILE_ATTRIBUTE_SYSTEM
          系統文件

          9. FILE_ATTRIBUTE_TEMPORARY
          臨時文件

          dwFlagsAndAttributes

          1.FILE_FLAG_DELETE_ON_CLOSE
          對臨時文件有用,當最后一個打開的句柄被關閉時,Windows 會刪除這個文件。

          2.FILE_FLAG_OVERLAPPED
          以異步 I/O 方式創建可打開文件,這個屬性標志對異步 I/O 比較重要。

          3.FILE_FLAG_RANDOM_ACCESS
          設置該屬性標志時,在程序對文件進行隨機訪問時,Windows 會嘗試優化文件緩存。

          4.FILE_FLAG_SEQUENTIAL_SCAN
          該屬性標志表示文件用于順序訪問,Windows 將相應的優化緩存。

          5.FILE_FLAG_BACKUP_semANTICS
          打開和創建文件是為了進行備份和恢復操作。

          6.FILE_FLAG_NO_BUFFERING
          不使用系統緩存(cahing,不同于硬件緩存)

          5.FILE_FLAG_NO_BUFFERING
          不使用系統緩存(cahing,不同于硬件緩存)

          7.FILE_FLAG_NO_RECALL
          遠程存儲

          8.FILE_FLAG_WRITE_THROUGH
          存取文件時,對磁盤進行直接操作,不經過緩存

          9.FILE_FLAG_POSIX_SEMANTICS
          按照 POSIX 規則存取

          10.FILE_FLAG_OPEN_REPARSE_POINT
          系統將禁止 NTFS 文件系統的“再解析”行為

          標簽:createfile-

          網絡推廣與網站優化公司(網絡優化與推廣專家)作為數字營銷領域的核心服務提供方,其價值在于通過技術手段與策略規劃幫助企業提升線上曝光度、用戶轉化率及品牌影響力。這...

          在當今數字化時代,公司網站已成為企業展示形象、傳遞信息和開展業務的重要平臺。然而,對于許多公司來說,網站建設的價格是一個關鍵考量因素。本文將圍繞“公司網站建設價...

          在當今的數字化時代,企業網站已成為企業展示形象、吸引客戶和開展業務的重要平臺。然而,對于許多中小企業來說,高昂的網站建設費用可能會成為其發展的瓶頸。幸運的是,隨...

          cdp化妝品是什么牌子?CDP化妝品的全稱是cle de peau beauty,也可以稱為CPB。中文翻譯是肌膚的關鍵,屬于資生堂頂級品牌。1997年正式上市,2001年進入中國市場。品牌在全球20多個國家和地區設立了300多個形象專柜。CPB系列產品為各類肌膚提供最基本的護理產品,同時也為個別肌膚提供特殊護理產品,讓肌膚展現自然優雅的美。CDP是什么意思?日內反向操作技術指標,又稱逆勢操作指數...

          699美元換成人民幣多少?當前美元對人民幣的匯率是1美元=7.0942人民幣1人民幣=0.141美元699美元=4958.8458人民幣參考2019年4月21日的匯率,699美元=4685.5368人民幣;溫馨提示:匯率波動699美元合計人民幣多少?]首先,699是iPhone8的價格,對應中國銀行5888的價格。X是999美元,相當于8388元。關稅10%,增值稅17%。699*6.54*1.1...

          9mt柴油發動機性能怎么樣?發動機本身“超級動力”、“完美省油”、“完美聲音調節”、“非常非常穩定”四大特點??癖┰诜置胫g,省油在毫厘之中。9MT發動機原型為雷諾YS23DDT,是雷諾集團面向聯盟全球車型的第2代重型柴油動力,從產品性能、開發質量、零部件質量、能制造質量詳細不能執行雷諾日產聯盟標準。越級動力,如此一來頂級工程師的親自炒調校,9MT最大功率達120kW(應該是162馬力),最高扭矩...

          TOP
          国产初高中生视频在线观看|亚洲一区中文|久久亚洲欧美国产精品|黄色网站入口免费进人
          1. <nobr id="easjo"><address id="easjo"></address></nobr>

              <track id="easjo"><source id="easjo"></source></track>
              1. 
                

              2. <bdo id="easjo"><optgroup id="easjo"></optgroup></bdo>
              3. <track id="easjo"><source id="easjo"><em id="easjo"></em></source></track><option id="easjo"><span id="easjo"><em id="easjo"></em></span></option>