Freigeben über


IWDFRemoteTarget::OpenFileByName-Methode (wudfddi.h)

[Warnung: UMDF 2 ist die neueste Version von UMDF und ersetzt UMDF 1. Alle neuen UMDF-Treiber sollten mit UMDF 2 geschrieben werden. Es werden keine neuen Features zu UMDF 1 hinzugefügt, und es gibt eingeschränkte Unterstützung für UMDF 1 für neuere Versionen von Windows 10. Universelle Windows-Treiber müssen UMDF 2 verwenden. Weitere Informationen finden Sie unter Erste Schritte mit UMDF-.]

Die OpenFileByName--Methode öffnet ein Remote-E/A-Ziel, das eine Datei ist.

Syntax

HRESULT OpenFileByName(
  [in]           PCWSTR                      pszFileName,
  [in]           DWORD                       DesiredAccess,
  [in, optional] PUMDF_IO_TARGET_OPEN_PARAMS pOpenParams
);

Parameter

[in] pszFileName

Ein Zeiger auf eine vom Aufrufer bereitgestellte, NULL--terminated-Zeichenfolge, die den Namen der zu öffnenden Datei darstellt. Weitere Informationen zu diesem Member finden Sie im Parameter FileName von CreateFile- im Windows SDK.

[in] DesiredAccess

Eine Bitmaske, die den gewünschten Zugriff des Aufrufers auf die Datei angibt. Weitere Informationen zu diesem Member finden Sie im dwDesiredAccess Parameter von CreateFile im Windows SDK.

[in, optional] pOpenParams

Ein Zeiger auf eine vom Aufrufer zugewiesene UMDF_IO_TARGET_OPEN_PARAMS Struktur, die zusätzliche Parameter enthält. Dieser Parameter ist optional und kann NULL-werden.

Rückgabewert

OpenFileByName gibt S_OK zurück, wenn der Vorgang erfolgreich ist. Andernfalls gibt die Methode möglicherweise den folgenden Wert zurück:

Rückgabecode Beschreibung
E_OUTOFMEMORY
Fehler beim Versuch des Frameworks, Arbeitsspeicher zuzuweisen.
 

Diese Methode gibt möglicherweise einen der anderen Werte zurück, die Winerror.h enthält.

Der Verifier des Frameworks meldet einen Fehler, wenn das Framework die Datei nicht öffnen kann.

Bemerkungen

Ihr Treiber kann OpenFileByName- verwenden, um eine Datei zu öffnen, wenn der Treiberstapel, zu dem Ihr Treiber gehört, das Gerät der Datei nicht unterstützt. Verwenden Sie IWDFFileHandleTargetFactory::CreateFileHandleTarget-, um eine Datei zu öffnen, wenn der Treiberstapel, zu dem Ihr Treiber gehört, das Gerät der Datei unterstützt.

Auf die angegebene Datei muss über das Konto zugegriffen werden, auf das der UMDF-basierte Treiber geladen wurde, der in der Regel das lokale Dienstkonto ist. Wenn der Treiber jedoch Identitätswechsel verwendet, wenn er OpenFileByName-aufruft, muss auf die Datei über das identitätswechselierte Konto zugegriffen werden.

Rufen Sie OpenFileByName- nicht auf, um ein Remoteziel für ein Steuerelementgerätobjekt zu öffnen. Öffnen Sie stattdessen das Steuerelementgerät direkt, indem Sie CreateFile-aufrufen.

Weitere Informationen zu den OpenFileByName- Methode und Remote-E/A-Zielen finden Sie unter Allgemeine E/A-Ziele in UMDF-.

Beispiele

Im folgenden Codebeispiel wird ein Remotezielobjekt erstellt und eine vorhandene Datei mit schreibgeschütztem Zugriff geöffnet.

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);
 

Anforderungen

Anforderung Wert
Ende des Supports In UMDF 2.0 und höher nicht verfügbar.
Zielplattform- Desktop
Mindest-UMDF-Version 1.9
Header- wudfddi.h (include Wudfddi.h)
DLL- WUDFx.dll

Siehe auch

IWDFDevice2::CreateRemoteTarget

IWDFRemoteTarget-

IWDFRemoteTarget::OpenRemoteInterface