- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
In CVF 6.6, is there a quick way to determine all the DLLs and Activex components that are required to be distributed along with a compiled application?
Harry Bell
Harry Bell
Link Copied
12 Replies
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hmm. Well, DLLs is somewhat easy. If you also have Visual C installed, right click on the EXE or DLL and select View Dependencies. If not, look for LOADTEST.EXE in the X86USUPPORT folder of your CVF CD and copy that to the folder containing the image. Start a command prompt window and type:
LOADTEST -d yourprog.exe
Typically DFORRT.DLL will be there, or perhaps DFORMD.DLL if multithreaded. For most apps, that's all you need. Dialog-based apps will also need DFDLG100.DLL. Note that if DFORTTD.DLL or DFORMDD.DLL is listed, you've built a debug configuration and that's not redistributable. Rebuild as a Release configuration. Most systems will already have MSVCRT.DLL.
I don't know how to determine what OCX files you may need.
Steve
LOADTEST -d yourprog.exe
Typically DFORRT.DLL will be there, or perhaps DFORMD.DLL if multithreaded. For most apps, that's all you need. Dialog-based apps will also need DFDLG100.DLL. Note that if DFORTTD.DLL or DFORMDD.DLL is listed, you've built a debug configuration and that's not redistributable. Rebuild as a Release configuration. Most systems will already have MSVCRT.DLL.
I don't know how to determine what OCX files you may need.
Steve
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Oh, I would be remiss in not pointing out that we provide a self-installing package that contains all the redistributable pieces - see http://compaq.com/fortran/visual/redist.html
Steve
Steve
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thank you Steve. My version of loadtest.exe did not require the "-d" switch. As you seemed to suggest in your earlier reply, DFDLG100.DLL cannot be detected by loadtest.exe; are there other DLLs that are not picked up by loadtest.exe?
Also, I learned the hard way that kernel32.dll cannot simply be copied to the c:windowssystem directory of a target machine. DLLs apparently need to be "registered".
I take it that the executable at http://compaq.com/fortran/visual/redist.html will both 1. copy those DLLs included and 2. register them. Correct?
So how is DFDLG100.DLL registered? (I suspect that InstallShield or other install systems can register DLLs as well.)
Harry Bell
Also, I learned the hard way that kernel32.dll cannot simply be copied to the c:windowssystem directory of a target machine. DLLs apparently need to be "registered".
I take it that the executable at http://compaq.com/fortran/visual/redist.html will both 1. copy those DLLs included and 2. register them. Correct?
So how is DFDLG100.DLL registered? (I suspect that InstallShield or other install systems can register DLLs as well.)
Harry Bell
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
KERNEL32.DLL is a system DLL - don't even think of copying it! One registers a DLL by the following command:
regsvr32 dllname.dll
Yes, the redistributables package takes care of this for you. See the web page for it for a list of the included components.
Steve
regsvr32 dllname.dll
Yes, the redistributables package takes care of this for you. See the web page for it for a list of the included components.
Steve
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
So can I safely run the command: regsvr32 dllname
for each of the DLLs that the program loadtest.exe lists (including KERNEL32.DLL)?
Harry Bell
for each of the DLLs that the program loadtest.exe lists (including KERNEL32.DLL)?
Harry Bell
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Well, you can safely run it, yes. You should not copy or attempt to register any DLL that you can't find in a REDIST folder on the CVF CD-ROM. That's a short list.
Steve
Steve
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
This is tricky. You need to get your hands on all the modules loaded by the process (your app, .exe). The key API functions are:
CreateToolhelpSnapshot
Module32First
Module32Next
Once you have the list, you'll need to ensure that the version is appropriate for your app.
HTH,
Gerry T.
CreateToolhelpSnapshot
Module32First
Module32Next
Once you have the list, you'll need to ensure that the version is appropriate for your app.
HTH,
Gerry T.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
OK. Steve's last comment on this thread seems the easiest (ie. best) answer to me. In looking at my CD-ROM distribution disk, version 6.1 was the last I could find with a "redist" folder. Are the CVF version 6.1 redist group of files (DFORMD.DLL, DFORRT.DLL, FQWIN.HLP, and DFDLG100.DLL) sufficient for CVF version 6.6A applications that use DLLs? I guess I'm also curious why DFDLG100.DLL was excluded from the automatic installation application, VFRUN66BI.exe ( at http://compaq.com/fortran/visual/redist.html ).
Harry Bell
Harry Bell
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
No, the 6.1 DLLs cannot be used with 6.6 applications. But you can use the REDIST folders to tell you the names of redistributable DLLs - except that we've added to the list since 6.1, I think. The list on the web page is current.
I would say that the list you have is fine, though it is likely that your application does not need both DFORRT.DLL and DFORMD.DLL - the latter is used if you selected the threaded libraries. FQWIN.HLP is needed only for QuickWin applications.
Steve
I would say that the list you have is fine, though it is likely that your application does not need both DFORRT.DLL and DFORMD.DLL - the latter is used if you selected the threaded libraries. FQWIN.HLP is needed only for QuickWin applications.
Steve
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I wanted to resurrect this thread again to check a point on the redistributables (for CVF 6.6A in my case).
InstallShield Express 2.12 gives the option of registering the DLLs and other files. If I include all of the 10 files that get distributed in VFRUN66AI.EXE (or my version of CVF) and have them all registered automatically by InstallShield is that the same as running VFRUN66AI.EXE or are there other mysterious things that VFRUN66AI.EXE does?
Do the files fqwin.hlp and stdole2.tbl get registered in the same way as DLLs?
Harry Bell
InstallShield Express 2.12 gives the option of registering the DLLs and other files. If I include all of the 10 files that get distributed in VFRUN66AI.EXE (or my version of CVF) and have them all registered automatically by InstallShield is that the same as running VFRUN66AI.EXE or are there other mysterious things that VFRUN66AI.EXE does?
Do the files fqwin.hlp and stdole2.tbl get registered in the same way as DLLs?
Harry Bell
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Harry,
The only file that needs to be registered is DFDLG100.DLL. VFRUN doesn't do anything other than copy the files and register that one DLL.
Steve
The only file that needs to be registered is DFDLG100.DLL. VFRUN doesn't do anything other than copy the files and register that one DLL.
Steve
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Steve,
You referred to a file above from the Compaq Web site. Are resources such as this going to eventually be copied to Intel's site?
Mike
You referred to a file above from the Compaq Web site. Are resources such as this going to eventually be copied to Intel's site?
Mike
Reply
Topic Options
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page