change address book path

Discussion of general topics about Mozilla Thunderbird
healer
Posts: 229
Joined: November 26th, 2005, 4:54 am
Location: Sydney

change address book path

Post by healer »

I would like to be able to change the address book path because I want to be able to write email from more than one computers. Can somebody please tell me how to achieve it? I have found I can change the path of the email inbox (share a network drive and map it as local drive) and so on but not the address book. What a shame!
User avatar
Freee!!
Posts: 15562
Joined: January 28th, 2005, 5:52 am
Location: Home, with my son!
Contact:

Post by Freee!! »

At this moment it is not possible to store your address book outside of your profile. With some tweaking, it is possible to store your profile in a central location so you can use it from more than one computer on a network.
healer
Posts: 229
Joined: November 26th, 2005, 4:54 am
Location: Sydney

Post by healer »

Mr. Liu wrote:At this moment it is not possible to store your address book outside of your profile. With some tweaking, it is possible to store your profile in a central location so you can use it from more than one computer on a network.
I did know that I had no choice with the way the Thunderbird was designed. I would like to know the tweaking part. I used to use Outlook and it worked the way I wanted. Since I have changed to used FireFox so I would like to switch my mail reader to Thunderbird as well.

I look forward to your further info.
User avatar
tanstaafl
Moderator
Posts: 49647
Joined: July 30th, 2003, 5:06 pm

Post by tanstaafl »

http://kb.mozillazine.org/Sharing_address_books contains all of the methods I'm aware of.
healer
Posts: 229
Joined: November 26th, 2005, 4:54 am
Location: Sydney

access address book across network

Post by healer »

tanstaafl wrote:http://kb.mozillazine.org/Sharing_address_books contains all of the methods I'm aware of.


user_pref("mail.accountmanager.localfoldersserver", "server2");
user_pref("ldap_2.servers.pab.filename", "abook.mab");

I suppose I should replace "server2" with the name of the networked computer where the addressbook is. Where can I specify the path of the address book in the networked computer? Does the above example apply to my network which is only a peer to peer network without ldap setup?
Old martimus8
Posts: 0
Joined: December 31st, 1969, 5:00 pm

Some notes...

Post by Old martimus8 »

tanstaafl wrote:http://kb.mozillazine.org/Sharing_address_books contains all of the methods I'm aware of.
    I just wanted to post my results regarding this procedure and perhaps raise a question or two :)

    Under a Windows 2000/XP/2003 system, the above link does appear to work for burying the address book under the profile in a different folder using the user.js file. Using linkd, junction, or fsutil, one can redirect the address book to another physical NTFS drive on the same system. However my situation is like some others, I would like to share the address book on a peer to peer basis across multiple computers.
    Linkd, junction and fsutil only support NTFS mappings and not UNC (\\servername\sharename\foldername). So sharing across a network is INCOMPLETE.

    Under a Linux machine, one should be able to use just a symbolic link to the file itself and then map it to a file share name. Setting the user.js file to include ONE of the following lines:
    • user_pref("ldap_2.servers.pab.filename", "./addressbooks/abook.mab");
    • user_pref("ldap_2.servers.pab.filename", "addressbooks/abook.mab");
    • user_pref("ldap_2.servers.pab.filename", "addressbooks\\abook.mab");
    • user_pref("ldap_2.servers.pab.filename", "addressbooks\abook.mab");
    does NOT work in Thunderbird 1.0.7 (some are incorrect syntax for javascript on purpose)
healer wrote:user_pref("mail.accountmanager.localfoldersserver", "server2");
    I don't even have this listing in my prefs.js, so I am unclear exactly what this is.
    I assume this is for LDAP server or maybe a NETBIOS/NBT name...although that is also unclear on how to set one up.

    Q: Is a LDAP Server part of Thunderbird, or is it a separate program outside the realm of Mozilla?

    I'm guessing it's not, but regardless I also need it to be editable, which apparently a LDAP Server won't allow this according to the KB above.
healer
Posts: 229
Joined: November 26th, 2005, 4:54 am
Location: Sydney

Post by healer »

martimus8 wrote:
tanstaafl wrote:http://kb.mozillazine.org/Sharing_address_books contains all of the methods I'm aware of.
    I just wanted to post my results regarding this procedure and perhaps raise a question or two :)

    Under a Windows 2000/XP/2003 system, the above link does appear to work for burying the address book under the profile in a different folder using the user.js file. Using linkd, junction, or fsutil, one can redirect the address book to another physical NTFS drive on the same system. However my situation is like some others, I would like to share the address book on a peer to peer basis across multiple computers.
    Linkd, junction and fsutil only support NTFS mappings and not UNC (\\servername\sharename\foldername). So sharing across a network is INCOMPLETE.

    Under a Linux machine, one should be able to use just a symbolic link to the file itself and then map it to a file share name. Setting the user.js file to include ONE of the following lines:
    • user_pref("ldap_2.servers.pab.filename", "./addressbooks/abook.mab");
    • user_pref("ldap_2.servers.pab.filename", "addressbooks/abook.mab");
    • user_pref("ldap_2.servers.pab.filename", "addressbooks\\abook.mab");
    • user_pref("ldap_2.servers.pab.filename", "addressbooks\abook.mab");
    does NOT work in Thunderbird 1.0.7 (some are incorrect syntax for javascript on purpose)
healer wrote:user_pref("mail.accountmanager.localfoldersserver", "server2");
    I don't even have this listing in my prefs.js, so I am unclear exactly what this is.
    I assume this is for LDAP server or maybe a NETBIOS/NBT name...although that is also unclear on how to set one up.

    Q: Is a LDAP Server part of Thunderbird, or is it a separate program outside the realm of Mozilla?

    I'm guessing it's not, but regardless I also need it to be editable, which apparently a LDAP Server won't allow this according to the KB above.
I can't find user.js file with mine. Perhaps we're using different versions. By the way, can you please tell me how to set the path so that address book outside of the current profile but in the same computer can be used.
User avatar
Freee!!
Posts: 15562
Joined: January 28th, 2005, 5:52 am
Location: Home, with my son!
Contact:

Post by Freee!! »

healer wrote:I can't find user.js file with mine. Perhaps we're using different versions. By the way, can you please tell me how to set the path so that address book outside of the current profile but in the same computer can be used.

The file user.js is an optional file that can be found in the same folder in your profile as prefs.js when it exists. In case you should wish to create it, locate the file prefs. js in your profile and create a new text file in the same folder. Rename it user.js and ignore the warning about changing extensions. Be sure to set Windows to show hidden files and folders and not to hide known file extensions.
User avatar
tanstaafl
Moderator
Posts: 49647
Joined: July 30th, 2003, 5:06 pm

Post by tanstaafl »

Simply editing the preferences in prefs.js only works if the new location is a child directory in the same directory tree. Thats why I said it was not very usefull in the KB article. It does work for me under XP.

mail.accountmanager.localfoldersserver specifies your local folders directory. Which server number it uses varies. I have no idea why they use ldap_2.servers.* preferences for storing certain preferences when you don't have a LDAP server. They just do.

Thunderbird doesn't include a LDAP server. It merely supports using one to access stored address book entries. The KB article mentions the bug filed about the inability to edit the LDAP server entries from within Thunderbird.
healer
Posts: 229
Joined: November 26th, 2005, 4:54 am
Location: Sydney

Post by healer »

It really frustrates me that it doesn't do as much as Outlook. Why don't they simply provide an option to set the path of the address book like what they do with the Server Settings. For some reasons I want to be able to access the email from whichever computer I log on or even from whichever user account I log on at the same computer.
User avatar
tanstaafl
Moderator
Posts: 49647
Joined: July 30th, 2003, 5:06 pm

Post by tanstaafl »

I've never understood how they chose what new features to support and why some old features (such as the ability to edit the preferences to specify ANY location for the address book) were removed.

Have you considered storing your profile on a file share and accessing the same profile from every PC? See http://kb.mozillazine.org/Moving_your_profile_folder and/or http://kb.mozillazine.org/Running_from_ ... derbird%29 for two different solutions. Note that you don't need a USB drive to have Thunderbird use a profile by specifying its location on the command line.
Old martimus8
Posts: 0
Joined: December 31st, 1969, 5:00 pm

Post by Old martimus8 »

healer wrote:... By the way, can you please tell me how to set the path so that address book outside of the current profile but in the same computer can be used.
    Well all the links in this post pretty much tell you how to do it... But I can briefly outline it.

    I do recommend using junction for Windows based machines, since it ALSO works on Windows 2000 Professional and it's free. You can go to http://www.systernals.com/ and do a search for it. It's not an installer...just a txt file and the exe that's ZIPped. Unzip it somewhere, like C:\Windows (or C:\WinNT for Win2000 users)

    • Make sure Thunderbird is NOT running!!!
    • Find what folder your prefs.js is located in and then...
    • Create a folder called AddressBooks in the same folder. (you can do any name you want if you don't like this name)
    • Create a file named user.js using notepad and put these two lines in it.
        user_pref("ldap_2.servers.pab.filename", "AddressBooks\\abook.mab");
        user_pref("ldap_2.servers.history.filename", "AddressBooks\\history.mab");
    • Create an empty subdirectory on whatever NTFS FORMATTED volume you want to store your address books on. I'll use D:\MyAddressBooks for this example.
    • From a cmd prompt, goto the folder where your prefs.js file is and then type junction AddressBooks D:\MyAddressBooks
    • Copy your abook.mab and history.mab to D:\MyAddressBooks folder
    • Start Thunderbird
      NOTE: Thunderbird 1.0.7 will still recreate abook.mab in your profile folder, but when you load the address book it plucks it from the D: drive path you specified using junction and user.js.
    The reason you shouldn't modify prefs.js, is that user.js overrides the prefs.js. It's helpful not to have the entire configuration file visible, when you only need to change a few items and if you make a mistake in your user.js, you simply delete it and try again. If you choose, you can make the two line changes in prefs.js, but you'll have to locate the existing lines and change them accordingly to your preferences.
tanstaafl wrote:...Thunderbird doesn't include a LDAP server...
    Thank you! :)
healer
Posts: 229
Joined: November 26th, 2005, 4:54 am
Location: Sydney

Post by healer »

I thank you everyone who helps me.

I manage to solve the problem by modifying the profiles.ini file pointing to the original Profiles directory and it works.

I'm glad that I have learnt about "junction"file.

Thanks guys again!!
healer
Posts: 229
Joined: November 26th, 2005, 4:54 am
Location: Sydney

junction problem

Post by healer »

After changing the profile.ini file it works on my two desktops (Power User on XP Pro and Win 2K) but I have problems with my laptop (Limited User on XP Home). So I try to use the junction function.

If I understood right, I created a folder AddressBooks in the folder where the pref.js was. I then created a user.js containing the 2 statements as per the previous post in the same folder. I copied the 2 address books to the AddressBooks directory but I intended the program to use the 2 files from a directory in a networked computer. When I execute the junction file I had the following error.

C:\Documents and Settings\raphaelw\Application Data\Thunderbird>junction AddressBooks T:\Profiles\jh2949jv.default

Junction v1.04 - Windows junction creator and reparse point viewer
Copyright (C) 2000-2005 Mark Russinovich
Systems Internals - http://www.sysinternals.com

Error setting junction for AddressBooks:
The data present in the reparse point buffer is invalid.
Old martimus8
Posts: 0
Joined: December 31st, 1969, 5:00 pm

Re: junction problem

Post by Old martimus8 »

healer wrote:...>junction AddressBooks T:\Profiles\jh2949jv.default

Junction v1.04 - Windows junction creator and reparse point viewer
Copyright (C) 2000-2005 Mark Russinovich
Systems Internals - http://www.sysinternals.com

Error setting junction for AddressBooks:
The data present in the reparse point buffer is invalid.
    I'm guessing drive letter T: is a network file share, which will be UNC. As I stated above, one can not do a junction or fsutil command to anything else BUT a NTFS volume.

    UNC drive letters are not NTFS, they are UNC (Microsofts own flavor of file sharing via NetBt/NetBios)
Locked