Cómo editar "Enviar al destinatario del correo" en Windows Xp o Windows 7

Cómo editar "Enviar al destinatario del correo" en Windows Xp o Windows 7

El cliente que estoy usando es Windows Live Mail. Resultado deseado:

  1. El usuario hace clic derecho en un archivo y selecciona "Enviar a->Destinatario de correo" (u otro acceso directo creado personalizado).

  2. Aparece la ventana Nuevo mensaje de Windows Live Mail y contiene:

    Para: dirección de correo electrónico específica
    Asunto: (vacío)
    Cuerpo: (vacío)
    Se adjunta el archivo en el que se hizo clic

Lo más cerca que estuve es crear un acceso directo en la carpeta Enviar a con el siguiente objetivo: .C:\Program Files\Windows Live\Mail\wlmail.exe" /mailurl:mailto:[email protected]

El resultado es que aparece la ventana Nuevo mensaje de Windows Live Mail y contiene:

A:[correo electrónico protegido]"C:\somefile.txt"
Asunto: (vacío)
Cuerpo: (vacío)

Casi correcto excepto,el archivo seleccionado no está adjunto! Solo se menciona en el campo Para:.¿Cómo puedo adjuntarlo y al mismo tiempo completar el To:campo automáticamente?

EDITAR: "Tenga en cuenta que no puede adjuntar archivos desde la línea de comando", significa que al menos es muy difícil.

Respuesta1

Desafortunadamente, puede que no haya una buena manera de hacer esto, pero a continuación se muestra unaAutoHotkeyscript que en su mayor parte hace el trabajo.Una descripción general de AutoHotkey de Wikipedia está aquí.

Este script se probó en Windows 7 con Windows Live Mail 2012. Si bien la mayoría de las partes iniciales del script (hasta Run) son genéricas, el resto es específico y probablemente requerirá cambios si otro programa de correo electrónico GUI (por ejemplo, Outlook 365, Thunderbird, etc.) se utiliza.

Expectativas

El guión fue escrito teniendo en mente lo siguiente...

  • AutoHotkey se instala en la PC que ejecuta el script. Si desea convertir el script en un ejecutable independiente, consulteahk2exe.

  • El guión espera un únicoParámetro de línea de comando del script AutoHotkey- Una dirección de correo electrónico. Esto permite que un script maneje (potencialmente) diferentes direcciones de correo electrónico.

Para pasar una dirección, se debe crear un enlace para cada dirección potencial de la siguiente manera:

"C:\Path\To\AutoHotkey\AutoHotkey.exe" "C:\Path\To\Script.ahk"  [email protected]
  • En aras de una acción uniforme y utilizando parámetros de línea de comando (que aumentan la confiabilidad del script), el script finaliza y luego se reinicia wlmail.exe. Entonces, si ya estás trabajando con Windows Live Mail, ¡guarda tu trabajo antes de ejecutarlo!

  • El script utiliza el portapapeles. Por lo tanto, debe Ctrl+ Cel elemento que desea adjuntar antes de ejecutar el script.

Problemas conocidos

Desafortunadamente, no soy un AutoHotkey Ninja, por lo que es posible que este script no sea perfecto. ;-)

Sin embargo, después de un par de días de pruebas, el siguiente script fue confiable al menos el 99% de las veces.

  • Es posible que ocasionalmente experimente problemas de sincronización que provoquen elPulsación de tecla F10en el script para que Windows Live Mail no lo reconozca.

Esto se debe principalmente a que Windows Live Mail carece de métodos de automatización más confiables (es decir, sin archivos adjuntos de línea de comando, interfaz de cinta no estándar y sin combinación de teclas de acceso rápido para adjuntar archivos).

  • Si aparece la ventana "Tareas programadas", esto también puede alterar las cosas.

  • Si la ruta del portapapeles no es válida, es posible que deba finalizar manualmente el script (ver más abajo).

Finalmente, tenga en cuenta que si las acciones del script se interrumpen (no llega al punto en el que se abre Windows Live Maily el artículo que deseas se adjunta automáticamente), debe mirar el área de Inicio rápido y asegurarse de cerrar esa instancia del script si es necesario antes de volver a intentarlo.

Script AutoHotkey para automatizar archivos adjuntos en Windows Live Mail

Usar

Copie un elemento en el portapapeles ( Ctrl+ Ces lo más fácil), luego haga clic en el enlace que inicia el script (que también debe pasar el nombre del destinatario como parámetro de línea de comando).

El texto del script a continuación debe copiarse y pegarse en su totalidad en un .txtarchivo estándar y renombrarse con la .ahkextensión (script AutoHotkey).

; -- Functions & Variables --
; A custom to check if a given processes is active 
  ProcessExist(Name){
      Process,Exist,%Name%
      return Errorlevel
  }

; -- Begin Script --

; Command line parameter debug box. 
;MsgBox, The number of command line parameters is %0%. `n`n The email recipient is %1%

; Check for command line parameters - terminate if we have anything but one. 
If 0 <> 1
{
     MsgBox, You have not specified a valid email address. Script terminating.
     exitapp                        ; Exit our script
 }

; If our clipboard is empty, show a warning
If clipboard =
{
     MsgBox, 4, , Please copy your attachment to the clipboard.`n`nContinue?
     IfMsgBox, No, exitapp          ; Exit our script
}

ClipWait                            ; Wait for the clipboard to contain text.

;Display the last item copied to the clipboard to confirm this is the item we want. 
Loop, parse, clipboard, `n, `r
{
    MsgBox, 4, , File number %A_Index% for attachement is located at %A_LoopField%.`n`nEmail recipient is %1%.`n`nContinue?
    IfMsgBox, No, exitapp           ; Quit the AutoHotkey script if the user says no.
}

; Start with a clean Windows Live Mail instance. 
; wlmail.exe may active as a process so we make sure to kill it.

If ProcessExist("wlmail.exe")
    Process, Close, wlmail.exe

Sleep 100                           ; Make sure the process has time to terminate

; Start a fresh wlmail.exe process to send a new email.
; /mailurl:mailto: is part of the wlmail.exe command line options.
Run, "C:\Program Files (x86)\Windows Live\Mail\wlmail.exe" /mailurl:mailto:%1%

; Make sure our New Message window is active
WinWait, New Message, 
IfWinNotActive, New Message, , WinActivate, New Message, 
WinWaitActive, New Message,

; If the script is going to fail, it will be between the TAB TAB F10 4 strokes.

; Double TAB brings us to the body of the message. Otherwise, the address field is the first active
; item and F10 brings up a different menu.
Send, {TAB} {TAB}

; Show the attachment dialog via pressing F10 then 4.
; Increase the Sleep value for better key stroke reliability -- 5000+ recommended.
; Otherwise, Windows Live Mail seems to "miss" the F10 stroke.
Sleep 5000              
Send, {F10}
Send, 4 

; Make sure our Open file dialog is active
WinWait, Open, 
IfWinNotActive, Open, , WinActivate, Open, 
WinWaitActive, Open,  

; Copy our file path from the clipboard and open it
Send, {CTRLDOWN}v{CTRLUP}
Sleep 1000
Send {TAB}{TAB}{Enter}

exitapp                                 ; Exit our script

información relacionada