IDeviceEmulatorManager
Essa interface representa o dispositivo Emulator Manager.O objeto é usado para controlar a janela Gerenciador de emulador de dispositivos e percorrer sistema autônomo nós de nível de raiz no Device Emulator Manager (DEM), sistema autônomo Armazenamento de dados, Meus emuladores de dispositivo, Todos sistema autônomo emuladores de dispositivo, and Outras pessoas.
interface IDeviceEmulatorManager : IDispatch ();
Métodos
Método |
Descrição |
---|---|
Enumera as plataformas do nó corrente. |
|
Mostra ou oculta o Gerenciador de emulador de dispositivo janela |
|
Move para o próximo nó. |
|
Transfere de volta para o primeiro nó, geralmente Armazenamento de dados. |
|
Atualiza a enumeração por re-reading as informações a partir de Armazenamento de dados. |
|
Obtém o nome do nó corrente, sistema autônomo Armazenamento de dados, Meus emuladores de dispositivo, Todos sistema autônomo emuladores de dispositivo, or Outras pessoas. |
|
Registra o evento de atualização do dispositivo Emulator Manager. |
|
Cancela o inscrição de evento de atualização. |
Comentários
Para criar um objeto que implementa essa interface, use CoCreateInstance.
Um objeto que implementa essa interface é uma lista vinculada contém todos os nós de nível de raiz na janela DEM.
Exemplo
Este exemplo lista os nós, SDKs/plataformas e emuladores no Gerenciador de emulador de dispositivo janela.
int _tmain(int argc, _TCHAR* argv[])
{
if (SUCCEEDED(CoInitializeEx(NULL, COINIT_MULTITHREADED)))
{
// HRESULT is used to determine whether method calls are successful
HRESULT hr;
// Instantiate DeviceEmulatorManager (DEM) object.
// This starts DvcEmuManager.exe in silent mode
CComPtr<IDeviceEmulatorManager> pDeviceEmulatorManager;
hr = pDeviceEmulatorManager.CoCreateInstance(__uuidof(DeviceEmulatorManager));
if (FAILED(hr)) {
wprintf_s(L"Error: Unable to instantiate DeviceEmulatorManager. ErrorCode=0x%08X\n", hr);
return false;
}
// For each of the four nodes in the Device Emulator Manager window
// (Datastore, My Device Emulators, All Device Emulators, and Others)
for (; SUCCEEDED(hr); (hr = pDeviceEmulatorManager->MoveNext()))
{
// Output the name of node
CComBSTR node;
hr = pDeviceEmulatorManager->get_Name(&node);
if (FAILED(hr)) {
wprintf_s(L"Error: Failed to get current SDK category name. ErrorCode=0x%08X\n", hr);
return false;
}
wprintf_s(L"- %s\n", node);
// Get a list of SDKs/platforms in this node
CComPtr<IEnumManagerSDKs> pSDKEnumerator;
hr = pDeviceEmulatorManager->EnumerateSDKs(&pSDKEnumerator);
if (FAILED(hr)) {
wprintf_s(L"Error: Failed to get enumerator for the SDK Category[%s]. ErrorCode=0x%08X\n", node, hr);
return false;
}
// For every SDK/platform in the list
for (; SUCCEEDED(hr); (hr = pSDKEnumerator->MoveNext()))
{
// Output its name
CComBSTR sdkName;
hr = pSDKEnumerator->get_Name(&sdkName);
if (hr == E_ENUMSDK_NOT_LOADED ) {
continue;
} else if (FAILED(hr)) {
wprintf_s(L"Error: Failed to get SDK details. ErrorCode=0x%08X\n", hr);
return false;
}
wprintf_s(L"\t- %s\n", sdkName);
// Get the list of emulators in the SDK/platform
CComPtr<IEnumVMIDs> pDeviceEnumerator;
hr = pSDKEnumerator->EnumerateVMIDs(&pDeviceEnumerator);
if (FAILED(hr)) {
wprintf_s(L"Error: Failed to get enumerator for VM devices. ErrorCode=0x%08X\n", hr);
return false;
}
// For every emulator in the list
for (; SUCCEEDED(hr); (hr = pDeviceEnumerator->MoveNext()))
{
// Get the IDeviceEmulatorManagerVMID object.
CComPtr<IDeviceEmulatorManagerVMID> pDevice;
hr = pDeviceEnumerator->GetVMID(&pDevice);
if (FAILED(hr)) {
continue;
}
// Output the name of the emulator.
CComBSTR deviceName;
hr = pDevice->get_Name(&deviceName);
if (FAILED(hr)){
continue;
}
wprintf_s(L"\t\t%s\n", deviceName);
}
}
}
return true;
CoUninitialize();
}
return false;
}
Requisitos
DEMComInterface.tlb