AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Outlook Sicherheitsmeldung

Ein Thema von Boombuler · begonnen am 28. Okt 2005 · letzter Beitrag vom 16. Jan 2006
Antwort Antwort
Seite 2 von 2     12   
LuckySpacy

Registriert seit: 2. Apr 2003
Ort: Fränkisch-Crumbach
50 Beiträge
 
Delphi 10.4 Sydney
 
#11

Re: Outlook Sicherheitsmeldung

  Alt 15. Jan 2006, 11:25
Ich habe mich gerade mit diesem Thema beschäftigt.
Alles was ich dazu gefunden habe, erschien mir äußerst kompliziert.
Um andere jetzt die Stundenlange suche im Internet zu ersparen, möchte ich meine Lösung kurz aufzeigen.

Die Lösung für mich heißt Redemption.dll

Hier ist der Link zur Outlook Redemption: www.dimastr.com
oder direkt herunterladen unter: Redemption.zip

Dann die Install.exe ausführen.

Hier ist ein kleines Beispielprogramm:
Delphi-Quellcode:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

const
  olFolderContacts = $0000000A;


type
  TForm1 = class(TForm)
    Button1: TButton;
    Edit1: TEdit;
    procedure Button1Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure FormDestroy(Sender: TObject);
  private
    FOutlook : Variant;
    FMAPI : Variant;
    FSafeContact : Variant;
  public
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

uses
  ComObj;

procedure TForm1.FormCreate(Sender: TObject);
begin
  FOutlook := CreateOleObject('Outlook.Application');
  FMAPI := FOutlook.GetNameSpace('MAPI');
  FMAPI.Logon;
  FSafeContact := createoleobject('redemption.SafeContactItem');
end;

procedure TForm1.FormDestroy(Sender: TObject);
begin
  FMAPI.Logoff;
  FSafeContact := Unassigned;
  FOutlook := Unassigned;
  FMAPI := Unassigned;
end;


procedure TForm1.Button1Click(Sender: TObject);
var
  ContactList: Variant;
begin
  ContactList := FMAPI.GetDefaultFolder(olFolderContacts);
  try
    FSafeContact.Item := ContactList.Items.Item(1);
    Edit1.Text := FSafeContact.Email1Address;
  finally
    ContactList := Unassigned;
  end;
end;
Normalerweise würde beim Lesen der Email1Address von Outlook eine Sicherheitsmeldung kommen.
Dies sollte jetzt dank der Redemption.dll nicht mehr passieren.

Alle andere Zugriffe wie z.B. auf Termine oder EMail funktionieren ähnlich.
Thomas Bachmann
  Mit Zitat antworten Zitat
Heffalump

Registriert seit: 3. Aug 2005
278 Beiträge
 
RAD-Studio 2009 Ent
 
#12

Re: Outlook Sicherheitsmeldung

  Alt 15. Jan 2006, 18:26
Hat den Nachteil, das Du auf die Weiterentwicklung der Software angewiesen bist. Im Fehlerfall wird es zudem schwehr werden, die Ursache zu finden (liegt es an Deiner Source oder an der Implementierung der Zusatzsoftware oder an der MAPI). Was ist wenn die nächste Outlookversion auf den Markt kommt, einer Deiner Kunden diese einsetzen muss und die "Brückensoftware" diese Outlookversion noch nicht unterstützt? Ich bin dann doch lieber für eine eigene Implementierung der benötigten Funktionen. Dass das auch mit dem Auslesen von Kontaktinformationen funktioniert (ohne Sicherheitshinweis), kannst Du diesem Beitrag entnehmen.
  Mit Zitat antworten Zitat
LuckySpacy

Registriert seit: 2. Apr 2003
Ort: Fränkisch-Crumbach
50 Beiträge
 
Delphi 10.4 Sydney
 
#13

Re: Outlook Sicherheitsmeldung

  Alt 16. Jan 2006, 11:03
Zitat von Heffalump:
Hat den Nachteil, das Du auf die Weiterentwicklung der Software angewiesen bist.
Das stimmt zwar, aber es funktioniert.
Meine Ausführungen sind an die gerichtet, die schnell und unkompliziert eine Lösung suchen.

Ich hatte mir übrigens auch Deine Lösung angeschaut. Nur diese ist leider schon im Ansatz gescheitert.
Ich habe mir Dein Programm MapiTestZip.zip heruntergeladen und wollte den Code in Delphi 7 kompilieren.
Ich bekam ein Fehler in folgender Zeile: "function PropertyIDtoPropertyTag(&object: IMAPIProp; pvID: ULONG): ULONG;"
Die Fehlermeldung lautet: "[Fehler] Unit4.pas(48 ) : Ungültiges Zeichen in Eingabedatei: '&' ($26)"
Ich muss gestehen, ich kann nichts damit anfangen und weiß auch nicht was falsch ist.

Möglicherweise liegt es auch an den eingebundenen Dateien: "mapidefs, mapiguid, mapitags, mapix".
Diese Dateien wurden ja von Dir nicht mitgeliefert.
Ich habe Sie im Forum Delphi3000.com gefunden.

Trotz alle dem habe ich mir Dein Quellcode angeschaut.
Um das alles zu Verstehen reicht "normales" Delphi-Wissen nicht aus.
Da muss man sich schon länger damit auseinander setzen.

Aber vielleicht kannst Du mir trotzdem helfen.
Was muss ich tun, damit ich Dein Programm fehlerfrei kompilieren kann?
Ich würde es nämlich gerne einmal debuggen.

Und was macht das Programm OutSpy.exe ?
Wieso benötige ich das?
Das Programm habe ich mir bisher noch nicht installiert.
Thomas Bachmann
  Mit Zitat antworten Zitat
Heffalump

Registriert seit: 3. Aug 2005
278 Beiträge
 
RAD-Studio 2009 Ent
 
#14

Re: Outlook Sicherheitsmeldung

  Alt 16. Jan 2006, 11:42
Zitat von LuckySpacy:
Meine Ausführungen sind an die gerichtet, die schnell und unkompliziert eine Lösung suchen.
Es gibt eine für mich wichtige Erfahrung, welche ich bisher im Rahmen der Programmierung gemacht habe. Schnelle Lösungen führen im Nachgang immer zu Problemen.

Zitat von LuckySpacy:
Ich hatte mir übrigens auch Deine Lösung angeschaut. Nur diese ist leider schon im Ansatz gescheitert.
Ich habe mir Dein Programm MapiTestZip.zip heruntergeladen und wollte den Code in Delphi 7 kompilieren.
Ich bekam ein Fehler in folgender Zeile: "function PropertyIDtoPropertyTag(&object: IMAPIProp; pvID: ULONG): ULONG;"
Die Fehlermeldung lautet: "[Fehler] Unit4.pas(48 ) : Ungültiges Zeichen in Eingabedatei: '&' ($26)"
Ich muss gestehen, ich kann nichts damit anfangen und weiß auch nicht was falsch ist.
Ersetze das '&' einfach durch '_', dann sollte es funktionieren.

Zitat von LuckySpacy:
Möglicherweise liegt es auch an den eingebundenen Dateien: "mapidefs, mapiguid, mapitags, mapix".
Diese Dateien wurden ja von Dir nicht mitgeliefert.
Ich habe Sie im Forum Delphi3000.com gefunden.
Die Dateien kannst Du von der gleichen Webseite herunterladen, von der Deine DLL stammt. Unter Resources gibt es den Punkt "Extended MAPI headers for Borland Delphi ".

Zitat von LuckySpacy:
Trotz alle dem habe ich mir Dein Quellcode angeschaut.
Um das alles zu Verstehen reicht "normales" Delphi-Wissen nicht aus.
Da muss man sich schon länger damit auseinander setzen.[Fehler]
Ich denke mal, das man sich generell mit der Software, den Schnittstellen und deren Arbeitsweise auseinander setzen muss. Ich verstehe durchaus, das die MAPI Programmierung nicht gerade einfach ist, da es sich hier um eine sehr umfangreiche Schnittstelle handelt. Wenn man es aber erst einmal verstanden hat, dann macht das auch noch Spaß und die gesammelten Erfahrungen sind Gold wert.

Zitat von LuckySpacy:
Und was macht das Programm OutSpy.exe ?
Wieso benötige ich das?
Das Programm habe ich mir bisher noch nicht installiert.
OutSpy ist das Setup für ein Outlook Addon. Dieses zeigt in ausführlicher Weise die internen Eigenschaften und Zugriffswege von Outlook im Zusammenspiel mit der MAPI.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:11 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz