簡體   English   中英

在windows shell命名空間擴展下使用_wopen()

[英]Using _wopen() under windows shell namespace extension

我正在開發某種Windows shell命名空間擴展(NE)。 我的擴展為文件和文件夾提供自定義上下文菜單元素。 我需要在我的NE下創建一個新文件。 我正在嘗試創建一個文件,如:

auto flags = O_WRONLY | O_CREAT | O_TRUNC | O_BINARY | O_CLOEXEC;
auto fd = _wopen(L"c:\\test.txt", flags , 0666);

我也嘗試使用"\\\\?\\"前綴:

auto flags = O_WRONLY | O_CREAT | O_TRUNC | O_BINARY | O_CLOEXEC;
auto fd = _wopen(L"\\\\?\\c:\\test.txt", flags , 0666);

無論如何返回的文件描述符是否定的,而errno是EACCES - '權限被拒絕'我缺少什么?

用戶無法在C:\\(沒有高程)中創建文件。

shell擴展使用當前用戶的憑據運行,因此您無法在其中創建文件。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM