Форум программистов, компьютерный форум, киберфорум
Наши страницы

Как програмно установить устрройство в системе Win9x/2000? - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Передвижение экрана вслед за героем. Реализация. http://www.cyberforum.ru/cpp-beginners/thread482608.html
Короче говоря мне нужно зделать передвижение экрана вслед за героем.Типа как в Mario,как это зделать?? Может быть скроллинг?Если да то как?
C++ Различные задачи по C++ помогите пожалуйста написать эти задачи 1. Используйте условную операцию для нахождения большего из двух целых чисел. 2. Используйте условную операцию для нахождения меньшего из двух целых... http://www.cyberforum.ru/cpp-beginners/thread482598.html
C++ Нужно средствами api определить сеть к которой подключен пк
как средствами api определить сеть к которой подключен пк? Если можно, кодом. Заранее спасибо.
Как определить функции hashValue, isEqual, isLessThen? C++
Люди, кто подскажет буду очень благодарен!! Мне нужно сделать класс А, в pivate стек будет из элементов класса Б, так вот , чтоб все работало (встроенные фун-ии для stack- stack.h) , надо чтобы...
C++ Запись из CBitmap в файл http://www.cyberforum.ru/cpp-beginners/thread482586.html
Помогите, плииз :-) Необходимо записать из объекта CBitmap в BMP файл...
C++ Как как корректно закрыть другую программу из своей? Подскажите плиз как корректно закрыть другую программу из своей которая после посылки ей сообщения SendMessage(hWnd1,WM_CLOSE,0,0); выводит диалог типа да+нет,а его обработать уже не получается. подробнее

Показать сообщение отдельно
DmitryR
16.02.2010, 12:16
Вот не знаю уж где и копать - под 2000 - все просто зашибись. Под 98 - рушится при вызове SetupDiCreateDeviceInfo. GetLastError говорит что-то вроде Invalid data - очень млин содержательно... :-(

BOOL CInstall::InstallDriver(char *szName, char *szVersion, char *szURL)
{
// perform driver installation
HDEVINFO DeviceInfoSet = 0;
SP_DEVINFO_DATA DeviceInfoData;
GUID ClassGUID;
TCHAR ClassName[MAX_CLASS_NAME_LEN];
DWORD err;
SP_DEVINSTALL_PARAMS par;
SP_DRVINFO_DATA drvdata;
//
// Use the INF File to extract the Class GUID.
//
if (!SetupDiGetINFClass(szURL, &ClassGUID, ClassName,sizeof(ClassName),0))
{
return FALSE;
}

//
// Create the container for the to-be-created Device Information Element.
//
DeviceInfoSet = SetupDiCreateDeviceInfoList(&ClassGUID,0);
if(DeviceInfoSet == INVALID_HANDLE_VALUE)
{
return FALSE;
}

//
// Now create the element.
// Use the Class GUID and Name from the INF file.
//
DeviceInfoData.cbSize = sizeof(SP_DEVINFO_DATA);
if (!SetupDiCreateDeviceInfo(DeviceInfoSet,
ClassName,
&ClassGUID,
NULL,
0,
DICD_GENERATE_ID,
&DeviceInfoData))
{
goto cleanup_DeviceInfo;
}


if (!SetupDiRegisterDeviceInfo(DeviceInfoSet, &DeviceInfoData, 0, NULL, 0, NULL)){

goto cleanup_DeviceInfo;

}

par.cbSize = sizeof(par);
par.ClassInstallReserved = 0;
strcpy(par.DriverPath, szURL);
par.FileQueue = NULL;
par.Flags = DI_ENUMSINGLEINF|DI_COMPAT_FROM_CLASS | DI_QUIETINSTALL;
par.FlagsEx = 0;
par.hwndParent = NULL;
par.InstallMsgHandler = NULL;
par.InstallMsgHandlerContext = NULL;

if (!SetupDiSetDeviceInstallParams(DeviceInfoSet, &DeviceInfoData, &par)){

goto cleanup_DeviceInfo;

}

if (!SetupDiBuildDriverInfoList (DeviceInfoSet, &DeviceInfoData, SPDIT_CLASSDRIVER )){

goto cleanup_DeviceInfo;

}


drvdata.cbSize = sizeof(drvdata);
if(!SetupDiEnumDriverInfo(DeviceInfoSet, &DeviceInfoData, SPDIT_CLASSDRIVER ,
0, &drvdata)){

goto cleanup_DeviceInfo;

}

if(!SetupDiSetSelectedDriver (DeviceInfoSet, &DeviceInfoData, &drvdata)){

goto cleanup_DeviceInfo;

}

//
// Transform the registry element into an actual devnode
// in the PnP HW tree.
//
if (!SetupDiCallClassInstaller(DIF_INSTALLDEVICE,
DeviceInfoSet,
&DeviceInfoData))
{

goto cleanup_DeviceInfo;
}


//
// Cleanup.
//
cleanup_DeviceInfo:
err = GetLastError();
SetupDiDestroyDeviceInfoList(DeviceInfoSet);
SetLastError(err);

return TRUE;
}
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru