回答
易後難先,然後是更復雜的:-)
2)使用Win32 API的GetFileAttributes
和檢查FILE_ATTRIBUTE_READONLY
1)如果該文件一直沒有一個選項,防止您的訪問打開時,可以「知道
如果它是鎖着的,你必須嘗試打開它,你會得到與價值INVALID_HANDLE_VALUE
文件句柄,然後您可以檢查,例如,如果GetLastError() == ERROR_SHARING_VIOLATION
謝謝2)工作正常, 1)但我不知道如何打開文件。我試過'FILE * fd = fopen(lockFileName.c_str(),「a +」);'但我得到了以下編譯器警告:'警告C4996:'fopen':這個函數或變量可能是不安全的。考慮使用fopen_s代替。要禁用棄用,請使用_CRT_SECURE_NO_WARNINGS。查看聯機幫助以瞭解詳情# – user3352154
尋找Windows API函數CreateFile ...爲什麼使用fopen我以爲你在做Windows API? – FredP
- 1. 如何檢查文件是否打開/寫入C#
- 2. 如何檢查Node.js文件是否打開/正在寫入?
- 3. asp.net檢查是否保存/打開了Response.OutputStream中的文件
- 4. 如何檢查文件是否存在打開在EXE C++
- 5. 檢查文件是否打開
- 6. 檢查文件是否打開
- 7. 如何檢查文件是否打開
- 8. 檢查文件夾是否打開(vba)
- 9. 檢查文件是否打開
- 10. 檢查文件是否已經打開
- 11. Perl檢查文件是否打開
- 12. Lua檢查文件是否打開
- 13. php:檢查文件是否打開
- 14. 如何檢查文件是否打開
- 15. matlab:檢查xls文件是否打開
- 16. 原子檢查一個文件是否存在並打開它
- 17. java如何檢查文件是否存在並打開它?
- 18. Selenium - 檢查保存文件對話框是否打開Firefox
- 19. 檢查是否在記事本中打開文本文件
- 20. 如何檢查文本文件是否在gedit中打開
- 21. 如何檢查窗口是否打開並關閉它在C#
- 22. 打開Excel文件並檢查它是否只讀
- 23. 在SevenZipsharp(C#)中檢查檔案是否受密碼保護
- 24. 檢查是否存在受密碼保護的網頁文件
- 25. C#檢查標籤是否打開
- 26. 在閱讀文件之前檢查文件是否打開?
- 27. 在C++中創建/打開事件並檢查它們是否被觸發
- 28. 寫一個文件,並檢查文件是否存在
- 29. 檢測文件是否在C++中打開
- 30. 檢查文件是否在任何應用程序中打開
什麼是你的目標是什麼?爲了讓用戶知道他們無法打開文件的具體原因? –