cfile fopen fopen_s win10下打開文件失敗


vc程序在win10下面使用fopen 打開文件失敗,在網上查 了下是因為UAC權限的問題如下:

 

由於windows vista win7 win8 win 10 添加了UAC權限,所以會導致 在系統盤下 創建文件失敗。返回拒絕訪問錯誤。

UAC是微軟為了提高Windows的安全性,自Windows Vista開始引入的新安全機制。

傳統的NT內核系統依靠access token來做權限處理,access token由當前用戶所在的用戶組的權限決定。而由於長期以來的不當使用習慣問題,幾乎所有Windows上用戶所在的組都是管理員。

在啟用UAC之后,系統會額外引入一個filtered token,並且這個token默認只能按照Standard User的權限去執行。所以這個token也通常被叫做limited filtered token。

因為使用的vs程序可以直接在 Visual Studio 上進行提升UAC 權限:

 

上圖是UAC 的默認級別:asInvoker (/level='asInvoker')

然后把該權限提升為:highestAvailable (/level='highestAvailable')

其他的設置不用動,這樣在win10下就可以使用fopen打開成功了。

參考:https://blog.csdn.net/jiangdong2007/article/details/49287063


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM