FwpmGetAppIdFromFileName0 関数 (fwpmu.h)
FwpmGetAppIdFromFileName0 関数は、ファイル名からアプリケーション識別子を取得します。
構文
DWORD FwpmGetAppIdFromFileName0(
[in] PCWSTR fileName,
[out] FWP_BYTE_BLOB **appId
);
パラメーター
[in] fileName
型: const wchar_t*
アプリケーション識別子の取得元となるファイル名。
[out] appId
種類: FWP_BYTE_BLOB**
取得したアプリケーション識別子。
戻り値
型: DWORD
リターン コード/値 | Description |
---|---|
|
アプリケーション識別子が正常に取得されました。 |
|
Windows フィルタリング プラットフォーム (WFP) 固有のエラー。 詳細については、「 WFP エラー コード 」を参照してください。 |
|
リモートまたはローカルのファイアウォール エンジンとの通信に失敗しました。 |
注釈
呼び出し元は 、FwpmFreeMemory0 の呼び出しによって返されたオブジェクトを解放する必要があります。
FwpmGetAppIdFromFileName0 は、FwpmGetAppIdFromFileName の特定の実装です。 詳細については、「 WFP Version-Independent 名と特定のバージョンの Windows を対象 とする」を参照してください。
例
次の C++ の例は、 FwpmGetAppIdFromFileName0 を使用してアプリケーション識別子を取得する方法を示しています。
#include <windows.h>
#include <fwpmu.h>
#include <stdio.h>
#pragma comment(lib, "Fwpuclnt.lib")
// Hard-coded file name for demonstration purposes.
#define FILE_PATH1 L"C:\\Program Files\\SomeAppFolder\\SomeApplication.exe"
int main()
{
DWORD result = ERROR_SUCCESS;
FWP_BYTE_BLOB *fwpApplicationByteBlob = NULL;
printf("Retrieving Id for application to allow through firewall.\n");
result = FwpmGetAppIdFromFileName0(FILE_PATH1, &fwpApplicationByteBlob);
if (result != ERROR_SUCCESS)
{
printf("FwpmGetAppIdFromFileName failed (%d).\n", result);
return result;
}
else
{
printf("The Id is: %d\n", fwpApplicationByteBlob->data);
}
return 0;
}
// ----------------------------------------------------------------------
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows Vista [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows Server 2008 [デスクトップ アプリのみ] |
対象プラットフォーム | Windows |
ヘッダー | fwpmu.h |
Library | Fwpuclnt.lib |
[DLL] | Fwpuclnt.dll |