Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Die NetworkIsolationGetAppContainerConfig-Funktion wird verwendet, um Konfigurationsinformationen zu einem oder mehreren App-Containern abzurufen.
Syntax
DWORD NetworkIsolationGetAppContainerConfig(
[out] DWORD *pdwNumPublicAppCs,
[out] PSID_AND_ATTRIBUTES *appContainerSids
);
Die Parameter
[out] pdwNumPublicAppCs
Typ: DWORD*
Die Anzahl der App-Container im AppContainerSids-Mitglied .
[out] appContainerSids
Typ: PSID_AND_ATTRIBUTES*
Die Sicherheits-IDs (SIDs) von App-Containern, die Loopbackdatenverkehr senden dürfen. Wird für Debuggingzwecke verwendet.
Rückgabewert
Art: DWORD
Gibt ERROR_SUCCESS zurück, wenn dies erfolgreich ist, oder einen anderen Fehlerwert.
Bemerkungen
Beachten Sie, dass es die Verantwortung des aufrufenden Programms ist, den Speicher freizugeben, der der PSID_AND_ATTRIBUTES Struktur zugeordnet ist. Das folgende Codebeispiel zeigt, wie diese Funktion aufgerufen wird. Die FreeAppContainerConfig-Funktion zeigt, wie Sie den gesamten zugeordneten Speicher freigeben.
#include "stdafx.h"
#include <netfw.h>
typedef DWORD
(WINAPI *FN_NETWORKISOLATIONGETAPPCONTAINERCONFIG)(
_Out_ DWORD *pdwNumPublicAppCs,
_Outptr_result_buffer_(*pdwNumPublicAppCs) PSID_AND_ATTRIBUTES *appContainerSids
);
void
FreeAppContainerConfig(
__in DWORD sidCount,
__in_ecount(sidCount) SID_AND_ATTRIBUTES *srcSidAttrib
)
{
DWORD dwIndex = 0;
for (dwIndex = 0; dwIndex < sidCount; dwIndex++)
{
HeapFree(GetProcessHeap(), 0, srcSidAttrib[dwIndex].Sid);
}
HeapFree(GetProcessHeap(), 0, srcSidAttrib);
}
int _tmain(int argc, _TCHAR* argv[])
{
DWORD dwErr = 0;
PSID_AND_ATTRIBUTES appContainerSids = NULL;
DWORD dwCount = 0;
HMODULE hModule = NULL;
FN_NETWORKISOLATIONGETAPPCONTAINERCONFIG pfnNetworkIsolationGetAppContainerConfig = NULL;
hModule = LoadLibraryW(L"FirewallAPI.dll");
if (hModule == NULL)
{
dwErr = GetLastError();
goto Cleanup;
}
pfnNetworkIsolationGetAppContainerConfig = (FN_NETWORKISOLATIONGETAPPCONTAINERCONFIG)GetProcAddress(
hModule,
"NetworkIsolationGetAppContainerConfig"
);
if (pfnNetworkIsolationGetAppContainerConfig == NULL)
{
dwErr = GetLastError();
goto Cleanup;
}
dwErr = pfnNetworkIsolationGetAppContainerConfig(
&dwCount,
&appContainerSids
);
if (dwErr != ERROR_SUCCESS)
{
goto Cleanup;
}
// Process the app container sids
Cleanup:
FreeAppContainerConfig(
dwCount,
appContainerSids
);
if (hModule != NULL)
{
FreeLibrary(hModule);
}
return 0;
}
Anforderungen
| Anforderung | Wert |
|---|---|
| Mindestens unterstützter Client | Windows 8 [nur Desktop-Apps] |
| Mindestanforderungen für unterstützte Server | Windows Server 2012 [nur Desktop-Apps] |
| Zielplattform | Fenster |
| Header | networkisolation.h (include Netfw.h) |
| DLL | Firewallapi.dll |