Функция GrdDrvUnInstall производит удаление драйвера Guardant версий 5.х из системы.

UINT GRDDRV_API GrdDrvUnInstall(	
  IN LPCTSTR pcszDriversPath,
  OUT UINT *pnRebootRequired,
  VOID *Reserved
);	

pcszDriversPath

Указатель на строку, содержащую путь к каталогу, в котором находится файл GrdDriversRU.msi и/или GrdDriversEN.msi.
Система всегда кэширует MSI пакет, точнее удаляет все файлы из него, оставляя лишь оболочку установки. Поэтому если указать NULL. то будет использован кэшированный пакет. В обычном случае необходимо всегда указывать NULL.

pnRebootRequired

Указатель на переменную, в которую возвращается признак необходимости перезагрузки после завершения установки драйвера

pReserved

Зарезервировано. Параметр должен быть равен NULL

Возможные ошибки

Код ошибки Windows

 

NO_ERROR (0)

Успешное удаление драйверов.
В случае, если код возврата равен NO_ERROR, но при этом установлен флаг перезагрузки (содержащийся в pnRebootRequired), то это означает что один или несколько компонентов (файлов) используются системой, и требуется перезагрузка для загрузки новых компонентов. Программа инсталляции в таком случае может закончить свои действия и в конце работы произвести перезагрузку.

ERROR_FILE_NOT_FOUND (2)

Драйверы Guardant не установлены.

ERROR_INSTALL_SERVICE_FAILURE (1601)

Сервис Microsoft Installer версии 1.1 и выше в системе не установлен.
Такой код возврата может возвращаться на системах Windows 98, на которых ранее не устанавливались продукты Microsoft Office, или другие, содержащие в дистрибутиве Windows Installer.

ERROR_INVALID_NAME (123 (0x7B))

Указан неверный путь или имя файла

Функция GrdDrvUnInstall производит проверку наличия установленного драйвера Guardant, удаляет файлы, удаляет информацию о драйверах Guardant из системного реестра.

Если после удаления драйверов необходима перезагрузка системы, в переменную, на которую указывает параметр pnRebootRequired возвращается значение, отличное от нуля.