The following linker features are new for Visual C++ 6.0.
The new Delay Load Imports linker option allows you to delay loading of DLLs until they are required to continue execution. This removes the requirement that you add code to specifically load a library prior to it being used. It also resolves the problem of making sure you have that code in all of the places that it would be necessary.
New Options for Linker, DUMPBIN, and EDITBIN
Visual C++ 6.0 contains new options that expose more of the operating system functionality and support more platforms.
New linker option | Action |
/DELAY, /DELAYLOAD | Affects the delayed loading of DLLs. The linker can now create code that automatically manages delay loading of DLLs. This can be useful when your application links to DLLs but doesn't always need them. |
/LARGEADDRESSAWARE | Tells the linker that an application can handle an address space larger than 2 gigabytes. |
/LINK50COMPAT | Tells the linker to create an import library in Visual C++ version 5.0 format. |
/MAPINFO | Tells the linker to include the specified information in the map file. You can specify the following types of information: exports, relocation fixups, and line numbers. |
/SWAPRUN | Tells the operating system to copy the image to a swapfile before beginning execution. Useful for applications residing on a network or residing on reusable media. |
/SUBSYSTEM | Now supports the following subsystems: CONSOLE, WINDOWS, NATIVE, POSIX, and WINDOWSCE. |
For more information, see Linker Reference in the Visual C++ Programmer's Guide.
Updated linker option | Action |
/MAP | No longer includes information about relocation fixups by default. If you want fixup information in the map file, use /MAPINFO to request it. |
/MACHINE | Provides some new target platforms. Targets now supported are: Intel x86, MIPS, Alpha, ARM, MIPS R41XX, PPC, SH3, and SH4. |
New DUMPBIN option | Action |
/ARCH | Dumps the arch section of an image. |
/DEPENDENTS | Dumps the names of the DLLs from which an image imports functions. |
/DIRECTIVES | Dumps the compiler-generated directive section of an image. |
/PDATA | Dumps the execution tables (pdata) from an image. |
New EDITBIN option | Action |
/LARGEADDRESSAWARE | Edits the image to indicate that the application can handle an address space larger than 2 gigabytes. |
/SUBSYSTEM | Supports the following subsystems: CONSOLE, WINDOWS, NATIVE, POSIX, and WINDOWSCE. |
/VERSION | Places a version number into the header of an image. |
/WS | Adds the WS_AGGRESSIVE attribute to the image. WS_AGGRESSIVE instructs the loader to trim the working set of the process when the process is inactive. Used for applications such as services and screensavers where memory use must be kept to a minimum. |
The import library format has been revised to reduce the size of library files, including the library files that you create. Most files are 50-75% smaller.