Deutsches AutoHotkey Homepage AutoHotkey Community
Wir helfen uns gegenseitig aus der Patsche
 
 FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   RegistrierenRegistrieren 
 ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin 

E-Mail Clien

 
Neues Thema eröffnen   Neue Antwort erstellen    AutoHotkey Community Foren-Übersicht -> Vollständige Skripte & Funktionen
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Ripp3r]D3[



Anmeldedatum: 11.11.2007
Beiträge: 1033
Wohnort: Altenburg\Kernel32.dll

BeitragVerfasst am: Sa Nov 24, 2007 3:33 pm    Titel: E-Mail Clien Antworten mit Zitat

Ein einfacher E-Mail Client in ahk

Code:

FileInstall, popclient.exe,popclient.exe,1
FileInstall, VMailer.exe,VMailer.exe,1
IniRead,Server, Server.ini,Host,Host,pop.domain.de
IniRead,User, Server.ini,User,User,User/@domain.com
IniRead,Password, Server.ini,Password,Password,123456

Gui, Add, Edit, x6 y5 w160 h20 vServer ,%Server%
Gui, Add, Edit, x6 y35 w160 h20 vUser,%User%
Gui, Add, Edit, x6 y65 w160 h20 Password vPassword,%Password%
Gui, Add, ListBox, x176 y5 w290 h230 vList1 gget Multi,
Gui, Add, ListBox, x6 y235 w460 h80 vList2 ReadOnly,
Gui, Add, CheckBox, x6 y95 w160 h20 vCheck1,Clear Mails
Gui, Add, CheckBox, x6 y115 w160 h30 vCheck2, Load Once
Gui, Add, Button, x36 y155 w100 h30 gGetMail,Get E-Mails
Gui, Add, Button, x36 y195 w100 h30 gSend,Send
Gui, Add, Edit, x476 y5 w280 h300 vMail,
Gui, Show, x131 y91 h314 w765, New GUI Window

Return

GuiClose:
ExitApp


GetMail:
GuiControlGet,Check1,,Check1
GuiControlGet,Check2,,Check2
GuiControlGet,Server,,Server
GuiControlGet,User,,User
GuiControlGet,Password,,Password
IniWrite,%Server%, Server.ini,Host,Host
IniWrite,%User%, Server.ini,User,User
IniWrite,%Password%, Server.ini,Password,Password
if (Check1=1)
{
entf=true
}
else
{
entf=false
}
if (Check2=1)
{
Once=true
}
else
{
Once=false
}
pop3=%Server%
username_email=%User%
password_email=%Password%
dir_emails=%A_ScriptDir%\emails\
FileCreateDir, %dir%
IfNotExist %dir_emails%%username_email%
FileCreateDir, %dir_emails%%username_email%

mail=
(
<?xml version="1.0" encoding="UTF-8"?>
<ConfigData>
   <Server>%pop3%</Server>
   <Port>110</Port>   
   <Username>%username_email%</Username>      
   <Password>%password_email%</Password>
   <SaveMessagesDirectory>%dir_emails%%username_email%</SaveMessagesDirectory>
   <DeleteFromServer>%entf%</DeleteFromServer>
   <OnlyDownloadOnce>%Once%</OnlyDownloadOnce>
</ConfigData>
)

bat=
(
popclient.exe -configfile email_config.xml
)
filedelete email_config.xml
fileappend, %mail%, email_config.xml
filedelete Mail.bat
fileappend, %bat%, Mail.bat
filedelete Log.txt
GuiControl,, List2,Please Wait...
runwait,Mail.bat >Log.txt ,,hide
Loop, Read,%A_ScriptDir%\Log.txt ; Datei zeilenweise einlesen
   {
  GuiControl,, List2,%A_LoopReadLine%
  GuiControl, Choose, List2,%A_LoopReadLine%
   }
Loop, %dir_emails%%username_email%\*.txt, , 1  ; Recurse into subfolders.
{
GuiControl,, List1,%A_LoopFileName%
GuiControl, Choose, List1,%A_LoopFileName%
}
Loop, parse, List1
{
    MsgBox Selection number %A_Index% is %A_LoopField%.
}
return
get:
GuiControlGet,Liste1,,List1
FileRead,Readmaile,%dir_emails%%username_email%\%Liste1%
GuiControl,,Mail,%Readmaile%
return


Send:
IniRead,smtp, Server.ini,Host,smtp,smtp.domain.de
IniRead,User, Server.ini,User,User,User/@domain.com
IniRead,Password, Server.ini,Password,Password,123456
Gui, 2:+owner1
Gui +Disabled
Gui 2:Add, Edit, x6 y5 w150 h20 vsmtp,%smtp%
Gui 2:Add, Edit, x156 y5 w150 h20 vuser,%User%
Gui 2:Add, Edit, x306 y5 w150 h20 Password vPassword,%Password%
Gui 2:Add, Edit, x6 y25 w150 h20 vsendto,Send To
Gui 2:Add, Button, x156 y25 w300 h20 gSendNow, Send
Gui 2:Add, Edit, x6 y55 w450 h300 vmsg,
Gui 2:Show, x131 y91 h366 w466, Send
Return

2GuiClose:
2GuiEscape:
Gui, 1:-Disabled  ; Re-enable the main window (must be done prior to the next step).
Gui Destroy
return

SendNow:
GuiControlGet,smtp,,smtp
GuiControlGet,Password,,Password
GuiControlGet,User,,user
GuiControlGet,sendto,,sendto
GuiControlGet,msg,,msg
IniWrite,%smtp%, Server.ini,Host,smtp
F7a=example.txt
LN2=%User%
smtpserver=%smtp%
email=%User%
emailto=%sendto%
user=%User%
pw=%Password%
Fileappend,From:%User%`r`nSubject:%LN2%`r`n`r`n%msg%`,`r`n%F7ab%,%F7a%
run,%A_ScriptDir%\VMailer.exe %F7a% %smtpserver% %email% %emailto% %user% %pw%,
return


Ihr müsst euch die Programme
Command Line POP Client 1.01
VMailer
runterladen
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
garry



Anmeldedatum: 25.10.2005
Beiträge: 602
Wohnort: switzerland

BeitragVerfasst am: Sa Nov 24, 2007 6:07 pm    Titel: Antworten mit Zitat

hello Ripp3r]D3[,
muss wieder weg , schnell mein Senf wieder dazu...und wieder nur ein Teil
kannst noch die Funktion beschreiben von:
-clear mails
-load once
-rechtes Edit-Feld

dies funktionierte bei mir nicht, jetzt geht's
Code:
SENDNOW:
Gui,2:submit,nohide
VMAILER=%A_ScriptDir%\vmailer.exe
F7ac=result2.txt
 ifexist,%F7ac%
    Filedelete,%F7ac%

GuiControlGet,smtp,,smtp
GuiControlGet,Password,,Password
GuiControlGet,User,,user
GuiControlGet,sendto,,sendto
GuiControlGet,msg,,msg
IniWrite,%smtp%, Server.ini,Host,smtp

PW=%Password%
SMTP=%smtp%
TO=%sendto%
FROM=%user%
LN2=Test-Meldung
CX1=Hello Garry
     Fileappend,From:%From%`r`nSubject:%LN2%`r`n`r`n%CX1%`,`r`n`r`n%MSG%,%F7ac%
     runwait,%VMAILER% %F7ac% %SMTP% %TO% %FROM%
     Filedelete,%F7ac%
return
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
msgbox



Anmeldedatum: 05.05.2007
Beiträge: 818
Wohnort: C:\

BeitragVerfasst am: Sa Nov 24, 2007 6:16 pm    Titel: Antworten mit Zitat

Ich möchte auch gerne meinen "Senf" abgeben(Ketchup ist auch eine gute Alternative): Die Überschirft hat einen Fehler: E-Mail Client
E-Mail Client man schreibt an mit t. Du solltest auf deine Rechtschreibung achten Wink
_________________

msgbox, 1577008, Ich bin msgbox, Teste mich mal
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
FettnapfDetector
Gast





BeitragVerfasst am: Sa Nov 24, 2007 7:11 pm    Titel: Antworten mit Zitat

Zitat:
E-Mail Client man schreibt an mit t. Du solltest auf deine Rechtschreibung achten
@ msgbox
Ach, Ripp3r]D3[ vergisst ein 't' und du beim Hinweis darauf ein 'm'. Und plazierst dabei noch ein 'verwaistes' Wort. Muuhahahaa Laughing
Stopp! Das heisst wahrscheinlich "E-Mail Client Mann schreibt an mit t". Äh - an wen? Und was ist t?? Shocked
Nach oben
BoBo¨
Gast





BeitragVerfasst am: Sa Nov 24, 2007 7:14 pm    Titel: Antworten mit Zitat

Zitat:
Und was ist t??
Der fehlende Buchstabe aus platzierst ? Laughing
Nach oben
Ripp3r]D3[



Anmeldedatum: 11.11.2007
Beiträge: 1033
Wohnort: Altenburg\Kernel32.dll

BeitragVerfasst am: Sa Nov 24, 2007 9:50 pm    Titel: Antworten mit Zitat

garry hat Folgendes geschrieben:
hello Ripp3r]D3[,
muss wieder weg , schnell mein Senf wieder dazu...und wieder nur ein Teil
kannst noch die Funktion beschreiben von:
-clear mails
-load once
-rechtes Edit-Feld

dies funktionierte bei mir nicht, jetzt geht's


Clear Mails -> Die e-mails werden vom server geladen und gelöscht
Load Once -> Es werden nur ungelesene Mails geladen
Rechtes Editfeld anzeigen der e-mails

Wegen code beschreibung schaue mal im forum unter VMailer nach.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
garry



Anmeldedatum: 25.10.2005
Beiträge: 602
Wohnort: switzerland

BeitragVerfasst am: Sa Nov 24, 2007 11:30 pm    Titel: Antworten mit Zitat

danke für die Erklärungen , läuft gut

werde die unnötigen Variablen in meinem Script noch enfernen
und noch zusätzliche Edit Felder machen für:
LN2=Test-Meldung (subject)
CX1=Hello Garry (Anrede)

Mail wird alphabetisch sortiert angezeigt ,
besteht Möglichkeit nach Datum zu sortieren ?

danke für den script, wünsche ein schönes Wochenende
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
garry



Anmeldedatum: 25.10.2005
Beiträge: 602
Wohnort: switzerland

BeitragVerfasst am: So Nov 25, 2007 11:20 am    Titel: Antworten mit Zitat

hello Ripp3r]D3[,
Dein script hat gut funktioniert, habe Kosmetik gemacht
nach Datum sortiert indem ich die 3. Linie ausgelesen habe
weiss nicht ob das von POP input server abhängig ist, evtl anpassen

sortieren funktioniert nur für bluewin.ch (Schweiz) CASE-1
hier Beispiel Linie 3 , zweiter Teil Datum suchen und danach sortieren

Zitat:
;Return-Path: <xyz@bluewin.ch>
;Received: from mail14.bluewin.ch (195.186.19.62) by mssezhh.msg.bluewin.ch (Bluewin 7.3.121)
; id 46517FE511E327CA for xyz@bluewin.ch; Sun, 25 Nov 2007 08:45:41 +0000


CASE-1 wird übersprungen, sollte allgemein funktionieren (no sort )
wenn Sortierung erwünscht dementsprechend anpassen
für bluewin nur den Befehl blockieren ( ;goto,OVERSKIP1 )
in CASE-1 wird nach Datum sortiert und letztes mail angezeigt

Code:
;--------- saved at Samstag, 24. November 2007 16:52:05 --------------
;popclient.exe=
;http://www.downloadjunction.com/product/store/18358/index.html

;vmailer.exe=
;http://virdi-software.com

setworkingdir,%A_scriptdir%

FileInstall, popclient.exe,popclient.exe,1
FileInstall, VMailer.exe,VMailer.exe,1

IniRead,Server, Server.ini,Host,Host,INPOPSERVER
IniRead,User, Server.ini,User,User,User/@domain.com
IniRead,Password, Server.ini,Password,Password,123456

Gui,1:Add, Edit,     x6    y5    w160  h20   vServer            ,%Server%
Gui,1:Add, Edit,     x6    y35   w160  h20   vUser              ,%User%
Gui,1:Add, Edit,     x6    y65   w160  h20   Password vPassword ,%Password%
Gui,1:Add, ListBox,  x176  y5    w290  h230  vList1 gGet Multi,
Gui,1:Add, ListBox,  x6    y235  w460  h80   vList2 ReadOnly,
Gui,1:Add, CheckBox, x6    y95   w90   h20   vCheck1, Clear Mails
Gui,1:Add, CheckBox, x6    y115  w160  h30 checked  vCheck2, Load Once
Gui,1:Add, Button,   x36   y155  w100  h30   gGetMail,Get E-Mails
Gui,1:Add, Button,   x36   y195  w100  h30   gSend,Send
Gui,1:Add, Edit,     x476  y5    w280  h300  vMail,
Gui,1:Show,          x131  y91 h314 w765, New GUI Window

gosub,getmail
Return


GuiClose:
ExitApp



;-----------------------------------
GetMail:
GuiControl,1:,List1,|                       ;clear listbox1
GuiControl,1:,List2,|                       ;clear listbox2
GuiControl,1:,Mail,%nothing%                ;clear Edit4

GuiControlGet,Check1,,Check1
GuiControlGet,Check2,,Check2
GuiControlGet,Server,,Server
GuiControlGet,User,,User
GuiControlGet,Password,,Password
   IniWrite,%Server%, Server.ini,Host,Host
   IniWrite,%User%, Server.ini,User,User
   IniWrite,%Password%, Server.ini,Password,Password

;---Clear Mails -> Die e-mails werden vom server geladen und gelöscht
;---Load Once   -> Es werden nur ungelesene Mails geladen


if (Check1=1)
   {
   entf=true
   ifexist,%A_ScriptDir%\emails\%User%\*.txt
     filerecycle,%A_ScriptDir%\emails\%User%\*.txt            ;inhalt gelöscht
   }

 else
   {
   entf=false
   }

if (Check2=1)
   {
   Once=true
   }
 else
   {
   Once=false
   }

pop3=%Server%
username_email=%User%
password_email=%Password%
dir_emails=%A_ScriptDir%\emails\

FileCreateDir, %dir%
IfNotExist %dir_emails%%username_email%
FileCreateDir, %dir_emails%%username_email%

mail=
(
<?xml version="1.0" encoding="UTF-8"?>
<ConfigData>
   <Server>%pop3%</Server>
   <Port>110</Port>
   <Username>%username_email%</Username>
   <Password>%password_email%</Password>
   <SaveMessagesDirectory>%dir_emails%%username_email%</SaveMessagesDirectory>
   <DeleteFromServer>%entf%</DeleteFromServer>
   <OnlyDownloadOnce>%Once%</OnlyDownloadOnce>
</ConfigData>
)

bat=
(
popclient.exe -configfile email_config.xml
)


filedelete email_config.xml
  fileappend, %mail%, email_config.xml

filedelete Mail.bat
fileappend, %bat%, Mail.bat
filedelete Log.txt


GuiControl,1:, List2,Please Wait...

runwait,Mail.bat >Log.txt ,,hide

Loop, Read,%A_ScriptDir%\Log.txt
    GuiControl,1:, List2,%A_LoopReadLine%



;------CASE 1 ------------   NO SORT      ---------------------------------
F82=receivedmails.txt
 ifexist,%F82%
   Filedelete,%F82%


Loop, %dir_emails%%username_email%\*.txt, , 1
    Fileappend,%A_LoopFileName%`r`n,%F82%

goto,OVERSKIP1


;------CASE 1 ------------ SORT by date BLUEWIN.CH  (skipped)  ---------------------------------

;Return-Path: <xyz@bluewin.ch>
;Received: from mail14.bluewin.ch (195.186.19.62) by mssezhh.msg.bluewin.ch (Bluewin 7.3.121)
;        id 46517FE511E327CA for xyz@bluewin.ch; Sun, 25 Nov 2007 08:45:41 +0000


F83=sortedmails.txt
 ifexist,%F83%
   Filedelete,%F83%

loop,read,%F82%                                              ;search for date in 3. line
   {
   LR1=%A_loopreadline%
   FileReadLine,LR3,%dir_emails%%username_email%\%LR1%,3
      {
      StringSplit,BX,LR3,`,
      stringmid,LR3a,BX2,2,20
      Fileappend,%LR3a%%LR1%`r`n,%F83%                       ;25 Nov 2007 08:45:41xxxx.txt
      }                                                      ;20071125084541  wäre besser zum sortieren
    }

    FileRead,AA,%F83%
    FileDelete,%F83%
    Sort,AA,
    FileAppend,%AA%,%F83%                                    ;sortierte file

Loop,read,%F83%                              ;read text name without date
    {
    stringmid,LR2,A_LoopReadLine,21,200
    GuiControl,1:, List1,%LR2%
    }
GuiControl, Choose, List1,%LR2%
goto,OVERSKIP2
;----------------------------------------- END CASE-1 ------------------------------------------


OVERSKIP1:
;-------------------------------------------- CASE-2 NO SORT ----------------------------------
Loop, %dir_emails%%username_email%\*.txt,,1
   {
   GuiControl,1:, List1,%A_LoopFileName%
   LRX=%A_LoopFileName%
   }
GuiControl, Choose, List1,%LRX%
;------------------------------------------- END CASE-2 ----------------------------------------
OVERSKIP2:

;return
;-------------------------------------------------------


;-------------------------------------------------------
get:                                                        ;read LB1 >>  Edit4
GuiControlGet,Liste1,,List1
FileRead,Readmaile,%dir_emails%%username_email%\%Liste1%
stringreplace,readmaile,readmaile,=E4,ae,all
stringreplace,readmaile,readmaile,=F6,oe,all
stringreplace,readmaile,readmaile,=FC,ue,all
stringreplace,readmaile,readmaile,=92,`',all
GuiControl,1:,Mail,%Readmaile%
return


;-------------------------------------------------------------------------
Send:
Gui,1:submit,nohide
IniRead,smtp, Server.ini,Host,smtp,smtp.domain.de
IniRead,User, Server.ini,User,User,User/@domain.com
IniRead,Password, Server.ini,Password,Password,123456
Gui, 2:+owner1
Gui 1: +Disabled

Gui 2:Add, Edit,   x6    y25  w150  h20  vSendto            ,%User%           ;for test send to me
Gui 2:Add, Edit,   x6    y5   w150  h20  vSmtp              ,%smtp%
Gui 2:Add, Edit,   x156  y5   w150  h20  vUser              ,%User%
Gui 2:Add, Edit,   x306  y5   w150  h20  Password vPassword ,%Password%

Gui 2:Add, Text,   x6    y65                 ,Subject
Gui 2:Add, Edit,   x60   y65  w390  h20 vLN2,

;Gui 2:Add, Text,   x6    y90                 ,Anrede
;Gui 2:Add, Edit,   x60   y90  w390  h20 vCX1,

Gui 2:Add, Edit,   x6    y120 w450  h300 vMsg,

Gui 2:Add, Button, x156  y25  w300  h20  gSendNow, Send
Gui 2:Show,        x131  y91  w466  h430         , Send
Return

;----------
2GuiClose:
2GuiEscape:
Gui, 1:-Disabled  ; Re-enable the main window (must be done prior to the next step).
Gui, 2: Destroy
return

;--------------------------------------------------------
SENDNOW:
Gui,2:submit,nohide
IniWrite,%smtp%, Server.ini,Host,smtp
VMAILER=%A_ScriptDir%\vmailer.exe
F7ac=result2.txt
 ifexist,%F7ac%
    Filedelete,%F7ac%

     Fileappend,From:%USER%`r`nSubject:%LN2%`r`n`r`n%MSG%,%F7ac%
     runwait,%VMAILER% %F7ac% %SMTP% %SENDTO% %USER%

Gui, 1:-Disabled
Gui, 2: Destroy
return


Zuletzt bearbeitet von garry am So Nov 25, 2007 7:32 pm, insgesamt einmal bearbeitet
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Ripp3r]D3[



Anmeldedatum: 11.11.2007
Beiträge: 1033
Wohnort: Altenburg\Kernel32.dll

BeitragVerfasst am: So Nov 25, 2007 5:47 pm    Titel: Antworten mit Zitat

Sorry dein code funtzt net wenn ich ne nachricht anklicke dann wird sie nicht angezeigt. Crying or Very sad

Wisst ihr wie ich die e-mails ordentlich wie in einem normalen e-mail clienten anzeigen kann? Jetzt steht noch so viel nebensächliches drin.


Bitte wenn ihr den code verändert den ganzen code posten und net nur paar schnipsel Wink Idea Very Happy
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
BoBo¨
Gast





BeitragVerfasst am: So Nov 25, 2007 7:00 pm    Titel: Antworten mit Zitat

Zitat:
Bitte wenn ihr den code verändert den ganzen code posten und net nur paar schnipsel
Weil am Ende muss man/frau auch noch selbst nachdenken wo dieser dann hingehört. Quelle malheur Rolling Eyes
Nach oben
Ripp3r]D3[



Anmeldedatum: 11.11.2007
Beiträge: 1033
Wohnort: Altenburg\Kernel32.dll

BeitragVerfasst am: So Nov 25, 2007 7:32 pm    Titel: Antworten mit Zitat

wieso sollen wir uns unnötig arbeit machen?
_________________

ResistantX:
"...In deren Köpfen läuft das selbe Programm welches auch bei den früheren Jahrgängen lief! Ich bin der Virus der diese Programme zerstören will..."
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
garry



Anmeldedatum: 25.10.2005
Beiträge: 602
Wohnort: switzerland

BeitragVerfasst am: So Nov 25, 2007 7:39 pm    Titel: Antworten mit Zitat

hello Ripp3r]D3[
der script funktionierte für mich nicht (kann nicht senden)
deswegen Anpassung am Samstag
habe mein script oben angepasst ( sortieren nach Datum ( bluewin.ch ) oder no sort )
die Sortiermöglichkeit nach Datum wäre ein Vorteil

Zitat:
Wisst ihr wie ich die e-mails ordentlich wie in einem normalen e-mail clienten anzeigen kann?


noch nach Subject und From suchen und dementsprechend anzeigen
je nach Anbieter verschieden ? (bluewin ... etc )

Anhang und html funktioniert nicht ? nur Text ?

Dies nach Subject: /From: suchen und anzeigen
Zitat:
From:xyzz@bluewin.ch
Subject:test66
X-Antivirus: AVG for E-mail 7.5.503 [269.16.6/1150]
Mime-Version: 1.0
Content-Type: text/plain

Hallo garry
bla bla
Gruss, Hans

--
No virus found in this incoming message.
Checked by AVG Free Edition.
Version: 7.5.503 / Virus Database: 269.16.6/1150 - Release Date: 24.11.2007 17:58
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
IsNull



Anmeldedatum: 20.12.2006
Beiträge: 1770
Wohnort: CH

BeitragVerfasst am: So Nov 25, 2007 8:00 pm    Titel: Antworten mit Zitat

Anstatt zusatztools für smtp zu verwenden, könnte man das Simple Protokoll auch selber implementieren, mit telnet...

Alles was man dazu wissen muss, steht hier:
http://de.wikipedia.org/wiki/Simple_Mail_Transfer_Protocol


Gruss
IsNull
_________________
Tannenbäume stinken. Sehr poetisch. =)
AHK 2D GAME ENGINE
Ich hab mehr Abstürze als mein Computer Smile
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Ripp3r]D3[



Anmeldedatum: 11.11.2007
Beiträge: 1033
Wohnort: Altenburg\Kernel32.dll

BeitragVerfasst am: So Nov 25, 2007 8:09 pm    Titel: Antworten mit Zitat

Zitat:
Anstatt zusatztools für smtp zu verwenden, könnte man das Simple Protokoll auch selber implementieren, mit telnet...

Na dann fang mal an zu proggen xD
Laughing
_________________

ResistantX:
"...In deren Köpfen läuft das selbe Programm welches auch bei den früheren Jahrgängen lief! Ich bin der Virus der diese Programme zerstören will..."
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
garry



Anmeldedatum: 25.10.2005
Beiträge: 602
Wohnort: switzerland

BeitragVerfasst am: So Nov 25, 2007 10:49 pm    Titel: Antworten mit Zitat

20071130 modified, script hier:
http://www.autohotkey.com/forum/topic26104.html

danke IsNull,
für den Telnet müsste ich Beispiel haben, konnte noch nicht nachvollziehen
PUTTY ?
hier ein Beispiel, ob's nur mit bluewin funktioniert ?
Listview mit FROM SUBJECT DATUM
sortiert nach Datum, durch anklicken auf's Subject , Nachricht lesbar, delete with rightclick
Code:
;MODIFIED=20071126/2 Delete multiple marked lines with rightclick

;popclient.exe=
;http://www.downloadjunction.com/product/store/18358/index.html

;vmailer.exe=
;http://virdi-software.com


;---Clear Mails -> Die e-mails werden vom server geladen und gelöscht
;---Load Once   -> Es werden nur ungelesene Mails geladen


setworkingdir,%A_scriptdir%

FileInstall, popclient.exe,popclient.exe,1
FileInstall, VMailer.exe,VMailer.exe,1

IniRead,Server, Server.ini,Host,Host,INPOPSERVER
IniRead,User, Server.ini,User,User,User/@domain.com
IniRead,Password, Server.ini,Password,Password,123456

Gui,1:Add, Edit,     x6    y5    w160  h20   vServer            ,%Server%
Gui,1:Add, Edit,     x6    y35   w160  h20   vUser              ,%User%
Gui,1:Add, Edit,     x6    y65   w160  h20   Password vPassword ,%Password%
;Gui,1:Add, ListBox,  x176  y5    w290  h230  vList1 gGet Multi,
;Gui,1:Add, ListBox,  x176  y5    w290  h230  vList1  Multi,
Gui,1:Add, ListBox,  x6    y235  w460  h80   vList2 ReadOnly,
Gui,1:Add, CheckBox, x6    y95               vCheck1, Clear Mails > Die e-mails werden vom server geladen und gelöscht
Gui,1:Add, CheckBox, x6    y115              checked vCheck2, Load Once ->Es werden nur ungelesene Mails geladen
Gui,1:Add, Button,   x36   y155  w100  h30   gGetMail,Get E-Mails
Gui,1:Add, Button,   x36   y195  w100  h30   gSend,Send
Gui,1:Add, Edit,     x476  y5    w580  h300  vMail,

Gui,1:Add,Text,      x10   y680  ,Delete multiple marked lines with rightclick

T1=220
T2=680
T3=150
T4=0

T1A:=T1
T2A:=T1+T2
T3A:=T1+T2+T3
T4A:=T1+T2+T3+T4

T5B:=T3A+30
T5C:=T3A+20

Gui,1:Add, ListView,x0 y320 grid r22 w%T5C% +hscroll altsubmit vMLV1 gMLV2, From|Subject|Date|TEXT
LV_ModifyCol(1,T1)
LV_ModifyCol(2,T2)
LV_ModifyCol(3,T3)
LV_ModifyCol(4,T4)

Gui,1:Show,          x131  y91 h700 w%T5B%, TEST EMAIL

gosub,getmail
Return
;---------------------------------------------------------------

MLV2:
Gui,1:submit,nohide
GuiControlGet,MLV1

  RN:=LV_GetNext("C")
  RF:=LV_GetNext("F")
  GC:=LV_GetCount()
if A_GuiEvent = Normal
{
if (RF="" OR RF=0)
     {
     return
     }

MouseGetPos,x,y
  {
   if x<%T1A%
   return

   if x<%T2A%
     {
     LV_GetText(C4,A_EventInfo,4)
     FileRead,Readmaile,%dir_emails%%username_email%\%C4%
     stringreplace,readmaile,readmaile,=E4,ae,all
     stringreplace,readmaile,readmaile,=F6,oe,all
     stringreplace,readmaile,readmaile,=FC,ue,all
     stringreplace,readmaile,readmaile,=92,`',all
     stringreplace,readmaile,readmaile,=E8,e,all
     stringreplace,readmaile,readmaile,=E9,e,all
     stringreplace,readmaile,readmaile,=EA,e,all
     stringreplace,readmaile,readmaile,=F1,n,all
     stringreplace,readmaile,readmaile,=E0,a,all
     stringreplace,readmaile,readmaile,=E1,a,all
     GuiControl,1:,Mail,%Readmaile%
     return
     }

  if x<%T3A%
      return

  if x<%T4A%
      return
  }
}



/*
;--------- DELETE ONE  ----------------------------
if A_GuiEvent = RightClick
{
     if (RF="" OR RF=0)
         return

   LV_GetText(C2,RF,2)
   LV_GetText(C4,RF,4)


   MsgBox, 4, ,Want you really delete %C2% ?
   IfMsgBox,No
      Return
   Else
     {
     GuiControl,1:,Mail,%nothing%                ;clear Edit4
     filerecycle,%dir_emails%%username_email%\%C4%
     LV_Delete(RF)

     filedelete,%F84%
     Loop % LV_GetCount()
            {
            BX1=
            BX2=
            BX3=
            BX4=
            LV_GetText(BX1,A_INDEX,1)
            LV_GetText(BX2,A_INDEX,2)
            LV_GetText(BX3,A_INDEX,3)
            LV_GetText(BX4,A_INDEX,4)
            fileappend,%BX1%;%BX2%;%BX3%;%BX4%`r`n,%F84%
            }
       }

gosub,filllist
return
}
*/






;--------- DELETE MULTIPLE  ----------------------------
if A_GuiEvent = RightClick
{
C2x=
C4x=
RF = 0
RFL =
Z=0
Loop
   {
   RF:=LV_GetNext(RF)
   if RF=0
      break
   RFL = %RF%|%RFL%
   LV_GetText(C2_Temp, RF, 2)
   LV_GetText(C4_Temp, RF, 4)
   C2x = %C2x%`n%C2_Temp%
   C4x = %C4x%;%C4_Temp%
  }

if C2x !=
  {
   MsgBox, 4, ,Want you really delete %C2x% ?
   IfMsgBox,No
      Return
   Else
     {
        StringSplit,D,C4x,`;   ;split `; as delimiter
        loop,%D0%
              {
              DY=%A_INDEX%              ;    1 2 3
              if DY=1
                 continue
              DX:=D%A_INDEX%            ;string
              Filerecycle,%dir_emails%%username_email%\%DX%
              }

      Loop, parse, RFL, |
             {
             LV_Delete(A_LoopField)
             }


     filedelete,%F84%
     Loop % LV_GetCount()
            {
            BX1=
            BX2=
            BX3=
            BX4=
            LV_GetText(BX1,A_INDEX,1)
            LV_GetText(BX2,A_INDEX,2)
            LV_GetText(BX3,A_INDEX,3)
            LV_GetText(BX4,A_INDEX,4)
            fileappend,%BX1%;%BX2%;%BX3%;%BX4%`r`n,%F84%
            }
       }

  }
gosub,filllist
return
}


return







;------------------------------------------------------------
GuiClose:
ExitApp


;------------------------------------------------------------
GetMail:
;GuiControl,1:,List1,|                       ;clear listbox1
GuiControl,1:,List2,|                       ;clear listbox2
GuiControl,1:,Mail,%nothing%                ;clear Edit4

GuiControlGet,Check1,,Check1
GuiControlGet,Check2,,Check2
GuiControlGet,Server,,Server
GuiControlGet,User,,User
GuiControlGet,Password,,Password
   IniWrite,%Server%, Server.ini,Host,Host
   IniWrite,%User%, Server.ini,User,User
   IniWrite,%Password%, Server.ini,Password,Password

;---Clear Mails -> Die e-mails werden vom server geladen und gelöscht
;---Load Once   -> Es werden nur ungelesene Mails geladen


if (Check1=1)
   {
   entf=true
   ifexist,%A_ScriptDir%\emails\%User%\*.txt
     filerecycle,%A_ScriptDir%\emails\%User%\*.txt            ;inhalt gelöscht
   }

 else
   {
   entf=false
   }

if (Check2=1)
   {
   Once=true
   }
 else
   {
   Once=false
   }

pop3=%Server%
username_email=%User%
password_email=%Password%
dir_emails=%A_ScriptDir%\emails\

FileCreateDir, %dir%
IfNotExist %dir_emails%%username_email%
FileCreateDir, %dir_emails%%username_email%

mail=
(
<?xml version="1.0" encoding="UTF-8"?>
<ConfigData>
   <Server>%pop3%</Server>
   <Port>110</Port>
   <Username>%username_email%</Username>
   <Password>%password_email%</Password>
   <SaveMessagesDirectory>%dir_emails%%username_email%</SaveMessagesDirectory>
   <DeleteFromServer>%entf%</DeleteFromServer>
   <OnlyDownloadOnce>%Once%</OnlyDownloadOnce>
</ConfigData>
)

bat=
(
popclient.exe -configfile email_config.xml
)


filedelete email_config.xml
  fileappend, %mail%, email_config.xml

filedelete Mail.bat
fileappend, %bat%, Mail.bat
filedelete Log.txt

GuiControl,1:, List2,Please Wait...

runwait,Mail.bat >Log.txt ,,hide
sleep,200
Loop, Read,%A_ScriptDir%\Log.txt
    GuiControl,1:, List2,%A_LoopReadLine%


F82=receivedmails.txt
 ifexist,%F82%
   Filedelete,%F82%


Loop, %dir_emails%%username_email%\*.txt, , 1
    Fileappend,%A_LoopFileName%`r`n,%F82%

;-------------------------------- READ BLUEWIN.CH  ------------------------------------------

;Return-Path: <xyz@bluewin.ch>
;Received: from mail14.bluewin.ch (195.186.19.62) by mssezhh.msg.bluewin.ch (Bluewin 7.3.121)
;        id 46517FE511E327CA for xyz@bluewin.ch; Sun, 25 Nov 2007 08:45:41 +0000


;From:xyzz@bluewin.ch
;Subject:test66

F84=FromSubject.txt
 ifexist,%F84%
   Filedelete,%F84%




loop,read,%F82%                                              ;search for Subject: and From:
   {
   LR1=%A_loopreadline%
      I=0
      loop,read,%dir_emails%%username_email%\%LR1%
        {
        LR2=%A_loopreadline%
        stringmid,FR1,LR2,1,5
        stringmid,SB1,LR2,1,8

        I++
        if I=3
           {
           FileReadLine,LR3,%dir_emails%%username_email%\%LR1%,%I%
               {
               StringSplit,BC,LR3,`,
               stringmid,LR3a,BC2,2,20             ;date
               continue
               }
            }

        if FR1=From:
           {
          Stringmid,FR2,LR2,6,100
          continue
           }

        if SB1=Subject:
            {
            Stringmid,SB2,LR2,9,200                          ;  1     2      3      4
            Fileappend,%FR2%;%SB2%;%LR3a%;%LR1%`r`n,%F84%    ;FROM-SUBJECT-DATUM-FILE.txt
            continue
            }
        }
    }

;-------------------------------------------------------

FILLLIST:
IX2=0
LV_Delete()
loop,read,%F84%
    {
    IX2++
    stringsplit,BX,A_LoopReadLine,`;,

     Stringmid,MONS,BX3,4,3
     Stringmid,YYYY,BX3,8,4
     Stringmid,TIMS,BX3,13,8
     Stringmid,DATS,BX3,1,2
       if MONS=Jan
          MONS=01
       if MONS=Feb
          MONS=02
       if MONS=Mar
          MONS=03
       if MONS=Apr
          MONS=04
       if MONS=May
          MONS=05
       if MONS=Jun
          MONS=06
       if MONS=Jul
          MONS=07
       if MONS=Aug
          MONS=08
       if MONS=Sep
          MONS=09
       if MONS=Oct
          MONS=10
       if MONS=Nov
          MONS=11
       if MONS=Dec
          MONS=12
          BX3N=%YYYY%%MONS%%DATS%-%TIMS%

    LV_Add("",BX1,BX2,BX3N,BX4)
    }


   LV_ModifyCol(3, "SortDesc")
   RF=1
   LV_Modify(RF, "+Select +Focus")
     LV_GetText(C4,RF,4)
     FileRead,Readmaile,%dir_emails%%username_email%\%C4%
     stringreplace,readmaile,readmaile,=E4,ae,all
     stringreplace,readmaile,readmaile,=F6,oe,all
     stringreplace,readmaile,readmaile,=FC,ue,all
     stringreplace,readmaile,readmaile,=92,`',all
     stringreplace,readmaile,readmaile,=E8,e,all
     stringreplace,readmaile,readmaile,=E9,e,all
     stringreplace,readmaile,readmaile,=EA,e,all
     stringreplace,readmaile,readmaile,=F1,n,all
     stringreplace,readmaile,readmaile,=E0,a,all
     stringreplace,readmaile,readmaile,=E1,a,all
     GuiControl,1:,Mail,%Readmaile%
 return



;-------------------------------------------------------------------------
Send:
Gui,1:submit,nohide
IniRead,smtp, Server.ini,Host,smtp,smtp.domain.de
IniRead,User, Server.ini,User,User,User/@domain.com
IniRead,Password, Server.ini,Password,Password,123456
Gui, 2:+owner1
Gui 1: +Disabled

Gui 2:Add, Edit,   x6    y25  w150  h20  vSendto            ,%User%           ;for test send to me
Gui 2:Add, Edit,   x6    y5   w150  h20  vSmtp              ,%smtp%
Gui 2:Add, Edit,   x156  y5   w150  h20  vUser              ,%User%
Gui 2:Add, Edit,   x306  y5   w150  h20  Password vPassword ,%Password%

Gui 2:Add, Text,   x6    y65                 ,Subject
Gui 2:Add, Edit,   x60   y65  w390  h20 vLN2,

;Gui 2:Add, Text,   x6    y90                 ,Anrede
;Gui 2:Add, Edit,   x60   y90  w390  h20 vCX1,

Gui 2:Add, Edit,   x6    y120 w450  h300 vMsg,

Gui 2:Add, Button, x156  y25  w300  h20  gSendNow, Send
Gui 2:Show,        x131  y91  w466  h430         , Send
Return
;----------
2GuiClose:
2GuiEscape:
Gui, 1:-Disabled
Gui, 2: Destroy
return

;--------------------------------------------------------
SENDNOW:
Gui,2:submit,nohide
IniWrite,%smtp%, Server.ini,Host,smtp
VMAILER=%A_ScriptDir%\vmailer.exe
F7ac=result2.txt
 ifexist,%F7ac%
    Filedelete,%F7ac%

     Fileappend,From:%USER%`r`nSubject:%LN2%`r`n`r`n%MSG%,%F7ac%
     runwait,%VMAILER% %F7ac% %SMTP% %SENDTO% %USER%

Gui, 1:-Disabled
Gui, 2: Destroy
return
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    AutoHotkey Community Foren-Übersicht -> Vollständige Skripte & Funktionen Alle Zeiten sind GMT
Seite 1 von 1

 
Gehe zu:  
Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.


Powered by phpBB © 2001, 2005 phpBB Group
Deutsche Übersetzung von phpBB.de