我只是在WinRT中编写一些文件管理api。我成功地在../Packages/myApp/LocalState/中创建了文件夹,但是当我尝试在该文件夹中创建新文件(CreateFile2)时,我得到以下信息
error 4252: ERROR_NOT_SUPPORTED_IN_APPCONTAINER
This functionality is not supported in the context of an app container.代码:
localFolder = L"C:\\Users\\Tomas\\AppData\\Local\\Packages\\myApp\\LocalState\\my";
CreateDirectory(localFolder.c_str(),NULL);
localFolder += L"\\MyFile.txt";
CREATEFILE2_EXTENDED_PARAMETERS pCreateExParams;
pCreateExParams.dwSize = sizeof(CREATEFILE2_EXTENDED_PARAMETERS);
pCreateExParams.dwFileAttributes = FILE_ATTRIBUTE_NORMAL;
pCreateExParams.lpSecurityAttributes = NULL;
pCreateExParams.hTemplateFile = NULL;
HANDLE myfile = CreateFile2(localFolder.c_str(), GENERIC_READ|GENERIC_WRITE, FILE_SHARE_READ|FILE_SHARE_WRITE, OPEN_ALWAYS, &pCreateExParams);
int error = GetLastError();我做错什么了?我应该在清单中设置一些选项吗?谢谢你的帮助
发布于 2012-09-27 11:21:28
已经发现了pCreateExParams结构中的问题--在.dwFileFlags和.dwSecurityQosFlags中有一些未定义的值。所以这很好用:
CREATEFILE2_EXTENDED_PARAMETERS pCreateExParams = {0}; https://stackoverflow.com/questions/12618592
复制相似问题