Hello Marco,
If you use the Project Jedi Code Library (www.delphi-jedi.org/) , there are
functions within for each of these.

GetProgramFilesFolder
 returns the value of
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\ProgramFilesDir
  which on my machine contains the value "C:\Program Files"

The location of the Start Menu can be found by calling the Win32 API
function SHGetSpecialFolderLocation (see the help in Help | Windows SDK).
You pass a value to this function indicating which special folder you want
to retrieve. the following list came from the help:

CSIDL_BITBUCKET Recycle bin � file system directory containing file objects
in the user's recycle bin. The location of this directory is not in the
registry; it is marked with the hidden and system attributes to prevent the
user from moving or deleting it.
CSIDL_CONTROLS Control Panel � virtual folder containing icons for the
control panel applications.
CSIDL_DESKTOP Windows desktop � virtual folder at the root of the name
space.
CSIDL_DESKTOPDIRECTORY File system directory used to physically store file
objects on the desktop (not to be confused with the desktop folder itself).
CSIDL_DRIVES My Computer � virtual folder containing everything on the local
computer: storage devices, printers, and Control Panel. The folder may also
contain mapped network drives.
CSIDL_FONTS Virtual folder containing fonts.
CSIDL_NETHOOD File system directory containing objects that appear in the
network neighborhood.
CSIDL_NETWORK Network Neighborhood � virtual folder representing the top
level of the network hierarchy.
CSIDL_PERSONAL File system directory that serves as a common respository for
documents.
CSIDL_PRINTERS Printers folder � virtual folder containing installed
printers.
CSIDL_PROGRAMS File system directory that contains the user's program groups
(which are also file system directories).
CSIDL_RECENT File system directory that contains the user's most recently
used documents.
CSIDL_SENDTO File system directory that contains Send To menu items.
CSIDL_STARTMENU File system directory containing Start menu items.
CSIDL_STARTUP File system directory that corresponds to the user's Startup
program group.
CSIDL_TEMPLATES File system directory that serves as a common repository for
document templates.

Again you could also call the Project Jedi function GetStartupFolder to
return this value as well.

Hope this helps
Scott Kellish
SoftSystem Solutions, LLC
[EMAIL PROTECTED]


----- Original Message ----- 
From: "Marco Congedo" <[EMAIL PROTECTED]>
To: <[email protected]>
Sent: Monday, April 25, 2005 4:50 AM
Subject: Program files dir


> Hello,
>
>  how can an application know at run time the complete path of the "Program
files" directory, ( for all languages).
>
> Also, is there a way to know the path of the start-menu directory where
programs shorcuts are installed to be accessible from the START Windows
menu?
>
> Thanks a lot!
>
> Marco
>
>
> Marco Congedo, PhD
> -------------------------------
> INRIA
> (National Institute for Research in Informatics and Control)
> Grenoble, France
> Tel: +33 4 76615409
> Fax: +33 4 76615454
>
>
> __________________________________________________
> Do You Yahoo!?
> Tired of spam?  Yahoo! Mail has the best spam protection around
> http://mail.yahoo.com
> _______________________________________________
> Delphi mailing list -> [email protected]
> http://www.elists.org/mailman/listinfo/delphi
>


_______________________________________________
Delphi mailing list -> [email protected]
http://www.elists.org/mailman/listinfo/delphi

Reply via email to