lordofremixes
Goto Top

Outlook 2010 lästige Sicherheitsabfrage

Microsoft Outlook: Anwendung versucht, Nachrichten in Ihrem Auftrag zu senden.
Man kann nun Erteilen, Verweigern oder Hilfe auswählen

Hallo zusammen,

ich stehe vor dem Problem, dass auf einem unserer Server ein Accessdatenbank mit einem Datenmakro liegt, welches bei Änderungen der Datenbank, eine Email an die jeweiligen Kollegen versendet.
Die AccessDB wird über Citrix gestartet.
Jetzt stehe ich seit mehreren Stunden vor dem Problem, dass Outlook jedesmal meldet, sobald das Email versendet wird:

Anwendung versucht, Nachrichten in Ihrem Auftrag zu senden. Geschieht dies unerwartet, klicken Sie auf Verweigern.
Überprüfen Sie, ob Sie die aktuellste Version des Antivirusprogramms haben.
Man kann nun Erteilen drücken und alles funktioniert.

Aber wie bekomme ich diese BLÖDE Meldung weg, ohne komische Tools wie Advances Security for Outlook oder Click Yes Pro?
Diese 2 Tools taugen meiner Meinung nach auf dem Server nichts.

Hab auch schon gelesen, dass man etwas an der Registry von Outlook umstellen kann, damit diese Meldung nicht mehr kommt.
Nur finde ich nichts, googeln half bisher auch nicht weiter.

Da hier wirklich viele pfiffige Leute sitzen, weiß einer von euch wie ich diese BLÖDE Meldung von Outlook weg bekomme?

Gruß
lordofremixes

Content-Key: 190248

Url: https://administrator.de/contentid/190248

Printed on: April 20, 2024 at 01:04 o'clock

Member: napperman
napperman Aug 27, 2012 at 12:44:25 (UTC)
Goto Top
Moin!

Ich hatte mal das gleiche Problem. Ich bin damals dann nach erfolglosem Suchen bei dem von Dir verschähten Click Yes gelandet.
Ich habe dann das Programm jeweils vor dem Versenden per VBA starten lassen und danach gleich wieder beendet.
Falls jemand ne alternative Idee hat, wäre ich auch noch interessiert.

Gruß,

Napperman
Mitglied: 86263
86263 Aug 27, 2012 at 12:48:21 (UTC)
Goto Top
Hallo,

um den Hinweis abzuschalten mach mal folgendes:
Über "Datei" - "Optionen" - Sicherheitscenter - Button "Einstellungen für das Sicherheitscenter" - Kategorie - "Programmgesteuerter Zugriff" - Option Bei verdächtigen Aktivitäten nie Warnhinweis anzeigen (nicht empfohlen) aktivieren


Gruß,
DB
Member: lordofremixes
lordofremixes Aug 27, 2012 at 12:56:48 (UTC)
Goto Top
Hallo,

ist so eingestellt.

Gruß
lordofremixes
Member: lordofremixes
lordofremixes Aug 27, 2012 at 12:57:34 (UTC)
Goto Top
Click Yes erkennt Access nicht, wenn man es über Citrix startet.
Und es kostet nach 30 Tagen..

Gruß
lordofremixes
Member: napperman
napperman Aug 27, 2012 at 13:13:20 (UTC)
Goto Top
letzteres verstehe ich nicht.
Wer erkennt was nicht?
Click Yes soll doch nicht Access steuern, sondern die Frage von Outlook.
Außerdem brauchst Du doch nicht die Pro Version.
Express Click Yes kostet doch nichts...
Ich kenne mich allerdings nicht sonderlich mit Citrix aus.
Ich nutze das Click Yes für ne Kundenbefragung.
Da wird vor dem Emailsenden aus Access einfach das Click Yes gestartet. Das läuft eigentlich überall problemlos (auch auf nem Terminalserver)
Member: napperman
napperman Aug 27, 2012 updated at 13:27:25 (UTC)
Goto Top
Hab nochmal das Ereignis rausgewühlt welches ich für das Mails verschicken verwende:

Private Sub Befehl5_Click()
On Error Resume Next
Dim db As DAO.Database
Dim Rs As DAO.Recordset
Dim strSQL As String
Dim anzahlmail As String
Call ShellExecute(hwnd, "open", _
"\\hm_srv05\SYSVOL\bordesholm.pcc\scripts\clickyesstart.bat", "", _
"", SW_NORMAL)
Set db = CurrentDb
Set WshShell = WScript.CreateObject("WScript.Shell")
anzahlmail = 0
strSQL = "SELECT e_mail, projektnummer, hauptansprechpartnerbanrede FROM Kundenzufriedenheitabfrage"
Set Rs = db.OpenRecordset(strSQL)
Rs.MoveFirst
Do Until Rs.EOF
Nachricht = ""
If anzahlmail = "30" Then
Sleep 15000
anzahlmail = "0"
End If
anzahlmail = anzahlmail + 1
If Rs!hauptansprechpartnerbanrede > 0 Then
Nachricht = Rs!hauptansprechpartnerbanrede
Else
Nachricht = "Sehr geehrte Damen und Herren"
End If
If Nachricht Like "*," Then
Nachricht = Nachricht & Chr(13) & Chr(10) & Chr(13) & Chr(10)
Else
Nachricht = Nachricht & ","
Nachricht = Nachricht & Chr(13) & Chr(10) & Chr(13) & Chr(10)
End If
Nachricht = Nachricht & "wir möchten heute DANKE sagen für die gute Zusammenarbeit in diesem Jahr."
Nachricht = Nachricht & Chr(13) & Chr(10) & Chr(13) & Chr(10)
Nachricht = Nachricht & "Waren Sie bisher mit uns zufrieden?"
Nachricht = Nachricht & Chr(13) & Chr(10)
Nachricht = Nachricht & "Wir haben großes Interesse daran, zu erfahren, was Ihnen an uns gefällt und was wir besser machen können."
Nachricht = Nachricht & Chr(13) & Chr(10) & Chr(13) & Chr(10)
Nachricht = Nachricht & "Daher eine Bitte an Sie."
Nachricht = Nachricht & Chr(13) & Chr(10)
Nachricht = Nachricht & "Wir haben 5 Fragen bereitgestellt und würden uns freuen, wenn Sie diese beantworten würden."
Nachricht = Nachricht & Chr(13) & Chr(10) & Chr(13) & Chr(10)
Nachricht = Nachricht & "Einfach klicken und beantworten:"
Nachricht = Nachricht & "blablabalbalb"

DoCmd.SendObject acSendNoObject, , acFormatTXT, _
Rs!e_mail, , , "Bitte nehmen Sie an unserer Zufriedenheitsumfrage teil", Nachricht, False

Rs.MoveNext
Loop
Call ShellExecute(hwnd, "open", _
"\\hm_srv05\SYSVOL\bordesholm.pcc\scripts\clickyesstop.bat", "", _
"", SW_NORMAL)
End Sub

Die Batch-Dateien:

Start "Clickyes" "C:\Programme\Express ClickYes\ClickYes.exe" -activate

bzw

Start "Clickyes" "C:\Programme\Express ClickYes\ClickYes.exe" -stop
Member: lordofremixes
lordofremixes Aug 27, 2012 at 13:28:18 (UTC)
Goto Top
ClickYes wird nun auf dem Server neu installiert.
ClickYes free Läuft ja aber auch nicht, wenn ich vom Server abgemeldet bin. Oder bin ich da falsch informiert?
Member: napperman
napperman Aug 27, 2012 at 13:38:28 (UTC)
Goto Top
Aber da läuft doch eh die Access DB. Dafür muss doch auch ein User angemeldet bleiben?
Dann läuft da doch auch die ganze Zeit ein Outlook über das gesendet wird?
Oder Du sendest das ganze direkt via SMTP:
http://www.freevbcode.com/ShowCode.asp?ID=109
Member: lordofremixes
lordofremixes Aug 27, 2012 at 13:38:59 (UTC)
Goto Top
Hallo napperman,

danke erstmal für das Script.
Ich habe aber ja schon in Access das Makroereignis erstellt und das funktioniert ja auch wunderbar.
Wie ich jetzt dein Makro integrieren kann, das weiß ich leider nicht.

Es geht ja eig nur um diese blöde Sicherheitsabfrage, die weg soll.

Im ClickYes Ereignis steht noch das:
1016 : Outlook semi-enabled Error (0x17h)

Sagt dir das zufällig was?
Member: napperman
napperman Aug 27, 2012 at 13:40:47 (UTC)
Goto Top
Oder nach diesem Muster direkt über SMTP.
Dann muss zwar direkt User und PW eingegeben werden, dafür hast Du dann keine Sicherheitsabfrage mehr in Outlook:
Email versenden direkt aus Access 2010?
Member: lordofremixes
lordofremixes Aug 27, 2012 at 13:41:06 (UTC)
Goto Top
Es ist so aufgebaut, Citrix startet Access auf einem anderen Server mit dem Link auf den Server, auf dem die Access Datenbank liegt.

Sieht dann über Citrix so aus:
"C:\Program Files (x86)\Microsoft Office\Office14\MSACCESS.EXE" "\\s02\ProblemDB\Problem_DB.accdb"

Outlook läuft aber auf dem S02 Server, welches dann dauerhaft an ist.
Member: SlainteMhath
SlainteMhath Aug 27, 2012 at 13:45:33 (UTC)
Goto Top
Moin,

du könntest die Mails auch per Commandline versehen, mit Blat z.B., dafür muss ggfs. dem Server im Exchange das relaying erlaubt werden.

lg,
Slainte
Member: napperman
napperman Aug 27, 2012 at 13:46:51 (UTC)
Goto Top
Wenn das Makroereignis läuft (Wenn Änderung XY dann Mail an) dann könntest Du das Makro ja einfach erweitern, damit vorher via Batchaufruf
"\\hm_srv05\SYSVOL\bordesholm.pcc\scripts\clickyesstart.bat", "", _
"", SW_NORMAL)
das ClickYes gestartet und aktiviert wird.
Nachdem die Mails verschickt wurden, wir das ganze wieder beendet.

Allerdings sehe ich gerade, dass die Free-Version nciht auf gesperrten Sitzungen läuft.
Dann wirst Du wohl nicht darum rum kommen, den Mailversand direkt per SMTP durchzuführen.
Poste doch einfach mal den Code des Makros
Member: napperman
napperman Aug 27, 2012 at 13:52:35 (UTC)
Goto Top
Zitat von @lordofremixes:
Es ist so aufgebaut, Citrix startet Access auf einem anderen Server mit dem Link auf den Server, auf dem die Access Datenbank
liegt.

Sieht dann über Citrix so aus:
"C:\Program Files (x86)\Microsoft Office\Office14\MSACCESS.EXE" "\\s02\ProblemDB\Problem_DB.accdb"

Outlook läuft aber auf dem S02 Server, welches dann dauerhaft an ist.

Dann würde ich es so lösen wie hier beschrieben:
Email versenden direkt aus Access 2010?
Member: napperman
napperman Aug 27, 2012 updated at 13:58:47 (UTC)
Goto Top
Außerdem wird das Access ja nicht auf einem anderen Server gestartet. Dein Aufruf startet in der aktuellen Sitzung Access mit der DB, die auf einem anderen Server liegt.
Somit könnte eventuell auch die Citrix Sitzung zur Authentifizierung am SMTP genutzt werden (NTLM ist das Stichwort)
Dann muss der Code aus dem Link
Email versenden direkt aus Access 2010?
noch erweitert werden um
.Item ("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 2  
Member: lordofremixes
lordofremixes Aug 27, 2012 at 14:00:51 (UTC)
Goto Top
Hallo nappermann,

echt vernünftig dass du so hilfsbereit bist.
Ich glaube auch mittlerweile, dass die Email Funktion dann über Citrix nicht vom richtigen Server S02 gestartet wird, sondern vom eigenen Outlook über Citrix. Deswegen bringt dann auch das clickyes nichts.

Ich schaue gerade wie ich von einem Datenmakro wieder an den Code komme, irgendwie bin ich da grad blind..

Gruß
lordofremixes
Member: lordofremixes
lordofremixes Aug 27, 2012 at 14:03:34 (UTC)
Goto Top
Ich kann doch den Quellcode des Access eigenen Datenmakros nicht einsehen, oder ?
Member: lordofremixes
lordofremixes Aug 27, 2012 at 14:05:00 (UTC)
Goto Top
Doch, es wird auf einem anderen Server gestartet.Ich probiere, das jetzt auf dem gleichen Server zu starten.
Member: napperman
napperman Aug 27, 2012 updated at 14:20:38 (UTC)
Goto Top
Zitat von @lordofremixes:
Ich kann doch den Quellcode des Access eigenen Datenmakros nicht einsehen, oder ?

Doch, guckst Du:
http://office.microsoft.com/de-de/access-help/erstellen-eines-datenmakr ...

Allerdings kenne ich mich mit Access 2010 nicht aus. Die ganzen neuen Funktionen kenne ich noch nicht.
Krebse hier immer noch mit 2003 rum face-wink
Member: lordofremixes
lordofremixes Aug 27, 2012 at 14:28:09 (UTC)
Goto Top
Hallo nappermann,

da war ich auch schon, nur ist in Access 2010 ein einmalig erstelltes Datenmakro nicht mehr bearbeitbar, wieso auch immer, die Funktion ist ausgegraut.

Ich vermute jetzt mal laut was:
Access wird über einen der 6 Citrix Server gestartet, welches dann über Citrix Access startet mit dem Verweis auf \\S02\\ProblemDB, das bedeutet ja dann wenn die Email über das Datenmakro geöffnet wird, das eigene Citrix! Outlook auf geht. Habe es grad so getestet, das heißt jeder würde (wenn er dann diese Sicherheitsabfrage bestätigt hat) in seinem eigenen Absender die Änderungen mitteilen.

Also muss man dies irgendwie global machen?

Gruß
lordofremixes
Member: napperman
napperman Aug 27, 2012 at 14:28:52 (UTC)
Goto Top
So, kurz nachgelesen.
Das sollte so funktionieren. Es gibt ja nun die Möglichkeit Tabellen zu überwachen und bei Änderung o.ä. eine Aktion/Makro
auszuführen.
Im Makro kannst Du dann bestimmte Aktionen definieren. Z.B. Code ausführen.
Hierfür baust Du den ganzen Code für das Versenden einfach als eine Funktion in ein Modul in der DB.
Dann kannst Du diese Funktion im Makro als Aktion einsetzen.
Member: lordofremixes
lordofremixes Aug 28, 2012 at 07:13:48 (UTC)
Goto Top
Hallo nappermann,

ma eine Frage ich habe ja wie von dir gepostet den folgenden Code erhalten:

Set EMail = CreateObject("CDO.Message")  
With EMail
	.From = "absender@domain.tld"  
	.To = "empfaenger@domain.tld"  
	.Subject = "Betreff"  
	.TextBody = "Mail Text......"  
	With .Configuration.Fields
		.Item ("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2  
		.Item ("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "mail.domain.tld"  
		.Item ("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25  
		.Item ("http://schemas.microsoft.com/cdo/configuration/sendusername") = "Benutzer"  
		.Item ("http://schemas.microsoft.com/cdo/configuration/sendpassword") = "Passwort"  
		.Update
	End With
	.Send
End With

Kann ich eventuell auf das Ereignismakro verzichten und stattdessen obiges verwenden?
Muss Benutzer und Passwort immer übergeben werden?

Gruß
lordofremixes
Member: napperman
napperman Aug 29, 2012 at 07:49:11 (UTC)
Goto Top
Moin!

Der Code den Du da eben nochmal gepostet hast, sendet ne Mail vie SMTP.
Für das Versenden über einen SMTP musst Du Dich an diesem anmelden. Dafür Benutzer und Passwort.
Du kannst in dem Makro aus deinem Access einstellen, was er machen soll, wenn eine Veränderung an der DB eintritt.
Dann baust Du den Code als eine Funktion ein, und wählst im Makro als Aktion Code ausführen. Da kannst Du dann die Funktoon auswählen.
Die anderen Codes, die ich gepostet habe gehen alle den Weg über Outlook.