Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


Lite tips om mailhantering....WInsock

Postades av 2004-09-21 13:41:16 - Tyronne Engström, i forum visual basic - allmänt, Tråden har 19 Kommentarer och lästs av 930 personer

Hej!


Jag tänker bygga ett litet program som endast testar mailkonton. Dvs Jag skall kunna ange användaramn, lösenord smtpserver och pop3 server och kunna testa det kontot. På samma sätt som i outlook i kontohanteringen.

är det någon som har ett bra tips på hur man kan kontrollera detta. Jag har jobbat med Winsock tidigare i vb. Men jag undrar om det finns några speciella kommandon till detta. Det handlar igentiligen endast om att kunna logga in på kontot kontrollera att man kommer in på resp server, utan att hämta eller skicka mail.

tacksam för alla svar

/phinala


Svara

Sv: Lite tips om mailhantering....WInsock

Postades av 2004-09-21 15:31:22 - Bertil Rundquist

Hej, nedan har du en "lista" på vilka status som finns.

När winsock ansluter händer dessa.

För att kontrollera om en anslutning funkat så får du fånga upp det som winsock får tillbaka.
Hur pass bra koll har du på det?

Fråga om du behöver hjälp, jag har den infon du behöver.

*************************************************

Dim strState As String

Select Case winsock1.State
Case sckClosed
strState = "Closed"
Case sckOpen
strState = "Open"
Case sckListening
strState = "Listening"
Case sckConnectionPending
strState = "Connection pending"
Case sckResolvingHost
strState = "Resolving host"
Case sckHostResolved
strState = "Host resolved"
Case sckConnecting
strState = "Connecting" '6
Case sckConnected
strState = "Connected"
Case sckClosing
strState = "Peer is closing the connection"
Case sckError
strState = "Error"
End Select

*************************************************

/B


Svara

Sv: Lite tips om mailhantering....WInsock

Postades av 2004-09-21 15:52:46 - Tyronne Engström

Hej

Shysst av dig!


Jo jag vet att det finns Winsock1.GetData och Winsock1.SendData

min tanke är att jag fyller i alla konto uppgifterna och sedan skall jag

Kontrollera utgående server
Kontrollera inkommanade server
Logga in på inkommande server

Retunera ok för varje kontroll eller Error som jag sedan skall visa i applikationen.

Och jag har kommit så lång att man skickar visa koder till servern Ex:
HELO mm


Men jag skulle behgöva hjälp med vilka kommandon jag skall använda och hur jag tolkar svaren så att jag kan översätta dem till "svenska" i min applikation


/Phinala


Svara

Sv: Lite tips om mailhantering....WInsock

Postades av 2004-09-22 07:32:02 - Bertil Rundquist

Hej, för att kolla inkommande server (POP3) så räcker det med att du upprättar en anslutning till denna, med dina uppgifter, sen under winsock1.getdata (dinsträng) så tar du emot det som servern ger tillbaka.

Jag har löst denna fråga genom att starta en timer när anslutning sker.
timer1.enabled=true
wsCommand.Connect popserver,portnr


Denna timer skall återställas när:
dim dinsträng
if winsock1.getdata (dinsträng) = "+" then timer1.enabled=false:msgbox "Det gick bra"

Det betyder att det gick bra. Kommer det "-" som första tecken så gick det fel.

timern löser ut ett meddelande och stänger winsock om den inte får svar, en form av timeout.
Sätt den på 30000 i interval=ca 30 sek. försök göra en connection mellan varven under dessa 30 sek.

Detta "+ Hallo" som du skrev är ett svar från servern, det är det första som kommer vid en anslutning, kan se olika ut men verkar va standard.

ska du bara kolla om server svarar så räcker detta.

Ska du logga in ska du nu skicka in:
winsock1.senddata ("USER " & användarid & vbcrlf):exit sub ' OBS GLÖM EJ VBCRLF, det är sluttecken mot server, winsock hänger sig och VB kraschar om denna missas

Efter detta så kommer winsock1.getdata att börja om och hämta svaret på det du just skickade.
Svar= "+ user OK, password required" (eller likn)
winsock1.senddata ("PASS " & lösenord& vbcrlf):exit sub

sen börjar det om igen och du mottager nått i stil med "+ OK Logged in", detta får du kolla vad som kommer.

Nu är du inloggad och kan utföra en del kommandon. (Sök på POP3 commands på google)
Alla kommandon skickas som user och Pass gjorde. glöm inte mellanslaget "PASS ".

winsock1.senddata ("QUIT " & vbcrlf):exit sub ' Avslutar sessionen

Det luriga är att koden startar om hela tiden så för att den inte ska skicka user & pass flera ggr så måste du tala om att detta är gjort så koden struntar i det.
Detta har jag färdigt men jag är nyfiken på hur DU löser den biten, inte allt för simpelt.
Eftersom saker kan hända med nätet så använder du status ovan för att kolla INNAN du kör en senddata.

Hoppas du blev klokare, smtp har jag inte kollat så mycket på.
/B


Svara

Sv: Lite tips om mailhantering....WInsock

Postades av 2004-09-22 08:20:15 - Tyronne Engström

OK!


Jag skall ta mig an detta. Jag meddelar när det är klart och berättar hur jag löste det sista du skrev.


Tack för hjälpen!

/Phinala


Svara

Sv: Lite tips om mailhantering....WInsock

Postades av 2004-09-22 14:22:53 - Tyronne Engström

jag får ett felmedelande nätr jag försöker ansluta till min pop2 server

felmeddelande lyder:
Wrong connection state for the requested transaction or request..

Jag har intställ på tcp protocol.

Någon ide om vad det kan vara


Svara

Sv: Lite tips om mailhantering....WInsock

Postades av 2004-09-22 14:58:42 - Tyronne Engström

Nu kanske jäg inte tänker men jag får felmeddelande när jag försöker köra följande

<code>
If Winsock1.GetData(strServerResponse) = "+" Then
</code>

enl ditt exempel innan. Den gnäller på = tecknet

hela retursträngen ser ut så här

220 comvena.com ESMTP MDaemon 7.2.0; Wed, 22 Sep 2004 14:46:30 +0200



/phinala


Svara

Sv: Lite tips om mailhantering....WInsock

Postades av 2004-09-22 16:32:37 - Tyronne Engström

hmm...


nu får jag fäljande meddelande

500 What? I don't understand that.

när jag försöker skicka in användarnament

... några tips.


Obs jag använder mig uteslutande från ditt exempel Bertil


en fråga som slog mig. Hur vet winsock att det ett smtp-konto eller ett pop3 konto?
med tanke på miott svar jag fick..


/phinala


Svara

Sv: Lite tips om mailhantering....WInsock

Postades av 2004-09-22 21:52:24 - Kenneth Hedman

Det finns en jättebra komponent för mailhantering via vb som heter VBSendMail
Du hittar sourcekoden här.
http://www.freevbcode.com/ShowCode.Asp?ID=109
Du kan säkert lära dig en massa från denna kod.


Svara

Sv: Lite tips om mailhantering....WInsock

Postades av 2004-09-22 22:03:07 - Bertil Rundquist

Hej, jag ber om ursäkt för min felskrivning.
äsch va fel det blir då:)
Du skriver POP2, vet ej om det blir samma som POP3 ?

"220 comvena.com ESMTP MDaemon 7.2.0; Wed, 22 Sep 2004 14:46:30 +0200 "
Är detta det FÖRSTA som kommer från din popadress?
Det BRUKAR komma ett "+" eller "-" men gör det nu inte det så får du troligen skriva

<code>
dim dinsträng as STRING
winsock1.getdata dinsträng

if left(dinsträng,1)="220" then msgbox "servern svarar: " & dinsträng
if left(dinsträng,1)<>"220" then msgbox "Nu är det nått fel"

</code>


Nu är det verifierat att detta nedan funkar. (vid svar som + & -)


Titta på denna funktion:

Först kollar den om winsock är i rätt STATE för att kunna ansluta.

<code>
Public Function connectmail()
If Not winsock1.State = sckClosed Then
winsock1.Close
Do Until winsock1.State = sckClosed
DoEvents
Loop
End If


winsock1.Connect server, port


End Function
</code>

Så här skall det vara i winsock1.DataArrival:

<code>
dim dinsträng as STRING
winsock1.getdata dinsträng

if left(dinsträng,1)="+" then msgbox "servern svarar: " & dinsträng
if left(dinsträng,1)="-" then msgbox "Nu är det nått fel"

</code>

anslut med "connectmail"

Nu har du gjort en anslutning, inget mer. Servern har svarat "+" vilket betyder att den svarat.
Observera att du måste ha en giltig popadress.



Ang SMTP och POP så är SMTP utgående server, ska du skicka mail gör du inte på detta viset alls.
Att logga in på detta vis gör du mot POP


Börja med enbart detta, meddela hur det går:)


Svara

Sv: Lite tips om mailhantering....WInsock

Postades av 2004-09-23 09:09:41 - Tyronne Engström

ok... det fungerar

Det var pop3 jag menade... sorry!

220 comvena.com ESMTP MDaemon 7.2.0; Wed, 22 Sep 2004 14:46:30 +0200 är det som returenas , men jag gör som du skre fångar upp 220.

På mitt företag så använder mail.webworx.se på både pop3 och smtp så det var därför som jag undrade hur protokollet vet om det är pop eller smtp.

ok.... men nu fungera, hur går vi vidare

/phinala


Svara

Sv: Lite tips om mailhantering....WInsock

Postades av 2004-09-23 11:46:31 - Bertil Rundquist

Najs.

Ok, nu ska du automatiskt skicka användarid + lösen.

Allt sker i winsock1_dataArrival.

<code>
dim dinsträng as STRING
static UserSent as boolean
static PassSent as boolean


winsock1.getdata dinsträng

msgbox dinsträng ' så du ser lite vad som händer


if left(dinsträng,3)<>"220" then msgbox "Nu är det fel" :exit sub

if left(dinsträng,3)="220" then ' Allt OK

if usersent=false then winsock1.senddata("USER " & DITT_USER & VBCRLF) :UserSent=true :exit sub
if PassSent=false then winsock1.senddata("PASS " & DITT_LÖSEN & VBCRLF) :PassSent=true :exit sub

end if

'Glöm inte att rensa usersent/passsent vid avslut om du ska ansluta igen.
Usersent=""
Passsent=""


</code>

Har inte verifierat helt nu, men det bör funka.


Svara

Sv: Lite tips om mailhantering....WInsock

Postades av 2004-09-23 15:29:03 - Tyronne Engström

jag klipte in din kod och testade..

jag fick följande meddelande

500 What? I don't understand that.

/phinala


Svara

Sv: Lite tips om mailhantering....WInsock

Postades av 2004-09-23 15:54:59 - Bertil Rundquist

Hej, jag hoppas du bytte "DITT_USER" & "DITT_LÖSEN" mot det du ska logga in med?


får du det efter du sänder USER?

DITT_USER= mailkontot eller likn, brukar ofta vara hela mailadressen men det verkar inte som det är fallet, efter du anslutit och fått ditt "220" ska du skicka:

"winsock1.senddata("USER " & DITT_USER & VBCRLF)"


if usersent=false then winsock1.senddata("USER " & DITT_USER & VBCRLF) :UserSent=true :exit sub



/B


Svara

Sv: Lite tips om mailhantering....WInsock

Postades av 2004-09-23 16:08:30 - Tyronne Engström

Japp jag bytte ut den...

<code>
If UserSent = False Then Winsock1.SendData ("USER " & txtUsername & vbCrLf): UserSent = True: Exit Sub
If PassSent = False Then Winsock1.SendData ("PASS " & txtPassword & vbCrLf): PassSent = True: Exit Sub
</code>

/P


Svara

Sv: Lite tips om mailhantering....WInsock

Postades av 2004-09-23 16:38:33 - Bertil Rundquist

Ok......fan va mysko, jag har kört detta mot massa mailservers, funkar klockrent men jag e förbryllad över svaren du får, känns inte som standard, inte vad jag erfarit iaf.


om du tar bort if-satserna ovan och kör enbart som vi gjorde innan, då funkar det ju med anslutningen.

sen lägger du enbart "Winsock1.SendData ("USER " & txtUsername & vbCrLf)" i en knapp och kör endast den.

kolla vad svaret blir då. Blir det samma som innan så vet jag faktiskt inte varför, då verkar den inte fatta kommandot USER vilket är mycket märkligt.


EDIT: Kolla på denna länk.

http://www.nthelp.com/pop_commands.htm

/B


Svara

Sv: Lite tips om mailhantering....WInsock

Postades av 2004-09-23 17:12:19 - Tyronne Engström

jag får samma meddelande 500 don´t understand that..

Men återigen


hur vet mailservern att det är pop3 som kommer.

Vi använder ex
smtp = mail.comvena.com
pop3: mail.comvena.com

på mitt företag. Är det någon inställning eller???


/P


Svara

Sv: Lite tips om mailhantering....WInsock

Postades av 2004-09-23 17:21:39 - Bertil Rundquist

Sorry, det blev fel, jag gillar inte Pelles sökfunktion, den har inte fokus när man skriver in sökord och trycker enter, då gör den det som jag markerat sist...

http://www.pellesoft.se/communicate/tips/tips.aspx?tid=749

kolla det så ser du att anslutning inte sker på det viset.


Titta på detta då:

+OK comvena.com POP MDaemon 7.2.0 ready <MDAEMON-F200409231727.AA2742546MD6549@comvena.com>

så ser det ut när JAG ansluter till er POP. Helt OK. Så därför slog det mig, är porten öppen i brandväggen? Port 110 brukar det vara.

Det funkade iaf bra hos mig.


/B


Svara

Sv: Lite tips om mailhantering....WInsock

Postades av 2004-09-23 18:41:20 - Bertil Rundquist

Tjoho? Tänkte om du inte ser att jag uppdaterar då jag skrev i samma tråd:)


Svara

Sv: Lite tips om mailhantering....WInsock

Postades av 2004-09-24 08:26:53 - Tyronne Engström

skit bra.... Nu fungerar det... dvs att man skickar på port110 och tar emot på port 25.

bra!

Jag fortsätter nu och återkommer och ser om jag stöter på några fler problem

/P


Svara

Nyligen

  • 19:55 kick-off med fokus på hälsa?
  • 19:53 kick-off med fokus på hälsa?
  • 16:24 Föreslå en skönhetsklinik online
  • 16:23 Föreslå en skönhetsklinik online
  • 18:42 Hvor finder man håndlavede lamper
  • 18:41 Hvor finder man håndlavede lamper
  • 16:36 Allt du behöver veta om keramiskt
  • 16:14 Vem anlitar man egentligen när tak

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 570 710
27 958
271 751
595
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies