Ok ... non uso Outlook pero' ti posso dire che hai commesso qualche errore nella scrittura del codice ...

Prima di tutto, qualsiasi programma che utilizza COM, deve inizializzare il sistema e deinizializzarlo all'uscita.

In piu' la funzione CLSIDFromProgID accetta come ultimo parametro un puntatore a quello che e' un GUID. Tu passi un puntatore che pero' non punta a nulla ... Il codice dovrebbe quindi essere (con le modifiche in grassetto ...)

codice:
HRESULT hr;
SCODE scode; 
LPCOLESTR lpszProgID = L"Outlook.Application.8";
GUID clsid;

CoInitialize(0);
 
hr = CLSIDFromProgID(lpszProgID, &clsid); 

if(hr)
{ 
  scode = GetScode(hr); 
  if (FAILED(scode))
    MessageBox(0, "NON CI SIAMO PROPRIO","Avviso",MB_OK | MB_ICONINFORMATION);
} 

CoUninitialize(); 

return(0);