Czy ktoś mógłby mi tutaj podać programistycznie instalowanie sterowników urządzeń innych firm, , jeśli dostępne są wszystkie wymagane pliki, tj. Plik inf, .sys itd. Minimalny system operacyjny dla tego rozwiązania, którego POWINIENEś PRACOWAĆ, to Windows 2000.Instalowanie sterownika programowo przy użyciu pliku INF C++
Próbowałem kopiowania pliku .inf
do folderu Win Folder \ INF i plik sys do folderu Win \ system32 \ drivers ale każdy korek czasową w urządzeniu, okna wyskakuje Znaleziono nowy interfejs użytkownika Hardware czyli co Próbuję unikać.
Poniżej jest coś, co próbowałem, ale funkcja zwraca error 87 (The parameter is incorrect)
.
HINF HInf;
UINT ErrorLine;
BOOL bRes = FALSE;
PBOOL FileWasInUse = FALSE;
LPCSTR szSourceFileName = _T("C:\\Drivers_HypercomP1320\\hypvcpusb.inf");
LPCSTR szInfFileName = _T("hypvcpusb.inf");
PVOID Context = NULL;
HInf = SetupOpenInfFile (szSourceFileName, NULL, INF_STYLE_WIN4, &ErrorLine);
LPCSTR SourceFile = ("hypvcp.sys");
LPCSTR SourcePathRoot = _T("C:\\Drivers_HypercomP1320");
LPCSTR DestinationName = _T("C:\\WINDOWS\\system32\\drivers\\hypvcp.sys");
bRes = SetupInstallFileEx (HInf, NULL, SourceFile, SourcePathRoot, DestinationName, SP_COPY_FORCE_IN_USE,
(PSP_FILE_CALLBACK)CopyMsgHandler, Context, FileWasInUse);
DWORD dwVal = GetLastError();
SetupCloseInfFile(HInf);
// Callback function
UINT CopyMsgHandler (UINT Context, UINT Notification,UINT_PTR Param1, UINT_PTR Param2)
{
UINT rtnValue = NO_ERROR;
return rtnValue;
}
Dzięki.
prawym przyciskiem myszy na pliku inf, a następnie kliknij przycisk Zainstaluj. – Aristos
@Aristos: Możesz nawet użyć robota Java, aby to zrobić :-) –
Dziękuję za odpowiedź, ale instalacja sterowników jest programowa w C, C++. – newdev1