Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • Home
  • SEARCH
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 180749
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 11, 20262026-05-11T14:38:28+00:00 2026-05-11T14:38:28+00:00

First, some background: Our product needs to integrate with the Lotus Notes client by

  • 0

First, some background:

Our product needs to integrate with the Lotus Notes client by adding or updating a line in the NOTES.INI file.

We don’t have a problem if we’re dealing with a single-user installation of Notes (i.e. if there are multiple Windows users on the machine, they’ll all use the same Notes configuration). In this case, there’s a single NOTES.INI file in the Notes installation directory.

However, under a multi-user installation of Notes (where each Windows user has their own Notes configuration), each user has their own NOTES.INI file stored in the user’s LocalAppData directory – e.g. C:\Documents and Settings\Username\Local Settings\Application Data\Lotus\Notes.

So here’s the problem: If our product is being installed on a machine with a multi-user installation of the Notes client, we need to be able to update the NOTES.INI file in the profile of each user on that machine.

We can do this by having a program run when users log in, which checks whether that user’s NOTES.INI file has been updated yet and if not, updates it. However, the uninstall process for our application needs to be able to reverse these modifications for all users on the machine.

Hence the question: assuming our code is running with local admin rights, is there some way that we can iterate through each user’s profile and find their LocalAppData directory so we can make the necessary changes?

Any suggestions greatly appreciated 🙂

EDIT 2009-03-25 16:52 GMT:
Looks like I have a possible approach (thanks Martin C):

     For each subkey of HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList:       If it's a 'real' user (determined somehow):         Remember the subkey name - that's the user's SID         Read the ProfileImagePath value         If the user's Registry hive is not already loaded (i.e. there is no subkey of HKEY_USERS with the appropriate SID):           Enable the SE_BACKUP_NAME and SE_RESTORE_NAME privileges           Load the hive from ProfileImagePath\NtUser.dat using RegLoadKey         Try to find the user's LocalAppData folder using each of the following Registry keys in turn:           HKEY_USERS\<SID>\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders           HKEY_USERS\<SID>\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders           HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders           HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders         Expand environment variables in the resulting path if necessary (presumably just expanding %USERPROFILE% to the ProfileImagePath we got earlier)         Use the path to find the user's NOTES.INI file and make the appropriate changes         If we had to load the hive:           Unload the hive using RegUnLoadKey 

I can probably get that coded up, but it seems a tiny bit fragile and there’s potentially a number of ways it can go wrong. Anyone have a more ‘official’ approach?

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. 2026-05-11T14:38:28+00:00Added an answer on May 11, 2026 at 2:38 pm

    You can enumerate the sub-keys of

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList 

    Each subkey contains the ‘ProfileImagePath’, which will point to the base-path of the profile. Dependent on the OS-version and the language setting you can then determine the location of LocalAppData (beware, it is language-dependent!).

    Edit: A possible starting point for going further could be

    HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders 

    Unfortunately this could vary from user to user and HKEY_USERS only contains the keys of users which have loaded profiles. You could try if you could load profiles somehow (maybe one can attach a user’s registry somehow if it is not already loaded to HKEY_USERS?).

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Ask A Question

Stats

  • Questions 95k
  • Answers 96k
  • Best Answers 0
  • User 1
  • Popular
  • Answers
  • Editorial Team

    How to approach applying for a job at a company ...

    • 7 Answers
  • Editorial Team

    How to handle personal stress caused by utterly incompetent and ...

    • 5 Answers
  • Editorial Team

    What is a programmer’s life like?

    • 5 Answers
  • Editorial Team
    Editorial Team added an answer You can use a trick to have a 'transactional'-like undo… May 11, 2026 at 7:06 pm
  • Editorial Team
    Editorial Team added an answer You could add a onkeyup="SomeFunction();" Edit: Aah, too quick. I… May 11, 2026 at 7:06 pm
  • Editorial Team
    Editorial Team added an answer The creator(s) of Qcodo never really promoted the framework, and… May 11, 2026 at 7:06 pm

Related Questions

First some background: VB.NET 2005 Application that accesses a MS-SQL back-end, using multiple Web
My company is in the process of rewriting our software from scratch, and I'm
I am part of a high school robotics team, and there is some debate
I'm currently running into some issues resizing images using GD. Everything works fine until

Trending Tags

analytics british company computer developers django employee employer english facebook french google interview javascript language life php programmer programs salary

Top Members

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.