|
The ExtractPackageFile function extracts
the specified file from the package, storing it on the local system.
| BOOL ExtractPackageFile( |
|
HPACKAGE hPackage, |
|
// handle to package file |
|
DWORD dwFilePlatform, |
|
// file platform |
|
DWORD dwFileChecksum, |
|
// file checksum |
|
LPCTSTR lpszFileName, |
|
// file name in package |
|
LPCTSTR lpszLocalFile |
|
// local file name |
| ); |
Parameters
- hPackage
- [in] Handle to an open package file.
-
- dwFilePlatform
- [in] Specifies the target platform for the file.
-
- This may be one of the following values:
| Value |
Description |
| PACKAGE_FILE_PLATFORM_DEFAULT |
The file may be applied on all Windows
platforms. This is the same as specifying a value of PACKAGE_FILE_PLATFORM_WINDOWS. |
| PACKAGE_FILE_PLATFORM_WIN95 |
The file may be applied to a system running
Windows 95. |
| PACKAGE_FILE_PLATFORM_WIN98 |
The file may be applied to a system running
Windows 98 or Windows 98 SE. |
| PACKAGE_FILE_PLATFORM_WINME |
The file may be applied to a system running
Windows ME. |
| PACKAGE_FILE_PLATFORM_WINNT40 |
The file may be applied to a system running
Windows NT 4.0. |
| PACKAGE_FILE_PLATFORM_WIN2000 |
The file may be applied to a system running
Windows 2000. |
| PACKAGE_FILE_PLATFORM_WINXP |
The file may be applied to a system running
Windows XP. |
- In addition to the above platform-specific values, there are
predefined values which specify platform groups:
-
| Value |
Description |
| PACKAGE_FILE_PLATFORM_WIN32 |
The file may be applied to any 32-bit version
of the Windows operating system. |
| PACKAGE_FILE_PLATFORM_WIN9X |
The file may be applied to any system running
Windows 95, Windows 98 or Windows ME. The file will not be applied on a system running
Windows NT, Windows 2000 or Windows XP. |
| PACKAGE_FILE_PLATFORM_WINNT |
The file may be applied to any system running
Windows NT, Windows 2000 or Windows XP. The file will not be applied on a system running
Windows 95, Windows 98 or Windows ME. |
| PACKAGE_FILE_PLATFORM_WINDOWS |
The files may be applied to any system
running any version of Microsoft Windows. |
- dwFileChecksum
- [in] Specifies the 32-bit checksum for the file. If the
package contains multiple file versions, this value is used to uniquely identify the file.
This parameter is ignored if the PACKAGE_OPTION_MULTIPLE_VERSIONS package option has not
been enabled or if the parameter value is zero.
-
- lpszFileName
- [in] A pointer to a null-terminated string which specifies
the name of the file to extract from the package.
-
- lpszLocalFile
- [in] A pointer to a null-terminated string which specifies
the name of the local file that will contain the extracted package file.
Return Values
If the ExtractPackageFile function
succeeds, it will return a non-zero value.
If the function fails, it will return a value of zero. To
get extended error information, call GetLastError.
Remarks
This function will return an error if the specified package
file specifies a file that is to be removed from the target platform. No file data is
actually stored in the package for files that are to be removed.
The extracted file is not actually applied on the local
system. If the local file already exists, it will be overwritten. If the package file is a
patch file, it must be applied using the ApplyPatchFile function.
Requirements
Windows NT/2000/XP: Requires Windows NT 4.0 SP3 or later.
Windows 95/98: Requires Windows 95 or later.
Header: Include apatch.h.
Library: Use apatch32.lib.
Unicode: Implemented as Unicode and ANSI versions on Windows NT/2000/XP.
See Also
ApplyPatchFile, StorePackageFile
|
|