Solved

Where's the program dir?

Posted on 1998-01-10
11
229 Views
Last Modified: 2010-04-04
Hi,

   I want to get the program files directory. There doesn't seem to be a getprogramdir or an api command which retrieves this info (similiar to accessing the windows directory). Should this be retrieved somewhere in the registry, or is there an api command I should be using to retrieve this?
              Thanks
0
Comment
Question by:jexd99
  • 4
  • 4
  • 3
11 Comments
 
LVL 5

Accepted Solution

by:
julio011597 earned 50 total points
ID: 1356105
It is in the registry.

I.e., on my WinNT4.0 it is in:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion:ProgramFilesDir
0
 
LVL 8

Expert Comment

by:ZifNab
ID: 1356106
Well, you can use GetDir at the moment your program is started.
0
 
LVL 5

Expert Comment

by:julio011597
ID: 1356107
GetDir procedure returns the current directory; i guess jexd99 needs the "ProgramDir" (e.g. C:\Programs).
0
 
LVL 5

Expert Comment

by:ronit051397
ID: 1356108
GetDir is not proper cause, for example, if you activate a shortcut of the program which is stored in another directory, usually in the Desktop directory, then this is the directory you will get and not the correct location of the exe file.So, julio is correct.

0
 
LVL 8

Expert Comment

by:ZifNab
ID: 1356109
Hohoho, just a sugestion, don't shoot me. I julio is right, but what if you're making a program for Win3.11
0
Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

 
LVL 5

Expert Comment

by:julio011597
ID: 1356110
Don't know :) I've never worked in Win3.11.
0
 
LVL 8

Expert Comment

by:ZifNab
ID: 1356111
Yeah, Win3.11, some customers still use it. Damn difficult to make two versions of your program, win3.11 and 95/NT.
By the way, In the previous comment I meant : I know that julio is right (forgot the KNOW). This for don't getting the wrong idea. See you!
0
 
LVL 5

Expert Comment

by:julio011597
ID: 1356112
I'm not a Windows expert, still guess it's a mess to do this job in Win3.11 because Win3.11 has not the concept of ProgramFilesDir itself; in general, if you plan a Win3.11 program, you should "think" win3.11 in order not to get in troubles.

Anyway, just my opinion.
0
 
LVL 5

Expert Comment

by:ronit051397
ID: 1356113
I think, In Win3.11 you should look in one of the windows ini files,if the program was installed properly.
0
 
LVL 8

Expert Comment

by:ZifNab
ID: 1356114
Hi Ronit, correct. But you still have to know the place of that ini file. And who says that the user has installed windows in the windows\ directory?
0
 
LVL 5

Expert Comment

by:ronit051397
ID: 1356115
Then, In 16bit you first call the GetWindowsDir.
0

Featured Post

Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
Get a Metafile from Clipboard and convert it into a PNG to save to file or stream. 2 99
delphi parse string to params 3 100
LAN or WAN ? 11 82
Performance of SQL statement 37 101
In this tutorial I will show you how to use the Windows Speech API in Delphi. I will only cover basic functions such as text to speech and controlling the speed of the speech. SAPI Installation First you need to install the SAPI type library, th…
Introduction I have seen many questions in this Delphi topic area where queries in threads are needed or suggested. I know bumped into a similar need. This article will address some of the concepts when dealing with a multithreaded delphi database…
This Micro Tutorial demonstrates using Microsoft Excel pivot tables, how to reverse engineer competitors' marketing strategies through backlinks.
In this video I am going to show you how to back up and restore Office 365 mailboxes using CodeTwo Backup for Office 365. Learn more about the tool used in this video here: http://www.codetwo.com/backup-for-office-365/ (http://www.codetwo.com/ba…

867 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

19 Experts available now in Live!

Get 1:1 Help Now