13. februar 2002 - 00:36 Der er 7 kommentarer og
1 løsning

Fjerne unødvendige data fra .MSG fil aka Email fil

vi har en mailserver.
i denne er der en agent, som kan sende information om filplacering til en vbsfil hver gang der kommer noget i en mailbox. I bund og grund returnerer den filplaceringen til emailen. DVS. at jeg med VBS skal åbne denne MSG fil og kigge i den som en almindelig textfil. Det kan jo se meget forskellig ud i en sådanne emails med alle de header ting som der er, eller når der er vedhæftede filer.

DET JEG SKAL BRUGE:
Trim'et information på:
TO:
FROM:
SUBJECT:
MESSAGE:

Hvordan gør jeg det nemmest? Altså fjerner alt unødvendigt andet. Og den skal være 100% sikker uanset hvordan headerne o.a. ser ud.

Eventuelle links modtages gerne, men er ikke pointgivende hvis ikke de leverer den totale løsning.
Helvede... Hvis mailservere kan, kan du vel også ;)


Hvis du har det bedre med ASP så vis det bare i det sprog.

ahh skod. jeg ville have givet 2000 point for den, men må jo nøjes med de 200
Avatar billede joern Nybegynder
13. februar 2002 - 00:52 #1
Jeg arbejder kun med VB - ikke med VB-script.  Men taler du om et
program som en person starter, eller om noget der skal køre automatisk?

Disse MSG-filer, har de løbenumre eller?

Hvis MSG-filerne er ren ANSI og hver linie er afsluttet med en CR+LF så kan
man ret let lave en løkke, der læser alle linier og kun anvender de
fire der har den egneskab at de indledes (eller indeholder) de 4 strenge
du angiver.

Men på eksperten får du hjælp, ikke et færdigt program, det har vi SHARK til.

M.v.h.  Jørn
13. februar 2002 - 06:43 #2
hehe, jeg tror jeg ved hvad du mener, men husk at en emails source kan se meget anderledes ud. du skal ikke bekymre dig om om disse msg filer har løbenumre. jeg får filplaceringen + navn, så jeg åbner den blot.
Avatar billede kennethrisum Nybegynder
13. februar 2002 - 09:02 #3
For at finde f.eks. FROM bruger du koden

  Dim sFrom As String
  Dim lStart As Long
  lStart = InStr(1, msg, "FROM:", vbTextCompare)
  sFrom = Mid(msg, lStart, InStr(lStart, msg, vbCrLf) - lStart)

Du kan så gøre det samme med TO,SUBJECT m.m.

Message headers kan indeholde alt muligt. Men de skal indeholde FROM, TO, SUBJECT som del af headeren. Derfor vil dette virke i alle tilfælde.
13. februar 2002 - 09:08 #4
Se her er en source på en ganske almindelig email, dog med html kode i, men det gør det jo kun sjovere. jeg kan godt se hvad du mener, men det kan jo gå galt. søg i sourcen for to: så kommer dem 2 gange, og det vil dit script også.


Return-path: <lars@gdgfdgfd.dk>
Received: from fepB.post.tele.dk (unverified [195.xxx]) by xxx.dddd.dk
(Rockliffe SMTPRA 4.2.4) with ESMTP id <B0005413020@xxx.bvvvvo.dk> for <xxx@bvvvv.dk>;
Wed, 13 Feb 2002 06:46:56 +0100
Received: from larsginge ([80.62.126.186]) by fepB.post.tele.dk
          (InterMail vM.4.01.03.23 201-229-121-123-20010418) with SMTP
          id <2cx4356.RFIY22989.fxcpost.telvce.dk@larsginge>
          for <lvcx@vcx.dk>; Wed, 13 Feb 2002 06:43:56 +0100
Reply-To: <lars@vcxxxcv.dk>
From: <lars@vcxvcx.dk>
To: <lns@vcxxc.dk>
Subject: =?iso-8859-1?Q?Eksperten__Programmering=A0_Visual_Basic=A0_Fjerne_un=F8dv?=
    =?iso-8859-1?Q?endige_data_fra_.MSG_fil_ak?=
Date: Wed, 13 Feb 2002 06:46:16 +0100
Message-ID: <NEEFKBJIADHLLPKBMEGNKEGOCGAA.lars@12send.dk>
MIME-Version: 1.0
Content-Type: multipart/mixed;
    boundary="----=_NextPart_000_0237_01C1B45A.2320E820"
X-Priority: 3 (Normal)
X-MSMail-Priority: Normal
X-Mailer: Microsoft Outlook IMO, Build 9.0.2416 (9.0.2910.0)
Importance: Normal
X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4807.1700

This is a multi-part message in MIME format.

------=_NextPart_000_0237_01C1B45A.2320E820
Content-Type: text/plain;
    charset="iso-8859-1"
Content-Transfer-Encoding: 7bit

 

http://www.eksperten.dk/spm/171826
------=_NextPart_000_0237_01C1B45A.2320E820
Content-Type: application/octet-stream;
    name="=?iso-8859-1?Q?Eksperten__Programmering=A0_Visual_Basic=A0_Fjerne_un=F8dv?=
    =?iso-8859-1?Q?endige_data_fra_.MSG_fil_aka_Email_fil_.url?="
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment;
    filename="=?iso-8859-1?Q?Eksperten__Programmering=A0_Visual_Basic=A0_Fjerne_un=F8dv?=
    =?iso-8859-1?Q?endige_data_fra_.MSG_fil_aka_Email_fil_.url?="

[DEFAULT]
BASEURL=http://www.eksperten.dk/spm/171826
[InternetShortcut]
URL=http://www.eksperten.dk/spm/171826
Modified=C00FB9BC51B4C1010B

------=_NextPart_000_0237_01C1B45A.2320E820--
Avatar billede kennethrisum Nybegynder
13. februar 2002 - 10:23 #5
Du kan så bruge denne function i stedet for: (Den bruger Microsoft Scripting Runtime/scrrun.dll)

Private Function FindHeaderItem(sHeaderItem As String, sMSGPath) As String
  Dim fso As FileSystemObject
  Dim fsoFile As File
  Dim fsoStream As TextStream
  Dim sLine As String
 
  Set fso = New FileSystemObject
  Set fsoFile = fso.GetFile(sMSGPath)
  Set fsoStream = fsoFile.OpenAsTextStream(ForReading)
 
  Do While fsoStream.AtEndOfStream = False
    sLine = fsoStream.ReadLine
    If UCase(Left(sLine, Len(sHeaderItem))) = UCase(sHeaderItem) Then
      FindHeaderItem = sLine
      Exit Do
    End If
  Loop
  fsoStream.Close
  Set fsoStream = Nothing
  Set fsoFile = Nothing
  Set fso = Nothing
End Function
13. februar 2002 - 11:37 #6
Jeg kan sagtens se vad du mener, og det er jo også ret simpelt, MEN!
JEg skal have selve beskeden med.
SE HER!
Her er en email i plain/text.
nederst er beskeden, men hvis der f.eks. er vedhæftet en fil med så kan de nse heeeelt anderledes ud.
Return-path: <LNS@lala.dk>
Resent-To: lns@lala.dk
Resent-From: larsn@lala.dk
Resent-Message-Id: <B0005413201@ns1.lala.dk>
Resent-Date: Wed, 13 Feb 2002 11:05:57 +0100
Received: from fepF.post.tele.dk (unverified [195.41.46.135]) by ns1.lala.dk
(Rockliffe SMTPRA 4.2.4) with ESMTP id <B0005413200@ns1.lala.dk> for <larsn@lala.dk>;
Wed, 13 Feb 2002 11:05:57 +0100
Received: from pclars ([80.63.50.162]) by fepF.post.tele.dk
          (InterMail vM.4.01.03.23 201-229-121-123-20010418) with SMTP
          id <20020213100257.HLMZ1982.fepF.post.tele.dk@pclars>
          for <larsn@lala.dk>; Wed, 13 Feb 2002 11:02:57 +0100
Message-ID: <001301c1b475$2fc7c880$400b000a@pclars>
From: "Lars S. Nielsen" <LNS@lala.dk>
To: <larsn@lala.dk>
Subject: Gunghaaaaa
Date: Wed, 13 Feb 2002 10:59:53 +0100
MIME-Version: 1.0
Content-Type: text/plain;
    charset="iso-8859-1"
Content-Transfer-Encoding: 7bit
X-Priority: 3
X-MSMail-Priority: Normal
X-Mailer: Microsoft Outlook Express 5.50.4807.1700
X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4807.1700

er du cool mand!!!
fdsfsfdsfdsfds.
slut hilsen
Lars
Avatar billede skumbaq Nybegynder
14. februar 2002 - 14:15 #7
Må jeg ikke få et kopi af din vbs fil

Du kan lige fjerne dinne smtp adresse og kode

min adresse er

til@infojens.dk

På forhånd tak
28. maj 2014 - 15:07 #8
lukker meget gammelt indhold;-)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester