Programmgesteuertes Verschlüsseln von Outlook-E-Mails mit Inspector
Ich verwende C # mit Outlook-Objektmodell (Einlösung ist aufgrund der Lizenzierung keine Option für mich) und habe Probleme, eine E-Mail-Nachricht vor dem Senden programmgesteuert zu verschlüsseln.
Ich kann erfolgreich einen Verweis auf den CommandBarButton abrufen, der angeblich die Schaltfläche "Verschlüsseln" darstellt (ID 718 gemäß Online-Beispielen), kann ihn jedoch nicht programmgesteuert drücken. Ich habe versucht, sowohl die CommandBarButton Execute () -Methode als auch SendKeys zu verwenden (nicht sicher, ob sendkeys in diesem Kontext überhaupt gültig ist). Alle debug.writeline-Anweisungen zeigen, dass sich die Schaltfläche im Status msoButtonUp befindet.
Ich spiele seit Tagen damit und kann es scheinbar nicht zum Laufen bringen. Jeder Rat wäre sehr dankbar!
<code>Outlook.MailItem emailToSend; ... Microsoft.Office.Core.CommandBarButton cbb = null; cbb =(CommandBarButton)emailToSend.GetInspector.CommandBars["Standard"].FindControl(Type.Missing, 718, Type.Missing, true, false); if (cbb != null) { //it is not null in debugger if (cbb.Enabled) { //make sure digital signature is on cbb.Visible = true; Debug.WriteLine("State was: " + cbb.State.ToString()); //all debug calls return msoButtonUp cbb.SetFocus(); SendKeys.SendWait("{ENTER}"); Debug.WriteLine("State was: " + cbb.State.ToString()); SendKeys.SendWait("~"); Debug.WriteLine("State was: " + cbb.State.ToString()); cbb.Execute(); Debug.WriteLine("State was: " + cbb.State.ToString()); } } </code>