Domanda

Sto cercando di ottenere la versione attualmente in esecuzione di Outlook o avviare Outlook nel caso in cui non è in esecuzione , ma sto avendo alcuni problemi nell'ottenere o creare l'oggetto Application di Outlook in Windows 7 . penso che abbia qualcosa a che fare con i privilegi utente che sono restrittive in Vista e 7. sto lavorando con Outlook 2010.

modifica Questi errori appaiono solo se ho già un esempio Outlook 2010 è iniziato. Se Outlook non è avviato, l'applicazione può eseguire senza problemi (si può avviare un'istanza di Outlook per sé).

Se qualcuno può dirmi come ottenere correttamente la versione di Outlook di applicazione, che sarebbe davvero utile.

Il codice sto correndo è un blocco lungo try-catch che continua a innescare eccezioni:


try
{
  // create an application instance of Outlook
  oApp = new Microsoft.Office.Interop.Outlook.Application();
}
catch(System.Exception ex)
{
  try
  {
     // get Outlook in another way
     oApp = Marshal.GetActiveObject("Outlook.Application") as Microsoft.Office.Interop.Outlook.Application;
  }
  catch (System.Exception ex2)
  {
     // try some other way to get the object
     oApp = Activator.CreateInstance(Type.GetTypeFromProgID("Outlook.Application")) as Microsoft.Office.Interop.Outlook.Application;
  }
}

L'applicazione mi butta le seguenti eccezioni:

Quando si tenta di creare una nuova istanza di applicazione di Outlook:

Recupero della class factory COM per il componente con CLSID {0006F03A-0000-0000-C000-000000000046} non riuscita a causa del seguente errore: 80.080.005.

Quando provo ad ottenere l'istanza applicazione Outlook:

Operazione non disponibile (eccezione da HRESULT: 0x800401E3 (MK_E_UNAVAILABLE))

Quando si tenta di creare un'istanza attraverso l'attivatore

Recupero della class factory COM per il componente con CLSID {0006F03A-0000-0000-C000-000000000046} non riuscita a causa del seguente errore: 80.080.005.

Grazie!

È stato utile?

Soluzione

A quanto pare questi errori sono stati innescato perché stavo correndo Outlook e l'applicazione su diversi livelli di autorizzazione utente (uno di loro come amministratore e l'altro come utente normale).

Altri suggerimenti

  1. Nel menu Start selezionate Esegui
  2. digitare dcomcnfg e fare clic su OK
  3. si apre la finestra
  4. Servizi componenti.
  5. Espandere i nodi Servizi componenti -> Risorse del computer -> Config DCOM.
  6. Fare clic destro sulla domanda (Message Outlook Attachment) e selezionare Proprietà.
  7. Fare clic su scheda Identità che si rendessero necessarie.
  8. Fare clic su “L'utente interattivo", quindi OK

Sembra che l'installazione di Office è danneggiato.

Prova a ripristinare l'installazione eseguendo nuovamente l'installazione come amministratore.

E 'vero che se si esegue un'applicazione autonoma da Visual Studio o il debug da Visual Studio che utilizzano prodotti per ufficio, si dovrebbe essere avere lo stesso livello di accesso per entrambi (Visual Studio e Office Products) e che è uno dei motivi il motivo per cui si verifica questo problema, ma sto vedendo in linea che così tante persone hanno questo problema durante l'inizializzazione oggetti di Outlook in un servizio. Spero che quello che ha risolto il problema per me sarebbe aiutare gli altri anche. Si prega di seguire le istruzioni.

  1. Vai al prompt dei comandi, digitare quanto segue e premere invio. Questo apre Servizi componenti:

    mmc comexp.msc / 32

entrare descrizione dell'immagine qui

entrare descrizione dell'immagine qui

  1. Espandere i nodi Servizi componenti -> Risorse del computer -> Config DCOM

  2. Ora scoprire l'applicazione desiderata (in questo caso, messaggio di Outlook Attachment) e fare clic destro sulla domanda (Se si segue questa procedura, questo problema correlato tutte le applicazioni d'ufficio può essere risolto) e selezionare Proprietà.

  3. Passare a Identità scheda e selezionare l'utente e premere OK interattivo. Questo dovrebbe risolvere il problema.

entrare descrizione dell'immagine qui

L'utente interattivo non è altro che l'utente connesso. Quando si sta tentando di prodotti per ufficio l'accesso attraverso il servizio, il livello di accesso deve essere lo stesso e che è la ragione è necessario specificare la corretta utente. Se si desidera eseguire il servizio su un server senza eseguire l'accesso su di esso, è necessario assicurarsi che il server dispone di un account utente che sarà utilizzato per l'esecuzione del servizio, nonché l'esecuzione di prodotti per ufficio, come specificato nelle proprietà come questo utente (Si prega di guardare casella finestra di dialogo Proprietà). Se si desidera conoscere i diversi tipi di account utente di cui questa finestra di dialogo, fare riferimento al seguente link Microsoft.

http: / /msdn.microsoft.com/en-us/library/windows/desktop/ms692541%28v=vs.85%29.aspx

Nel mio caso è stato Visual Studio ha funzionato come amministratore la causa del problema. Quando ho eseguito come utente normale mi sono liberato di questo errore alla fine.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top