Selektierte Datei(en) per Email senden (Outlook)

German support forum

Moderators: white, Hacker, Stefan2

User avatar
tuska
Power Member
Power Member
Posts: 3740
Joined: 2007-05-21, 12:17 UTC

Re: Selektierte Datei(en) per Email senden (Outlook)

Post by *tuska »

2Stefan2
Ich muß das Thema wie folgt konkretisieren:
  1. ForSelectedFiles_Do_AddToOutlook_v3.cmd
    1. Die Datei "archive.zip" wird in C:\Users\user\AppData\Local\Temp\ nach Aufruf des Skripts ordnungsgemäß überschrieben!
    2. Die Datei "archive.zip" muß gegebenenfalls selbst manuell gelöscht werden
    3. Es ist ein Tastendruck erforderlich um das DOS-Fenster zu schließen
      EDIT2: Zeile 51 PAUSE geändert auf: REM PAUSE ... damit sich das DOS-Fenster hinterher schließt.
  2. ForSelectedFiles_Do_AddToOutlook.cmd
    1. DOS-Fenster mit Löschabfrage erscheint
    2. DOS-Fenster - Löschabfrage bestätigen, zB mit N (für Nein) - das DOS-Fenster wird geschlossen
    3. Die Datei "archive.zip" wird in jenem Ordner angelegt, indem die Dateien für die .ZIP Erstellung markiert wurden,
      d.h. die Datei wird nicht in C:\Users\user\AppData\Local\Temp\ angelegt
    4. Die Datei "archive.zip" muß gegebenenfalls selbst manuell gelöscht werden - je nach DOS-Löschbestätigungsabfrage
    5. Achtung: Sofern das Skript erneut *im selben Ordner* aufgerufen wird ohne dass vorher die Datei "archive.zip" gelöscht wurde,
      dann werden die markierten Dateien in der vorhandenen "archive.zip" Datei ERGÄNZT(!) und das DOS-Fenster kann nur mehr
      mit Strg+C (Abbruch) und J oder N beendet werden! Bei Aufruf des Skripts in einem anderen Ordner wird die Datei "archive.zip"
      dann in diesem Ordner angelegt.
Ich denke, ich habe mich nach all den Jahren wieder etwas verwirren lassen und es ist ohnehin alles in Ordnung.
Tut mir leid, dass ich Dich mit diesem Thema nochmals belästigt habe. :(

EDIT:
Punkt 2.e ergänzt.
Last edited by tuska on 2023-05-15, 18:29 UTC, edited 2 times in total.
User avatar
Stefan2
Power Member
Power Member
Posts: 4133
Joined: 2007-09-13, 22:20 UTC
Location: Europa

Re: Selektierte Datei(en) per Email senden (Outlook)

Post by *Stefan2 »

Kein Problem Karl, frage ruhig weiter nach.

zu """ c. Es ist ein Tastendruck erforderlich um das DOS-Fenster zu schließen"""
Wie du weiter oben gelernt hattest hilft da (REM vor Pause eingefügt) , oder PAUSE durch TIMEOUT /T 10 ersetzen.



zu """Die Datei "archive.zip" muß gegebenenfalls selbst manuell gelöscht werden"""
Das hatte ja auf der letzen Seite bereits funktioniert, jetzt nicht mehr?
Haben wir da eventuell die doppelten Anführungsstriche verdoppelt?

Ändere den Code
ECHO.
if exist "%newARCH%" DEL "%newARCH%

zu
ECHO.
ECHO "%newARCH%"
if exist "%newARCH%" DEL "%newARCH%"

Diese zusätzliche ECHO "%newARCH%" sollte den richtigen Pfad ausgeben. Passt das bei dir?
Sind da je zweimal "-Anführungsstriche am Anfang und am Ende?



Wie oben erwähnt, du kannst mit mir chatten auf Chatzy.com/91583829509442 (bin aber nicht immer online)
User avatar
tuska
Power Member
Power Member
Posts: 3740
Joined: 2007-05-21, 12:17 UTC

Re: Selektierte Datei(en) per Email senden (Outlook)

Post by *tuska »

2Stefan
Danke für den nochmaligen Hinweis auf REM PAUSE - damit konnte ich das DOS-Fenster schließen.

Bezüglich ... if exist "%newARCH%" DEL "%newARCH% ... habe ich oben unter Punkt 1.a folgendes geschrieben:
"Die Datei "archive.zip" wird in C:\Users\user\AppData\Local\Temp\ nach Aufruf des Skripts ordnungsgemäß überschrieben!"

In der Praxis interpretiere ich das so:
Sofern eine archive.zip Datei vorhanden ist wird sie VOR Erstellung einer neuen archive.zip Datei gelöscht.
Wenn dem nicht so wäre, dann würden neue Dateien in der archive.zip Datei ERGÄNZT - so wie das unter dem von mir
neu ergänzten Punkt 2.e oben gegebenenfalls passiert.

Es stehen somit 2 voll funktionsfähige Varianten zur Verfügung.

Besten Dank für Deine prompte Unterstützung! :)

PS:
Grundsätzlich betrachte ich das Thema (erneut) als erledigt.
Danke auch für Dein Chat-Angebot (hebe ich mir für ein anderes Thema auf...).
User avatar
tuska
Power Member
Power Member
Posts: 3740
Joined: 2007-05-21, 12:17 UTC

Re: Selektierte Datei(en) per Email senden (Outlook)

Post by *tuska »

Zusammenfassung
  1. ForSelectedFiles_Do_AddToOutlook.cmd - Skript - Versendung einer/mehrerer Datei(en) -gezippt- mit Outlook
    1. DOS-Fenster mit Löschabfrage betreffend Datei "archive.zip" erscheint
    2. DOS-Fenster - Löschabfrage bestätigen, zB mit N (für Nein) - das DOS-Fenster wird geschlossen
    3. Die Datei "archive.zip" wird in jenem Ordner angelegt, indem die Dateien für die .ZIP Erstellung markiert wurden,
      d.h. die Datei wird NICHT in C:\Users\user\AppData\Local\Temp\ angelegt [cd %TEMP%]
    4. Die Datei "archive.zip" muß gegebenenfalls selbst manuell gelöscht werden - je nach Eingabe in der DOS-Löschbestätigungsabfrage
    5. ACHTUNG: Sofern das Skript erneut *im selben Ordner* aufgerufen wird ohne dass vorher die Datei "archive.zip" gelöscht wurde,
      dann werden die markierten Dateien in der vorhandenen "archive.zip" Datei ERGÄNZT(!) und das DOS-Fenster kann nur mehr
      mit Strg+C (Abbruch) und J oder N beendet werden! Bei Aufruf des Skripts in einem anderen Ordner wird die Datei "archive.zip"
      dann in diesem Ordner angelegt. Es empfiehlt sich daher grundsätzlich den Inhalt der .ZIP Datei vor Versendung zu überprüfen(!).
  2. ForSelectedFiles_Do_AddToOutlook_v3.cmd - Skript - Versendung einer/mehrerer Datei(en) -gezippt- mit Outlook
    1. Die Datei "archive.zip" wird in C:\Users\user\AppData\Local\Temp\ nach Aufruf des Skripts ordnungsgemäß überschrieben!
    2. Die Datei "archive.zip" kann danach in %TEMP% gegebenenfalls selbst manuell gelöscht werden
    3. Das DOS-Fenster schließt sich automatisch. [Sofern man den Inhalt des DOS-Fensters ansehen möchte ist es erforderlich
      in Zeile 51 den Code von REM PAUSE auf PAUSE zu ändern].
  3. Versendung einer einzelnen -ungezippten- Datei mit Outlook
    1. Kommando: outlook ... Parameter: /a %P%N
⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺
1. ForSelectedFiles_Do_AddToOutlook.cmd - Skript
7-Zip Standalone-Konsolenversion - wichtige Einstellung treffen:
(Nur) den Pfad zur Datei 7za.exe gegebenenfalls in der Skriptdatei (.cmd) anpassen:
https://www.7-zip.de/download.html --- Standalone-Konsolenversion
%COMMANDER_PATH% ist dort, wo sich die Dateien TOTALCMD.EXE oder TOTALCMD64.EXE befinden.

Code: Select all

 echo "%Commander_Path%\TOOLs\7-zip-A\7za.exe "  a "%newARCH%" "@%listfiletxt%"
      "%Commander_Path%\TOOLs\7-zip-A\7za.exe "  a "%newARCH%" "@%listfiletxt%"

Code: Select all

@ECHO OFF
 REM Found at http://ghisler.ch/board/viewtopic.php?p=301286#301286
 REM Batch script "ForSelectedFiles_Do_AddToOutlook.cmd" by Stefan, 2015-10-24,
 REM v0.02 (now with more quotes, and TCs %UL parameter for german umlauts)
 REM
 REM Use from a Total Commander Button:
 REM Command:     "D:\rive\path\to\this\batch.cmd"
 REM Parameter:   "%UL" "%Parchive.zip"
 REM (Both cmd and para including the quotes. See TC help for more params)
 REM Startpfad:
 REM Tooltip:     ForSelectedFiles_Do_AddToOutlook.CMD
 REM Icondatei:   C:\WINDOWS\System32\imageres.dll (zB das Briefsymbol)

 REM
 REM Usage: select a few files and execute the button.
 REM
 REM
 REM THE CODE
 SET listfiletxt=%~1
 IF ,%listfiletxt%,==,, GoTo _ERROR

 REM NOTEPAD "%listfiletxt%"
 ECHO.
 ECHO Zipping files to archive and adding to Outlook:
 ECHO.
 ECHO ---------------------------------
 ECHO Set 7z @listfiletxt to "%listfiletxt%"
 ECHO.
 SET newARCH=%~2
 ECHO Set new archive name to "%newARCH%"
 ECHO ---------------------------------
 ECHO.
 ECHO.
 ECHO * * * Calling 7Zip:
 REM http://www.7-zip.de/download.html  --- Standalone-Konsole
 REM http://www.7-zip.org/download.html --- standalone console version
 echo "%Commander_Path%\TOOLs\7-zip-A\7za.exe "  a "%newARCH%" "@%listfiletxt%"
      "%Commander_Path%\TOOLs\7-zip-A\7za.exe "  a "%newARCH%" "@%listfiletxt%"

 ECHO.
 ECHO * * * Calling Outlook
 START "" outlook /a "%newARCH%"

 ECHO.
 REM ECHO * * * Deleting archive:
 DEL /P "%newARCH%"

 ECHO.
 ECHO * * * All Done!
 REM PAUSE => Falls irgendetwas anzupassen wäre, dann REM entfernen!
 GoTo :EOF

 :_ERROR
 ECHO.
 ECHO ! listfiletxt not found !
 ECHO "%listfiletxt%"
 PAUSE
 GoTo :EOF
 REM EOF - Batch finished here. Information following:
    ForSelectedFiles_Do_AddToOutlook.cmd - BUTTON

Code: Select all

TOTALCMD#BAR#DATA
%COMMANDER_PATH%\Tools\Outlook\ForSelectedFiles_Do_AddToOutlook.cmd
"%UL" "%Parchive.zip"
%COMMANDER_PATH%\Icons\outicon.exe,4
ForSelectedFiles_Do_AddToOutlook.cmd || Ctrl+Shift+E (em_FilesToEmail)|Zip one or more files and insert into new Outlook message || - archive.zip remains in FOLDER|https://ghisler.ch/board/viewtopic.php?t=40130 Selektierte Datei(en) per Email senden (Outlook)


-1
    Button in Buttonbar erstellen (CODE kopieren/einfügen)
  1. Rechts neben "CODE:" auf "ALLES AUSWÄHLEN" klicken, dann Strg+C drücken (kopieren in Zwischenablage).
  2. Rechtsklick auf einen beliebigen Platz in der Buttonbar tätigen, dann auf "Einfügen" klicken.
     ⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺
  3. Option1: Zeige mit dem Cursor (etwas länger) auf den neu erstellten Button: "Tooltip" erscheint (-> Beschreibung zum Button).
                  Beim Tooltip sind max. 259 Zeichen gestattet. | = Zeilenumbruch erzeugen, || = | als Trennzeichen erzeugen.
  4. Option2: Buttonbar - Feld "Tooltip": Ein einzelnes Leerzeichen deaktiviert die Anzeige des Tooltips.
                  Bei leerem Feld "Tooltip" wird der Inhalt von Feld "Kommando" angezeigt.
  5. Option3: Siehe FAQs und Erklärung: Button-code (TOTALCMD#BAR#DATA)  <-- <Strg+Klick auf den Link...>
    usercmd.ini (erforderlich für Shortcut Strg+Umsch+E) - Abschnitt: em_FilesToEmail
[Falls die Datei "usercmd.ini" nicht existiert, dann mit einem Texteditor erstellen und nachstehendes eintragen].

Code: Select all

[em_FilesToEmail]
button=C:\WINDOWS\System32\imageres.dll,15
cmd=%COMMANDER_PATH%\Tools\Outlook\ForSelectedFiles_Do_AddToOutlook.cmd
param=""%UL" "%Parchive.zip""
path=%COMMANDER_PATH%\Tools\Outlook\
menu=ForSelectedFiles_Do_AddToOutlook  (Eine oder mehrere Dateien zippen und in neue Outlook-Nachricht einfügen)
    wincmd.ini - Abschnitt 'Shortcuts' --- Strg+Umsch+E
Abschnitt [Shortcuts] ... wie folgt ergänzen:

Code: Select all

CS+E=em_FilesToEmail
⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺
2. ForSelectedFiles_Do_AddToOutlook_v3.cmd - Skript
7-Zip Standalone-Konsolenversion - wichtige Einstellung treffen:
(Nur) den Pfad zur Datei 7za.exe gegebenenfalls in der Skriptdatei (.cmd) anpassen:
https://www.7-zip.de/download.html --- Standalone-Konsolenversion
%COMMANDER_PATH% ist dort, wo sich die Dateien TOTALCMD.EXE oder TOTALCMD64.EXE befinden.

Code: Select all

 echo "%Commander_Path%\TOOLs\7-zip-A\7za.exe "  a "%newARCH%" "@%listfiletxt%"
      "%Commander_Path%\TOOLs\7-zip-A\7za.exe "  a "%newARCH%" "@%listfiletxt%"

Code: Select all

@ECHO OFF
REM Found at http://ghisler.ch/board/viewtopic.php?p=301286#301286
REM Batch script "ForSelectedFiles_Do_AddToOutlook.cmd"
REM Example Attachment: Archive.zip (with file1, file2, file3, ...)
REM by Stefan, 2015-10-25,
REM v0.02 (now with more quotes, and TCs %UL parameter for german umlauts)
REM v0.03 delete old archive, if existent
REM
REM Use from a Total Commander Button:
REM Command:     "D:\rive\path\to\this\batch.cmd"
REM Parameter:   "%UL"
REM (Both cmd and para including the quotes. See TC help for more params)
REM Startpfad:
REM Tooltip:     ForSelectedFiles_Do_AddToOutlook.CMD
REM Icondatei:   C:\WINDOWS\System32\imageres.dll (zB das Briefsymbol)

REM
REM Usage: select a few files and execute the button.
REM
REM
REM THE CODE
SET listfiletxt=%~1
IF ,%listfiletxt%,==,, GoTo _ERROR

REM NOTEPAD "%listfiletxt%"
ECHO.
ECHO Zipping files to archive and adding to Outlook:
ECHO.
ECHO ---------------------------------
ECHO Set 7z @listfiletxt to "%listfiletxt%"
ECHO.
SET newARCH=%TEMP%\archive.zip
ECHO Set new archive name to "%newARCH%"
ECHO ---------------------------------
ECHO.
if exist "%newARCH%" DEL "%newARCH%"

ECHO.
ECHO * * * Calling 7Zip:
REM http://www.7-zip.de/download.html  --- Standalone-Konsole
REM http://www.7-zip.org/download.html --- standalone console version
 echo "%Commander_Path%\TOOLs\7-zip-A\7za.exe "  a "%newARCH%" "@%listfiletxt%"
      "%Commander_Path%\TOOLs\7-zip-A\7za.exe "  a "%newARCH%" "@%listfiletxt%"

ECHO.
ECHO * * * Calling Outlook
START "" outlook /a "%newARCH%"

ECHO.
ECHO * * * All Done!
REM PAUSE
GoTo :EOF

:_ERROR
ECHO.
ECHO ! listfiletxt not found !
ECHO "%listfiletxt%"
PAUSE
GoTo :EOF
    ForSelectedFiles_Do_AddToOutlook_v3.cmd - BUTTON

Code: Select all

TOTALCMD#BAR#DATA
%COMMANDER_PATH%\Tools\Outlook\ForSelectedFiles_Do_AddToOutlook_v3.cmd
"%UL" "%Parchive.zip"
C:\WINDOWS\System32\imageres.dll,15
ForSelectedFiles_Do_AddToOutlook_v3.cmd|Eine oder mehrere Dateien zippen und in eine neue Outlook-Nachricht einfügen|archive.zip wird in %TEMP% gespeichert!|https://ghisler.ch/board/viewtopic.php?t=40130 Selektierte Datei(en) per Email senden (Outlook)


-1

⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺⸺
3. Versendung einer einzelnen Datei - ungezippt - mit Outlook - BUTTON

Code: Select all

TOTALCMD#BAR#DATA
outlook
/a %P%N
%COMMANDER_PATH%\Icons\outicon.exe,1
Kommando: outlook /a %P%N|Versendung einer einzelnen Datei (unter dem Cursor) - ungezippt - mit Outlook|https://ghisler.ch/board/viewtopic.php?t=40130

0
-1
    usercmd.ini (erforderlich für Shortcut Strg+E) - Abschnitt: em_FileToEmail
[Falls die Datei "usercmd.ini" nicht existiert, dann mit einem Texteditor erstellen und nachstehendes eintragen].

Code: Select all

[em_FileToEmail]
button=
cmd=outlook
param=/a %P%N
menu=Strg+E | Versendung einer einzelnen Datei (unter dem Cursor) - ungezippt - mit Outlook
    wincmd.ini - Abschnitt 'Shortcuts' --- Strg+E
Abschnitt [Shortcuts] ... wie folgt ergänzen:

Code: Select all

C+E=em_FileToEmail


Windows 11 Pro (x64) Version 22H2 (OS build Build 22621.1702) | TC 11.00b2 x64/x86
Microsoft® Outlook® LTSC MSO (16.0.14332.20501) 64-Bit (Bestandteil von: Microsoft Office LTSC Professional Plus 2021)
Usercmd.ini Einstellungen | Umgebungsvariablen (zB %COMMANDER_PATH%, etc.)
Post Reply