VerInstallFile function Null safety version

int VerInstallFile(
  1. int uFlags,
  2. Pointer<Utf16> szSrcFileName,
  3. Pointer<Utf16> szDestFileName,
  4. Pointer<Utf16> szSrcDir,
  5. Pointer<Utf16> szDestDir,
  6. Pointer<Utf16> szCurDir,
  7. Pointer<Utf16> szTmpFile,
  8. Pointer<Uint32> puTmpFileLen
)

Installs the specified file based on information returned from the VerFindFile function. VerInstallFile decompresses the file, if necessary, assigns a unique filename, and checks for errors, such as outdated files.

DWORD VerInstallFileW(
  DWORD   uFlags,
  LPCWSTR szSrcFileName,
  LPCWSTR szDestFileName,
  LPCWSTR szSrcDir,
  LPCWSTR szDestDir,
  LPCWSTR szCurDir,
  LPWSTR  szTmpFile,
  PUINT   puTmpFileLen
);

Implementation

int VerInstallFile(
    int uFlags,
    Pointer<Utf16> szSrcFileName,
    Pointer<Utf16> szDestFileName,
    Pointer<Utf16> szSrcDir,
    Pointer<Utf16> szDestDir,
    Pointer<Utf16> szCurDir,
    Pointer<Utf16> szTmpFile,
    Pointer<Uint32> puTmpFileLen) {
  final _VerInstallFile = _version.lookupFunction<
      Uint32 Function(
          Uint32 uFlags,
          Pointer<Utf16> szSrcFileName,
          Pointer<Utf16> szDestFileName,
          Pointer<Utf16> szSrcDir,
          Pointer<Utf16> szDestDir,
          Pointer<Utf16> szCurDir,
          Pointer<Utf16> szTmpFile,
          Pointer<Uint32> puTmpFileLen),
      int Function(
          int uFlags,
          Pointer<Utf16> szSrcFileName,
          Pointer<Utf16> szDestFileName,
          Pointer<Utf16> szSrcDir,
          Pointer<Utf16> szDestDir,
          Pointer<Utf16> szCurDir,
          Pointer<Utf16> szTmpFile,
          Pointer<Uint32> puTmpFileLen)>('VerInstallFileW');
  return _VerInstallFile(uFlags, szSrcFileName, szDestFileName, szSrcDir,
      szDestDir, szCurDir, szTmpFile, puTmpFileLen);
}