Je souhaite déployer un pilote USB basé sur .inf avec mon programme d'installation.Comment déployer un pilote basé sur .inf?
Je suppose que le .inf doit être placé dans %SystemRoot%\inf
, mais il y a aussi un .cat (certification WHQL je suppose?), Et les fichiers .sys. Qu'est-ce que je fais avec ceux-là?
EDIT: Résolu, grâce aux réponses utiles. j'ai pu P/Invoke la fonction, donc j'ai une action post-installation qui exécute le code suivant:
namespace DriverPackageInstallAction
{
static class Program
{
[DllImport("DIFXApi.dll", CharSet = CharSet.Unicode)]
public static extern Int32 DriverPackagePreinstall(string DriverPackageInfPath, Int32 Flags);
/// <summary>
/// The main entry point for the application.
/// </summary>
[STAThread]
static void Main()
{
DirectoryInfo assemblyDir = new DirectoryInfo(Application.ExecutablePath);
DirectoryInfo installDir = assemblyDir.Parent;
int result = DriverPackagePreinstall(installDir.FullName + @"\Driver\XYZ.inf", 0);
if (result != 0)
MessageBox.Show("Driver installation failed.");
}
}
}
liens corrects: http://msdn.microsoft.com/fr-fr/ library/ff550855.aspx et http://msdn.microsoft.com/en-us/library/ff544838.aspx –
@ Dercsár: merci, je vais mettre à jour tous les 4 liens pour pointer vers les nouveaux emplacements. – bk1e