The MASM Forum

Miscellaneous => The Orphanage => Topic started by: shankle on September 09, 2013, 12:41:11 AM

Title: Microsoft Outlook
Post by: shankle on September 09, 2013, 12:41:11 AM
I have been in several email programs over time. For one reason or another I have left them.
I am now suffering with Microsoft Outlook. You might ask what version of Outlook
I am running but I can't answer that question. Do I have to have Microsoft Office 2013
32-bit to make Outlook work properly? For instance I would like to print off all my
Contacts. There is no way I can do that in Outlook. Not knowing the version that I am running
what will a download and install of Microsoft Outlook 2013 32-bit do to my existing Outlook
setup?
Title: Re: Microsoft Outlook
Post by: dedndave on September 09, 2013, 01:14:18 AM
in the Help menu, About will give you the version you are running
this applies to most windows applications
Title: Re: Microsoft Outlook
Post by: shankle on September 09, 2013, 02:02:05 AM
Would be nice if it was that easy. But it's not there........
Title: Re: Microsoft Outlook
Post by: dedndave on September 09, 2013, 02:21:40 AM
that's a real surprise
i don't think i've ever seen a ms app that didn't have it

i know i have an old one - lol (don't use it)
but, this is what mine looks like

(http://img38.imageshack.us/img38/1330/hepa.png)
Title: Re: Microsoft Outlook
Post by: shankle on September 09, 2013, 03:28:20 AM
Hi Dave,
Mine doesn't look like that. I'm guessing but I think it is Outlook 2013.
It's got the Windows8 metro crap in part of it.....
Title: Re: Microsoft Outlook
Post by: Magnum on September 09, 2013, 09:24:33 AM
Have you tried clicking on properties and version ?

Or you may get lucky and find a string in the binary.

Resource Hacker and other programs can show the version info also.

Andy
Title: Re: Microsoft Outlook
Post by: shankle on September 09, 2013, 09:55:01 AM
Thanks Magnum,
A 30 second search for this has cost me several hours and still no version.
It's all over the internet with others having the same problem.
It might be that I don't want or need Microsoft Office for $150 or so.
I think it can be found in there.
Title: Re: Microsoft Outlook
Post by: Magnum on September 09, 2013, 10:21:26 AM
I use this when I am in Linux.

It has opened every Word file that I have tried it with.

Andy

FREE
http://www.libreoffice.org/default/
Title: Re: Microsoft Outlook
Post by: TouEnMasm on September 09, 2013, 03:45:32 PM

Quote
For instance I would like to print off all my Contacts

To do that you can export them as a .csv file.Then use excel to read the file and print it.
More difficult way is to read it with masm.
Here is is a sample (commented in french)
http://codes-sources.commentcamarche.net/source/54500-lire-le-carnet-d-adresses-de-outlook-express-depuis-une-application-masm (http://codes-sources.commentcamarche.net/source/54500-lire-le-carnet-d-adresses-de-outlook-express-depuis-une-application-masm)
Title: Re: Microsoft Outlook
Post by: jj2007 on September 09, 2013, 07:16:23 PM
Quote from: ToutEnMasm on September 09, 2013, 03:45:32 PM
More difficult way is to read it with masm.
Use a library ;-)

include \masm32\MasmBasic\MasmBasic.inc        ; download (http://masm32.com/board/index.php?topic=94.0)
        Init
        Recall "OutlookExpo.csv", Ad$(), csv        ; Microsoft sample file (http://help.outlook.com/en-au/140/ee441218.aspx#sample)
        For_ ecx=0 To eax-1                    ; eax=#lines
                Print Ad$(ecx, 3), ", "           ; LastName,
                Print Ad$(ecx, 2), CrLf$        ; FirstName
        Next
        Inkey "-- hit any key --"
        Exit
end start
Title: Re: Microsoft Outlook
Post by: shankle on September 10, 2013, 10:04:01 AM
Thanks for responding Guys.

JJ that's just what I need. I tried changing it a little as I need the email address.
No success with that. Could I beg or request it done again with the following
criteria:  Lastname, Firstname and  email address.
Title: Re: Microsoft Outlook
Post by: jj2007 on September 10, 2013, 03:56:58 PM
Post a sample of your csv file. Email only, or do you need other fields, too?
Title: Re: Microsoft Outlook
Post by: Magnum on September 11, 2013, 12:08:06 AM
I understand now.

I read where you were looking for a version and forgot about the rest of your post and wanting to export your contacts.

Andy
Title: Re: Microsoft Outlook
Post by: shankle on September 11, 2013, 12:39:15 AM
Thanks JJ for responding and your help.
What I would like to be able to print is The Last Name, First Name and Email address.
I have attached a sample of my wlmcontacts.csv file.

Your program lists the csv file in what looks like a DOS screen.
It doesn't print for me.
Title: Re: Microsoft Outlook
Post by: jj2007 on September 11, 2013, 02:35:43 AM
Here it is, I refined it a little bit to find the email addresses:

include \masm32\MasmBasic\MasmBasic.inc        ; download (http://masm32.com/board/index.php?topic=94.0)
  Init
  Let esi=CL$()        ; pass your file via the commandline
  .if !Instr_(esi, ".csv", 1)
        Let esi="wlmcontacts.csv"        ; or use a default
  .endif
  Print "Records found in ", esi
  Recall esi, Ad$(), csv        ; read the file into a two-dimensional string array
  For_ ecx=0 To eax-1        ; eax=#lines
        Print CrLf$, Ad$(ecx, 3), ", "        ; LastName,
        Print Ad$(ecx, 1)        ; FirstName
        xor ebx, ebx
        ; there could be several email addresses, so let's try all columns:
        .Repeat
                .if Instr_(Ad$(ecx, ebx), "@")        ; email?
                        Print ", ", Ad$(ecx, ebx)
                .endif
                inc ebx
        .Until ebx>99
  Next
  Inkey CrLf$, "-- hit any key --"
  Exit
end start


To print it to a file, use e.g. ReadCsv.exe >MyFile.txt
Title: Re: Microsoft Outlook
Post by: shankle on September 11, 2013, 03:25:07 AM
Thanks again JJ. It worked just fine with 1 exception.
The result goes to what looks like a Dos Screen.
Black with white letters. I can print it with "Faststone" capture.

Just curious, what language is your code in??
You don't have to answer if you don't wish to.
Title: Re: Microsoft Outlook
Post by: dedndave on September 11, 2013, 03:51:02 AM
Jack,
you can re-direct output of console-mode programs to a file by using the ">" character

C:\> ProgName >MyFile.csv

that one creates a new file, or over-writes an existing one, named MyFile.csv
using 2 ">>" appends the output to an existing file

be aware that, if the program has a "press any key to exit" message, you won't see it   :biggrin:
so, you just have to know to press a key when it "should" be done
Title: Re: Microsoft Outlook
Post by: jj2007 on September 11, 2013, 03:55:56 AM
Quote from: shankle on September 11, 2013, 03:25:07 AM
The result goes to what looks like a Dos Screen

Yes indeed. You can run it from a DOS prompt and write results to a file with >myfile.txt etc, as Dave wrote above.

QuoteJust curious, what language is your code in??

Pure Masm ;-)

Here is a version that copies the strings to the clipboard, so that you can print it from MS Word or similar:

include \masm32\MasmBasic\MasmBasic.inc        ; download (http://masm32.com/board/index.php?topic=94.0)
  Init
  Let esi=CL$()        ; pass your file via the commandline
  .if !Instr_(esi, ".csv", 1)
        Let esi="wlmcontacts.csv"        ; or use a default
  .endif
  Let edi="Records found in "+esi
  Recall esi, Ad$(), csv        ; read the file into a two-dimensional string array
  For_ ecx=0 To eax-1        ; eax=#lines
          Let edi=edi+CrLf$+Ad$(ecx, 3)+", "
          Let edi=edi+Ad$(ecx, 1)
        xor ebx, ebx
        ; there could be several email addresses, so let's try all columns:
        .Repeat
                .if Instr_(Ad$(ecx, ebx), "@")        ; email?
                          Let edi=edi+", "+Ad$(ecx, ebx)
                .endif
                inc ebx
        .Until ebx>99
  Next
  MsgBox 0, edi, "Copy to clipboard?", MB_YESNO
  .if eax==IDYES
        SetClip$ edi
  .endif
  Exit
end start