AGB  ·  Datenschutz  ·  Impressum  







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

Drag&Drop aus neuem Outlook

Ein Thema von stalkingwolf · begonnen am 17. Mär 2025 · letzter Beitrag vom 17. Mär 2025
Antwort Antwort
stalkingwolf

Registriert seit: 6. Mai 2011
547 Beiträge
 
#1

Drag&Drop aus neuem Outlook

  Alt 17. Mär 2025, 15:31
Moin,

leider bekommen wir immer mehr Anfragen wegen Drag&Drop aus dem neuen Outlook.
Die alte Version funktioniert leider gar nicht mehr.
Hat sich jemand damit jemand schon beschäftigt? Im Netz habe ich leider nichts gefunden.

Wenn ich den Drag&Drop auf dem Desktop ablege, dann bekommt man mittlerweile eine .eml
Das nenne ich ja schon man fortschrittlich von Microsoft.
Die Datei kann unser Programm dann auch einwandfrei verarbeiten.

Nun kann ich unseren Kunden natürlich den Umweg über den Desktop erklären, aber wie Anwender so sind "Ging früher warum nicht? Nutze doch immer noch Outlook wie früher".

ChatGPT erwähnt das der neue Austausch asynchron ist. Beim ablegen auf den Desktop fragt auch Outlook immer ob man die Datei beibehalten will und legt erst beim Klick auf Bestätigen die Datei ab.

Gruß Sven
  Mit Zitat antworten Zitat
stalkingwolf

Registriert seit: 6. Mai 2011
547 Beiträge
 
#2

AW: Drag&Drop aus neuem Outlook

  Alt 17. Mär 2025, 17:44
Mal etwas rumgespielt und man erhält folgende Formate :

- DragContext
- DragImageBits
- chromium/x-renderer-taint
- CF_HDROP
- Chromium Web Custom MIME Data Format

CF_HDROP bekomme ich nicht ausgelesen. Was normalerweise sonst immer funktioniert.

DataObj.GetData(FmtEtc, Medium)
ist nicht S_OK

Code:
procedure GetFileListFromObj(const DataObj: IDataObject; FileList: TStringList);
var
  FmtEtc: TFormatEtc;                  // specifies required data format
  Medium: TStgMedium;                  // storage medium containing file list
  DroppedFileCount: Integer;           // number of dropped files
  Count,I: Integer;                    // loops thru dropped files
  FileNameLength: Integer;             // length of a dropped file name
  FileName: pchar;                     // name of a dropped file
begin

    FmtEtc.cfFormat  := CF_HDROP;
    FmtEtc.ptd       := nil;
    FmtEtc.dwAspect  := DVASPECT_CONTENT;
    FmtEtc.lindex    := -1;
    FmtEtc.tymed     := TYMED_HGLOBAL;

    if DataObj.GetData(FmtEtc, Medium) = S_OK then begin
        try
            OleCheck(DataObj.GetData(FmtEtc, Medium));
            try
                DroppedFileCount := DragQueryFile(Medium.hGlobal, $FFFFFFFF, nil, 255);

                for i := 0 to (DroppedFileCount - 1) do begin
                    FileNameLength := DragQueryFile(Medium.hGlobal, i , nil, 0) + 1;
                    FileName:= StrAlloc(FileNameLength);
                    DragQueryFile(Medium.hGlobal,i , FileName, FileNameLength);
                    FileList.Append( StrPas(FileName));
                    StrDispose(FileName);
                end;
            finally
                DragFinish(Medium.hGlobal);
            end;
        finally
            ReleaseStgMedium(Medium);
        end;
    end;
end;
Ein paar im Netz vermuten die Daten sind in Chromium Web Custom MIME Data Format.
Aber das ist nur immer um die 1500 Zeichen. Vermutlich nur Metadaten. Aber ich komme an die Infos nicht ran.
  Mit Zitat antworten Zitat
Antwort Antwort


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 12:00 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz