亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

vb中createfile返回-1?

vb中createfile返回-1?

largeQ 2019-02-12 09:06:57
vb60編程中,為什么我用CreateFile函數無法創建文件? 代碼如下: Private Declare Function CreateFile Lib "kernel32" Alias "CreateFileA" (ByVal lpFileName As String, ByVal dwDesiredAccess As Long, ByVal dwShareMode As Long, ByVal lpSecurityAttributes As Long, ByVal dwCreationDisposition As Long, ByVal dwFlagsAndAttributes As Long, ByVal hTemplateFile As Long) As Long Private Const GENERIC_WRITE = &H40000000 Private Const OPEN_EXISTING = 3 Private Const FILE_SHARE_READ = &H1 Private Const FILE_SHARE_WRITE = &H2 dim lngHandle As Long lngHandle = CreateFile("C:\email126.txt", GENERIC_WRITE, FILE_SHARE_READ Or FILE_SHARE_WRITE, ByVal 0&, OPEN_EXISTING, 0, 0) '創建文件 經運行測試 lngHandle的值為-1,但查找文件時卻找不到,文件沒有創建!
查看完整描述

2 回答

?
精慕HU

TA貢獻1845條經驗 獲得超8個贊

因為你用了 OPEN_EXISTING,前提必須要有c:\email126.txt這個文件才能成功,如果你第一次運行,肯定是-1,如果只是創建一個新文件,要用 CREATE_ALWAYS 或 OPEN_ALWAYS

如:

Private Declare Function CloseHandle Lib "kernel32" (ByVal hObject As Long) As Long

Private Const CREATE_ALWAYS As Long = 2
Private Const OPEN_ALWAYS As Long = 4

lngHandle = CreateFile("C:\email126.txt", GENERIC_WRITE, FILE_SHARE_READ Or FILE_SHARE_WRITE, ByVal 0&, CREATE_ALWAYS, 0, 0) '創建文件

Call CloseHandle(lngHandle) '關閉lngHandle

查看完整回答
反對 回復 2019-03-18
  • 2 回答
  • 0 關注
  • 1162 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號