Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Ottiene una sezione di configurazione iis 7 con il nome e il percorso di configurazione richiesti.
Sintassi
HRESULT GetAdminSection(
[in,
string] BSTR bstrSectionName,
[in,
string] BSTR bstrPath,
[out,
retval] IAppHostElement** ppAdminSection
);
Parametri
bstrSectionName
Oggetto BSTR contenente il percorso di un nome di sezione valido nel sistema di configurazione.
bstrPath
Oggetto BSTR contenente il percorso del sistema di configurazione.
ppAdminSection
Puntatore a un puntatore per un'interfaccia IAppHostElement .
Valore restituito
Oggetto HRESULT. I valori possibili includono, ma non sono limitati a, quelli indicati nella tabella seguente.
| Valore | Descrizione |
|---|---|
| S_OK | Indica che l'operazione è riuscita. |
| ERROR_INVALID_DATA | Indica che i dati non sono validi. |
| ERROR_FILE_NOT_FOUND | Indica che il percorso richiesto non è stato trovato. |
| ERROR_INVALID_PARAMETER | Indica che un parametro non è corretto. |
| E_ACCESSDENIED | Indica che l'operazione non è riuscita a causa di restrizioni di accesso. |
Commenti
Per un percorso di configurazione specificato, i valori restituiti di questo metodo rappresentano i valori corrispondenti nel set di configurazione unito gerarchicamente. Per impostare il percorso di configurazione, usare il bstrPath parametro di questo metodo.
Esempio
Nell'esempio di codice seguente viene usata l'interfaccia IAppHostAdminManager per ottenere tutti gli elementi figlio uniti per la system.webServer/asp sezione di configurazione nel percorso di configurazione MACHINE/WEBROOT/APPHOST.
#pragma once
#include <stdio.h>
#include <string.h>
#include <ahadmin.h>
int main()
{
IAppHostAdminManager * pMgr = NULL;
IAppHostElement * pParentElem = NULL;
IAppHostChildElementCollection * pChildElems = NULL;
IAppHostElement * pChildElem = NULL;
HRESULT hr = S_OK;
BSTR bstrSectionName = SysAllocString( L"system.webServer/asp" );
BSTR bstrChildElemName = NULL;
DWORD dwElementCount = 0;
// Initialize
hr = CoInitializeEx( NULL, COINIT_MULTITHREADED );
if ( FAILED( hr ) )
{
printf_s( "ERROR: Unable to initialize\n" );
goto exit;
}
// Create an admin manager
hr = CoCreateInstance( __uuidof( AppHostAdminManager ), NULL,
CLSCTX_INPROC_SERVER,
__uuidof( IAppHostAdminManager ), (void**) &pMgr );
if( FAILED( hr ) )
{
printf_s( "ERROR: Unable to create an IAppHostAdminManager\n" );
goto exit;
}
// Get the admin section
wprintf_s( L"Getting %s\n", bstrSectionName );
hr = pMgr->GetAdminSection( bstrSectionName, NULL, &pParentElem );
if ( FAILED( hr ) || ( &pParentElem == NULL ) )
{
if ( E_ACCESSDENIED == hr )
{
printf_s( "ERROR: Access to configuration denied.\n" );
printf_s( " Run sample as an administrator.\n" );
}
else
{
printf_s( "ERROR: Unable to get asp configuration section.\n" );
}
goto exit;
}
// Get the child elements
wprintf_s( L"Getting child elements\n" );
hr = pParentElem->get_ChildElements( &pChildElems );
if ( FAILED( hr ) || ( &pChildElems == NULL ) )
{
wprintf_s( L"ERROR: Unable to access child elements of %s\n", bstrSectionName );
goto exit;
}
// Loop through child elements
wprintf_s( L"Seaching for child elements of %s\n", bstrSectionName );
hr = pChildElems->get_Count( &dwElementCount );
for( USHORT i = 0; i < dwElementCount; i++ )
{
VARIANT vtItemIndex;
vtItemIndex.vt = VT_I2;
vtItemIndex.iVal = i;
// Get the section group
hr = pChildElems->get_Item( vtItemIndex, &pChildElem );
if ( FAILED( hr ) || ( &pChildElem == NULL ) )
{
wprintf_s( L"ERROR: Unable to find child element: %d\n", i );
goto loop_cleanup;
}
// Get the name
hr = pChildElem->get_Name ( &bstrChildElemName );
if ( FAILED( hr ) )
{
wprintf_s( L"ERROR: Unable to get child element name.\n" );
goto loop_cleanup;
}
wprintf_s( L"\tChild element found: %s\n", bstrChildElemName );
loop_cleanup:
if ( pChildElem != NULL )
{
pChildElem->Release();
pChildElem = NULL;
}
SysFreeString( bstrChildElemName );
}
exit:
// Exiting / Unwinding
if ( pChildElems != NULL )
{
pChildElems->Release();
pChildElems = NULL;
}
if ( pParentElem != NULL )
{
pParentElem->Release();
pParentElem = NULL;
}
if ( pMgr != NULL )
{
pMgr->Release();
pMgr = NULL;
}
SysFreeString( bstrChildElemName );
SysFreeString( bstrSectionName );
// Uninitialize
CoUninitialize();
return 0;
};
Requisiti
| Tipo | Descrizione |
|---|---|
| Client | - IIS 7.0 in Windows Vista - IIS 7.5 in Windows 7 - IIS 8.0 in Windows 8 - IIS 10.0 in Windows 10 |
| Server | - IIS 7.0 in Windows Server 2008 - IIS 7.5 in Windows Server 2008 R2 - IIS 8.0 in Windows Server 2012 - IIS 8.5 in Windows Server 2012 R2 - IIS 10.0 in Windows Server 2016 |
| Prodotto | - IIS 7.0, IIS 7.5, IIS 8.0, IIS 8.5, IIS 10.0 - IIS Express 7.5, IIS Express 8.0, IIS Express 10.0 |
| Intestazione | Ahadmin.h |
Vedere anche
Interfaccia IAppHostAdminManager
Metodo IAppHostConfigFile::GetAdminSection