Du bist nicht angemeldet.

Kontrollzentrum

Spenden

Jeder Euro hilft uns, euch zu helfen.

Adsense

Downloads

Stabil: 3.3.8.1 (Q, H)
Stabil: 3.3.10.2 (Q, H)
Beta: 3.3.11.4 (Q, H)
SciTE: 4/5/2014 (Q, H)
Hilfe Deutsch: 12/23/2013 (Q)
Download: OrganizeIncludes (Q)
Stand: 08.04.2014 - 15:42 Uhr

Lieber Besucher, herzlich willkommen bei: AutoIt.de - Das deutsche AutoIt-Forum. Falls dies dein erster Besuch auf dieser Seite ist, lies bitte die Hilfe durch. Dort wird dir die Bedienung dieser Seite näher erläutert. Darüber hinaus solltest du dich registrieren, um alle Funktionen dieser Seite nutzen zu können. Benutze das Registrierungsformular, um dich zu registrieren oder informiere dich ausführlich über den Registrierungsvorgang. Falls du dich bereits zu einem früheren Zeitpunkt registriert hast, kannst du dich hier anmelden.

  • »supernova« ist der Autor dieses Themas

Registrierungsdatum: 8. Dezember 2010

Wohnort: Winterthur (Schweiz)

  • Private Nachricht senden

1

Mittwoch, 28. März 2012, 18:06

bei hotmail nur nachsehen ob eMails vorhanden

hallo,
mit _POP3connect kann ich auf verschiedene eMailserver zugreifen und nachschauen ob und wieviele eMails dort vorhanden sind (mittels _POP3Info und _ArrayDisplay). bei hotmail oder auch gmail geht das nicht. _INetSmtpMailCom ist nur vorgesehen, eMails zu senden. was soll ich also verwenden und wie ? danke.

Dieser Beitrag wurde bereits 4 mal editiert, zuletzt von »supernova« (10. April 2012, 15:13)


peethebee

Schon soooo lange hier!

Registrierungsdatum: 7. Dezember 2005

  • Private Nachricht senden

2

Mittwoch, 28. März 2012, 18:35

Google nutzt IMAP (POP3 gibt es glaube ich in den Einstellungen, ist aber generell weniger nützlich), bei Hotmail muss man POP3 glaube ich händisch aktivieren, sonst ist es überhaupt kein Standardprotokoll.

  • »supernova« ist der Autor dieses Themas

Registrierungsdatum: 8. Dezember 2010

Wohnort: Winterthur (Schweiz)

  • Private Nachricht senden

3

Donnerstag, 29. März 2012, 08:26

ja, genau, bei gmail fand ich die einstellung und habe sie aktiviert. bei hotmail fand ich bis jetzt nichts.

eMail senden geht bei beiden problemlos mit _INetSmtpMailCom ganz konventionell.

es ist mindestens der port, wo an stelle der 110 die 995 sein muss.

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »supernova« (10. April 2012, 15:14)


gango

User

Registrierungsdatum: 30. März 2012

Wohnort: Zürich (Schweiz)

  • Private Nachricht senden

4

Freitag, 30. März 2012, 11:27

verwendest du _POP3.au3, wo bei der funktion _POP3connect vom programmer der port 995 gesperrt ist.

kannst das ja mit #cs..#ce überspringen.

  • »supernova« ist der Autor dieses Themas

Registrierungsdatum: 8. Dezember 2010

Wohnort: Winterthur (Schweiz)

  • Private Nachricht senden

5

Freitag, 30. März 2012, 13:12

im bild 11.. sieht man einen normalen ablauf mit port 110



im bild 21.. sieht man einen hängenden ablauf mit port 995 (bleibt dort stehen oder Myshutdown)



im bild 31.. sieht man wie im source der _POP3.au3 die funktionen TCPStartup, TCPNameToIP und TCPConnect irgendwie funktionieren. (zu TCPNameToIP: habe auch direkt mit verschiedenen IP-werten probiert, hätte ja sein können, dass die umsetzung von text in eine IP nicht richtig funktionieren würde, ist aber okay).

die problemstelle ist wohl bei __POP3WaitForOK. diese nutzt die funktion __POP3WaitTcpResponse und diese widerum die funktion TCPRecv, welche bestandteil von autoit selber ist.



im bild 41.. sieht man wie ich dort debugeinbauten vorgenommen habe um zu sehen, wie die antworten von TCPRecv sind. aber ausser hochzählen kommt da nichts.



das erhöhen der paketgrösse von 512 auf 2048 brachte keine veränderung.

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »supernova« (10. April 2012, 15:16)


Registrierungsdatum: 31. März 2012

Wohnort: Singen am Hohentwiel

  • Private Nachricht senden

6

Samstag, 31. März 2012, 14:18

würde nicht lange bohren, findest hier http://hpop.sourceforge.net ein nettes, neuestes util welches auch bestens mit hotmail, gmail oder was sonst noch kreucht und fleucht fertig wird. bei dieser OpenPop.dll ist auch ein ausführbares EXE womit du testen/vergleichen kannst. in zukunft sicher das beste.

kannst mir mal die daten vom gmail senden. ich teste dann von hier aus. vielleicht liegt es auch nur an der falschen IP.

  • »supernova« ist der Autor dieses Themas

Registrierungsdatum: 8. Dezember 2010

Wohnort: Winterthur (Schweiz)

  • Private Nachricht senden

7

Sonntag, 1. April 2012, 16:04

habe die datei login.txt unten angehängt. diese ist nur zum manipulieren. der eMail-account ist von gmail.
»supernova« hat folgende Datei angehängt:
  • login.txt (22 Byte - 87 mal heruntergeladen - zuletzt: 14. April 2014, 06:47)

Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von »supernova« (10. April 2012, 15:24)


gango

User

Registrierungsdatum: 30. März 2012

Wohnort: Zürich (Schweiz)

  • Private Nachricht senden

8

Montag, 2. April 2012, 11:28

habe mit deinen daten probiert und es funktioniert tatsächlich bestens mit OpenPop.dll, respektive die benutzung von deren beispielEXE. mehr detail kannst du nicht erwarten. bin am studieren der chm, aber die ist voll im bereich von "C" und mir völlig fremd. jedenfalls verwendet hotmail und gmail ganz normale routinen nur, in der _POP3.au3 ist das nicht eingebaut. wie sieht es mit dem hardcore von autoit aus ?

Registrierungsdatum: 31. März 2012

Wohnort: Singen am Hohentwiel

  • Private Nachricht senden

9

Montag, 2. April 2012, 11:33

autoit kann auch fremde DLL's einbinden. vielleicht so:

AutoIt-Quellcode

1
2
3
4
5
local $oDLL,$nRetu 
$oDLL=DllOpen(@ScriptDir & "\fremdeInc\OpenPOP.dll") 
$nRetu=DllCall($oDLL,"int","FetchAllMessages", _ 
"pop.gmail.com",995,1,"email-account","psw") ;;1=ssl 
DllClose($oDll)

  • »supernova« ist der Autor dieses Themas

Registrierungsdatum: 8. Dezember 2010

Wohnort: Winterthur (Schweiz)

  • Private Nachricht senden

10

Montag, 2. April 2012, 11:37

oberstes ziel ist es, das eigentliche problem/aufgabenstellung zu lösen. im zweiten am liebsten mit "onboard-mitteln" von autoit. wenn das nicht erfolgreich, so "externe ware" anwenden. man müsste jemanden haben, der die integration von OpenPop.dll an die hand nimmt.

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »supernova« (10. April 2012, 15:17)


gango

User

Registrierungsdatum: 30. März 2012

Wohnort: Zürich (Schweiz)

  • Private Nachricht senden

11

Montag, 2. April 2012, 16:57

habe mal ein testprgrämmli gemacht, so dass wir beim testen die gleiche basis haben. es stimmt, weder bei hotmail noch bei gmail kommt eine antwort, im gegensatz zu den allerwelts mailern. achtung, jeweilen den port noch anpassen. im debug-fenster unten im SciTE kann man den ganzen ablauf gut sehen/mitverfolgen.
wie sind eure ergebnisse/vorschläge ?

  Spoiler Spoiler

AutoIt-Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
;;login_gmail.au3 äöü 12.04.02 

local $i 
local $oTCP 
local $cIP 
local $cAntwort="" 

;;gmail 
$cIP="74.125.79.108" ;;74.125.79.108 74.125.79.109 supernova 
;$cIP="74.125.43.108" ;;74.125.43.108 74.125.43.109 

;;hotmail 
;$cIP="207.46.46.181" ;;207.46.46.181 ? 

;;einfach 
;$cIP="213.133.103.20" ;;213.133.103.20 80.74.152.40 

;;;;; 
;;;;;quasi Main, läuft nur einmal durch 
ConsoleWrite($cIP & @CRLF) 

;;Modul erst laden/starten 
TCPStartup() 

;;verbinden 
$oTCP=TCPConnect($cIP,"995") ;;<================= 110 995 

;;laufend abfragen 
For $i = 1 to 40 ;;40x bei 50m" = 2" 
$cAntwort=TCPRecv($oTCP,512) 

If $cAntwort=="" Then 
$cAntwort=f_PadL(4,"0",$i) & ":-" 

Else 
$cAntwort=f_PadL(4,"0",$i) & $cAntwort 

EndIf 

;;anzeigen 
ConsoleWrite(StringStripWS($cAntwort,2) & @CRLF) 

Sleep(50) 

Next 

;;Verbindung schliessen/abmelden 
TCPCloseSocket($oTCP) 

;;Modul entladen 
TCPShutdown() 

;;;;; 
;;;;; 
Func f_PadL($pnLang,$pcFueller,$pcZuManip) 

While StringLen($pcZuManip)<$pnLang 
$pcZuManip=$pcFueller & $pcZuManip 

WEnd 

Return $pcZuManip 
EndFunc 

;;ende

Dieser Beitrag wurde bereits 4 mal editiert, zuletzt von »gango« (10. April 2012, 15:30)


  • »supernova« ist der Autor dieses Themas

Registrierungsdatum: 8. Dezember 2010

Wohnort: Winterthur (Schweiz)

  • Private Nachricht senden

12

Dienstag, 3. April 2012, 14:18

danke dir "gango" für das testmuster. bei mir sind wie gesagt die gleichen effekte festzustellen. warte jetzt noch auf die info von "wirr4all", weil er vermutlich (örtlich) auf einem anderen gmail-server einloggt.
bin irgendwie doch etwas enttäuscht über die mageren resultate/teilnahmen/ideen der autoitler.

Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von »supernova« (10. April 2012, 15:18)


Registrierungsdatum: 31. März 2012

Wohnort: Singen am Hohentwiel

  • Private Nachricht senden

13

Donnerstag, 5. April 2012, 08:34

habe das testmuster mit deinen zugangsdaten geprüft. mit dem gleichen misserfolg. umständlich ist, via traceroute erst die IP zu erzeugen. wir müssten da noch den original code aus der _POP3.au3 verwenden für die zerlegung des servernamens in eine IP.

  • »supernova« ist der Autor dieses Themas

Registrierungsdatum: 8. Dezember 2010

Wohnort: Winterthur (Schweiz)

  • Private Nachricht senden

14

Freitag, 6. April 2012, 09:32

habe das konvertieren mal eingebaut plus ein paar annehmlichkeiten.

  Spoiler Spoiler

AutoIt-Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
;;login_gmail_2.au3 äöü 12.04.06 

local $i 
local $oTCP 
local $cIPname,$cIPzahl,$cIPport 
local $cAntwort="" 

local $aMailer[2]=["pop.gmail.com","995"] ;;google 
;local $aMailer[2]=["pop3.live.com","995"] ;;hotmail 
;local $aMailer[2]=["pop.bluewin.ch","110"] 

;;so leichter verständlich 
$cIPname=$aMailer[0] 
$cIPport=$aMailer[1] 

;;Modul erst laden/starten 
TCPStartup() 

;;in IP konvertieren 
$cIPzahl=TCPNameToIP($cIPname) 

ConsoleWrite("|" & $cIPname & "|" & $cIPzahl & "|" & $cIPport & "|" & @CRLF) 

;;verbinden 
$oTCP=TCPConnect($cIPzahl,$cIPport) 

;;laufend (20x) abfragen 
For $i = 1 to 20 ;;20x bei 50m" = 1" 
$cAntwort=TCPRecv($oTCP,512) 

If $cAntwort=="" Then 
$cAntwort=f_PadL(4,"0",$i) & ":-" 

Else 
$cAntwort=f_PadL(4,"0",$i) & $cAntwort 

EndIf 

;;anzeigen 
ConsoleWrite(StringStripWS($cAntwort,2) & @CRLF) 

Sleep(50) 

Next 

;;Verbindung schliessen/abmelden 
TCPCloseSocket($oTCP) 

;;Modul entladen 
TCPShutdown() 

;;;;; 
;;;;; 
Func f_PadL($pnLang,$pcFueller,$pcZuManip) 

While StringLen($pcZuManip)<$pnLang 
$pcZuManip=$pcFueller & $pcZuManip 

WEnd 

Return $pcZuManip 
EndFunc 

;;ende
ich denke, das TCPconnect müsste noch einen weiteren parameter senden oder sogar gleich senden, über welchen port man selbst senden wird. die 995 ist ja die vom mailer und nicht der port von uns sendenden.

Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von »supernova« (10. April 2012, 15:20)


gango

User

Registrierungsdatum: 30. März 2012

Wohnort: Zürich (Schweiz)

  • Private Nachricht senden

15

Freitag, 6. April 2012, 10:00

die TCP-funktionen sind nicht in einer UDF im include-ordner. offenbar sind sie doch bestandteil vom autoit-hardcore. und trotzdem, autoit ruft sicher die entsprechenden originalen windows-prozeduren dazu auf (wie ja auch die OpenPop.dll)

wer kennt die in der OpenPop.dll enthaltenen prozeduren (liste), sowie deren parameter ?

  • »supernova« ist der Autor dieses Themas

Registrierungsdatum: 8. Dezember 2010

Wohnort: Winterthur (Schweiz)

  • Private Nachricht senden

16

Montag, 23. April 2012, 11:23

habe zwischenzeitlich die lösung aus vielen quellen zusammen gekratzt und das ganze selber gebaut. für googlemail läuft auch alles schon störungsfrei, hingegen bei der immer überlasteten hotmail will es noch etwas mehr zeit um alle timeout's abzufangen. fragt man dort viele male und häufig hintereinander den account ab, blockiert hotmail sogar den zugang für 15minuten mit der meldung -ERR Exceeded the login limit for a 15 minute period. Reduce the frequency of requests to the POP3 server. das nervt einem also schon beim testen.

die lösung geht grundsätzlich jetzt via die OpenSSL-Win32 (davon werden aber nur einige dateien benötigt). es ist noch zu früh um den source zu zeigen. ich melde mich wieder in kürze.

gango

User

Registrierungsdatum: 30. März 2012

Wohnort: Zürich (Schweiz)

  • Private Nachricht senden

17

Freitag, 27. April 2012, 11:37

wann ist "in kürze" vorbei ?

habe mich schon etwas vorbereitet und OpenSSL geholt.

hier mein Link zur OpenSSL-webseite: http://www.openssl.org

hier mein Link für den datei-download: http://slproweb.com/products/Win32OpenSSL.html
(man muss ziemlich weit nach unten scrollen)

welche dateien genau werden davon benötigt ?

  • »supernova« ist der Autor dieses Themas

Registrierungsdatum: 8. Dezember 2010

Wohnort: Winterthur (Schweiz)

  • Private Nachricht senden

18

Samstag, 28. April 2012, 09:40

es braucht die dateien openssl.exe, libeay32.dll, ssleay32.dll welche unten in der OpenSSL_dateien.zip sind.

persönlich bin ich mit meiner lösung ganz und gar nicht zufrieden. mit der abgemagerten version, welche ich in kürze hochhieve sind immer noch 500 programmzeilen und für einen zuverlässigen transfer mit hotmail brauche ich sehr lange SLEEP-zeiten. mit gmail/google geht es aber bestens. das hat nichts mit SSL/verschlüsselung zu tun, hotmail agiert einfach chaotisch.
»supernova« hat folgende Datei angehängt:

autoit.de Webutation