Cómo obtener el valor de celda de Excel en C ++

Si alguien sabe cómo pasar de Excel :: Puntero de ventana a valor real en una celda abierta de Excel, hágamelo saber. Estas son las condiciones de la tarea: - Excel se está ejecutando actualmente en una sola ventana con un libro de trabajo en una hoja - algunas celdas tienen datos (para simplificar, digamos que solo una celda [1,1] tiene datos, que es "a") La pregunta es cómo descubrir que solo una celda tiene datos, y la celda es [1,1] y los datos son "a". Para empezar, aquí hay un fragmento de código:

int main( int argc, CHAR* argv[])
{
   CoInitialize( NULL );
   HWND excelWindow = FindWindow(L"XLMAIN", NULL);
   EnumChildWindows(excelWindow, (WNDENUMPROC) EnumChildProc, (LPARAM)1);
   return 0;
}
BOOL CALLBACK EnumChildProc(HWND hwnd, LPARAM)
{
   WCHAR szClassName[64];
   if(GetClassNameW(hwnd, szClassName, 64))
   {
      if(_wcsicmp(szClassName, L"EXCEL7") == 0)
      {
         Excel::Window* pWindow = NULL;
         HRESULT hr = AccessibleObjectFromWindow(hwnd, OBJID_NATIVEOM, __uuidof(Excel::Window), (void**)&pWindow);
         if(hr == S_OK)
         {
            // Here we need to answer the question using pWindow                
            pWindow->Release();
         }
         return false;     
      }     
   }
   return true;
}  

Respuestas a la pregunta(4)

Su respuesta a la pregunta