Hi Guys,
I'm making a program that backs up my outlook express folders.
I know the location of my .dbx files thats the easy bit.
But the problem is I need a way getting into variable the outlook express store folder and address book folder.
I'm sure if you have had a look at the location of the .dbx files the directory path is different on every system, it also includes a strange number in the path, something like : {2342fb-242424b-22424214bb}.
So I need a way for my program to automatically find the location of the outlook express store folder and the address book folder, are they in the registry somewhere and is it possible to extract the values from the registry.
Also if possible I need a similar way to detect the location of the users My Documents folder.
Could someone please explain how I could do this ?
I'm fairly new so some examples would be really nice.
Kind Regards
Andy ( aka Large )
Outlook Express Backup Directory
Thanks for that max that tells me the location of the id in the registry.
Do you or anyone else have any idea's on how to read this value into a pure basic variable ?
I have even found the registry value for the My Documents folder, so all I need now is a way to read certain registry data values in Pure Basic ? Any idea's ?
Kind Regards
Do you or anyone else have any idea's on how to read this value into a pure basic variable ?
I have even found the registry value for the My Documents folder, so all I need now is a way to read certain registry data values in Pure Basic ? Any idea's ?
Kind Regards
Mr. Skunk's Registry Library has troubles, closing the registry again on certain systems, like Win 2000.Large wrote:Just thought I'd let you know I managed to read a registry value into a Pure Basic Variable using Mr. Skunks Library.
( aka Large )
I am using the code snippets of Manne from the german forum therefor;
http://www.robsite.de/php/pureboard/vie ... php?t=1378
To get the name of special folders, a lib by Rings works well: SRGetInfo
You can download it from
http://www.reelmediaproductions.com/pb/ and
http://www.purearea.net
-
- PureBasic Expert
- Posts: 2812
- Joined: Fri Apr 25, 2003 4:51 pm
- Location: Portugal, Lisbon
- Contact:
SUPER TIP
(Actually a MS Windows "Feature")
1.
To back up any mails from MS Outlook or Outlook Express, create a dir in your desktop, then open it.
2.
Open Outlook, select all messages* and drag'h'em out into the directory you created...
*(select the first, move down the list, press shift and select the last one)
3.
Import works the other way around...
4.
I laugh at wimpy backup programs created to back up and extract mails from dbx....
(Actually a MS Windows "Feature")
1.
To back up any mails from MS Outlook or Outlook Express, create a dir in your desktop, then open it.
2.
Open Outlook, select all messages* and drag'h'em out into the directory you created...
*(select the first, move down the list, press shift and select the last one)
3.
Import works the other way around...
4.
I laugh at wimpy backup programs created to back up and extract mails from dbx....

-
- PureBasic Expert
- Posts: 2812
- Joined: Fri Apr 25, 2003 4:51 pm
- Location: Portugal, Lisbon
- Contact:
To get system directories:
Code: Select all
Declare.s GetSystemFolder (folder)
; English Forum:
; Author:
; Date: 17. February 2003
; Get system folder location...
#CSIDL_INTERNET = $1
#CSIDL_PROGRAMS = $2
#CSIDL_CONTROLS = $3
#CSIDL_PRINTERS = $4
#CSIDL_PERSONAL = $5 ; Use this instead of CSIDL_MYDOCUMENTS. I don't know why! Ask Microsoft...
#CSIDL_FAVORITES = $6
#CSIDL_STARTUP = $7
#CSIDL_RECENT = $8
#CSIDL_SENDTO = $9
#CSIDL_BITBUCKET = $A
#CSIDL_STARTMENU = $B
#CSIDL_MYDOCUMENTS = $C
#CSIDL_MYMUSIC = $D
#CSIDL_MYVIDEO = $E
#CSIDL_DESKTOPDIRECTORY = $10
#CSIDL_DRIVES = $11
#CSIDL_NETWORK = $12
#CSIDL_NETHOOD = $13
#CSIDL_FONTS = $14
#CSIDL_TEMPLATES = $15
#CSIDL_COMMON_STARTMENU = $16
#CSIDL_COMMON_PROGRAMS = $17
#CSIDL_COMMON_STARTUP = $18
#CSIDL_COMMON_DESKTOPDIRECTORY = $19
#CSIDL_APPDATA = $1A
#CSIDL_PRINTHOOD = $1B
#CSIDL_LOCAL_APPDATA = $1C
#CSIDL_ALTSTARTUP = $1D
#CSIDL_COMMON_ALTSTARTUP = $1E
#CSIDL_COMMON_FAVORITES = $1F
#CSIDL_INTERNET_CACHE = $20
#CSIDL_COOKIES = $21
#CSIDL_HISTORY = $22
#CSIDL_COMMON_APPDATA = $23
#CSIDL_WINDOWS = $24
#CSIDL_SYSTEM = $25
#CSIDL_PROGRAM_FILES = $26
#CSIDL_MYPICTURES = $27
#CSIDL_PROFILE = $28
#CSIDL_SYSTEMX86 = $29
#CSIDL_PROGRAM_FILESX86 = $2A
#CSIDL_PROGRAM_FILES_COMMON = $2B
#CSIDL_PROGRAM_FILES_COMMONX86 = $2C
#CSIDL_COMMON_TEMPLATES = $2D
#CSIDL_COMMON_DOCUMENTS = $2E
#CSIDL_COMMON_ADMINTOOLS = $2F
#CSIDL_ADMINTOOLS = $30
#CSIDL_CONNECTIONS = $31
#CSIDL_COMMON_MUSIC = $35
#CSIDL_COMMON_PICTURES = $36
#CSIDL_COMMON_VIDEO = $37
#CSIDL_RESOURCES = $38
#CSIDL_RESOURCES_LOCALIZED = $39
#CSIDL_COMMON_OEM_LINKS = $3A
#CSIDL_CDBURN_AREA = $3B
#CSIDL_COMPUTERSNEARME = $3D
#CSIDL_FLAG_PER_USER_INIT = $800
#CSIDL_FLAG_NO_ALIAS = $1000
#CSIDL_FLAG_DONT_VERIFY = $4000
#CSIDL_FLAG_CREATE = $8000
#CSIDL_FLAG_MASK = $FF00
Structure EMID
cb.b
abID.b[1]
EndStructure
Structure ITEMIDLIST
mkid.EMID
EndStructure
Procedure.s GetSystemFolder (folder)
*itemid.ITEMIDLIST = #NULL
If SHGetSpecialFolderLocation_ (0, folder, @ * itemid) = #NOERROR
location$ = Space (#MAX_PATH)
If SHGetPathFromIDList_ (*itemid, @location$)
ProcedureReturn location$
EndIf
EndIf
EndProcedure
; D E M O . . .
folder$ = GetSystemFolder (#CSIDL_MYDOCUMENTS)
MessageRequester ("Result...", "The 'My Documents' folder is located in " + Chr (34) + folder$ + Chr (34), #MB_ICONINFORMATION)
End
Re: Outlook Express Backup Directory
The resolution given trouble may be lost outlook express. The utility uses modern and clear methods of restoring outlook express data. It can work with big invalid dbx files and can save restored info as files not larger 1GB, if larger as some dbx files. The program starts under all major versions of Windows OS.