IWDFRemoteTarget::OpenFileByName メソッド (wudfddi.h)
[警告: UMDF 2 は UMDF の最新バージョンであり、UMDF 1 よりも優先されます。 すべての新しい UMDF ドライバーは、UMDF 2 を使用して記述する必要があります。 UMDF 1 には新機能が追加されておらず、Windows 10 の新しいバージョンでは UMDF 1 のサポートが制限されています。 ユニバーサル Windows ドライバーでは、UMDF 2 を使用する必要があります。 詳細については、「UMDFの概要」を参照してください。
OpenFileByName メソッドは、ファイルである リモート I/O ターゲット を開きます。
構文
HRESULT OpenFileByName(
[in] PCWSTR pszFileName,
[in] DWORD DesiredAccess,
[in, optional] PUMDF_IO_TARGET_OPEN_PARAMS pOpenParams
);
パラメーター
[in] pszFileName
呼び出し元が指定した、開くファイルの名前を表す null -terminated 文字列をポインター。 このメンバーの詳細については、Windows SDK の CreateFile の FileName パラメーター 参照してください。
[in] DesiredAccess
ファイルへの呼び出し元の必要なアクセスを指定するビットマスク。 このメンバーの詳細については、Windows SDK の CreateFile の dwDesiredAccess パラメーター 参照してください。
[in, optional] pOpenParams
追加のパラメーターを含む呼び出し元によって割り当てられた UMDF_IO_TARGET_OPEN_PARAMS 構造体へのポインター。 このパラメーターは省略可能であり、NULL できます。
戻り値
OpenFileByName は、操作が成功した場合にS_OKを返します。 それ以外の場合、メソッドは次の値を返す可能性があります。
リターン コード | 形容 |
---|---|
|
フレームワークによるメモリの割り当てに失敗しました。 |
このメソッドは、Winerror.h に含まれる他の値の 1 つを返す場合があります。
フレームワークの 検証ツール は、フレームワークがファイルを開くことができない場合にエラーを報告します。
備考
ドライバーが属しているドライバー スタックがファイルのデバイスをサポートしていない場合、ドライバーは OpenFileByName を使用してファイルを開くことができます。 ドライバーが属 ドライバー スタックがファイルのデバイスをサポートしている場合は、IWDFFileHandleTargetFactory::CreateFileHandleTarget を使用してファイルを開きます。
指定したファイルには、UMDF ベースのドライバー (通常はローカル サービス アカウント) を読み込んだアカウントからアクセスできる必要があります。 ただし、ドライバーが OpenFileByName を呼び出すときに 偽装使用する場合は、偽装されたアカウントからファイルにアクセスできる必要があります。
OpenFileByName 呼び出して、コントロール デバイス オブジェクトへのリモート ターゲットを開かないでください。 代わりに、CreateFile を呼び出して、コントロール デバイス直接開きます。
OpenFileByName メソッドとリモート I/O ターゲットの詳細については、「UMDF の一般的な I/O ターゲット参照してください。
例
次のコード例では、リモート ターゲット オブジェクトを作成し、読み取り専用アクセス権を持つ既存のファイルを開きます。
UMDF_IO_TARGET_OPEN_PARAMS openParams;
HRESULT hr;
//
// Create a new remote target object and provide a callback
// object to handle remote target events.
//
CComPtr<IWDFRemoteTarget> fxTarget;
hr = FxDevice->CreateRemoteTarget(MyRemoteTargetIUnknown,
fxRemoteInterface,
&fxTarget);
if (FAILED(hr)) goto Error;
//
// Open existing file for read-only access.
//
openParams.dwShareMode = 0;
openParams.dwCreationDisposition = OPEN_EXISTING;
openParams.dwFlagsAndAttributes = FILE_ATTRIBUTE_READONLY;
hr = fxTarget->OpenFileByName(FILE_PATH,
GENERIC_READ,
&openParams);
必要条件
要件 | 価値 |
---|---|
サポート終了 | UMDF 2.0 以降では使用できません。 |
ターゲット プラットフォーム の | デスクトップ |
UMDF の最小バージョン を する | 1.9 |
ヘッダー | wudfddi.h (Wudfddi.h を含む) |
DLL | WUDFx.dll |
関連項目
IWDFDevice2::CreateRemoteTarget
IWDFRemoteTarget の