.png
GUIにC#を使用し、画像処理にC++(DLLを作成するように設定された同じソリューションの別のプロジェクトとして)を使用するWindows 8ストアアプリに取り組んでおり、指定されたパスからC++で画像を開こうとしていますC#から。これは、画像が Apps アセット フォルダーにある場合は正常に機能します.\\Assets\\image.png
が、Pictures ライブラリの画像にアクセスしようとするとE_ACCESSDENIED
、C++ コードが表示されます。C# プロジェクト マニフェストで Documents and Pictures ライブラリ機能を指定しましたが、C++ は依然としてアクセスが拒否されます。C++ コードに特定のフォルダーへのアクセス権を与える方法を知っている人はいますか?
たとえば、「ファイル名」が「C:\Users\Name\Pictures\image0.png」のようなものである場合、wincodec.h で定義された関数を呼び出すと、結果が得られます。E_ACCESSDENIED
if (SUCCEEDED(hr))
{
hr = pFactory->CreateDecoderFromFilename(
filename,
NULL,
GENERIC_READ,
WICDecodeMetadataCacheOnDemand,
&pDecoder);
}