windows-installer - que - usb inf windows 10
¿Cómo implemento un controlador basado en.inf? (2)
Empezaría leyendo sobre SetupAPI y DIFx . El Kit de controladores de Windows incluye samples de ambos, incluido un módulo de combinación basado en DIFx y una biblioteca WiX basada en DIFx. La fuente de la utilidad devcon línea de comandos, que se basa en SetupAPI, también se incluye en los ejemplos de WDK.
Me gustaría implementar un controlador USB basado en .inf con mi instalador.
Supongo que .inf debe colocarse en %SystemRoot%/inf
, pero también hay un .cat (certificación WHQL, supongo?), Y archivos .sys. ¿Qué hago con esos?
EDIT: resuelto, gracias a las respuestas útiles. Pude P / Invocar la función, así que tengo una acción posterior a la instalación que ejecuta el siguiente código:
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.");
}
}
}
Puedes intentar pedirle al shell que lo instale:
%SystemRoot%/System32/rundll32.exe setupapi,InstallHinfSection DefaultInstall 132 YOUR_FILE.inf
Pero estoy 100% seguro de que hay una mejor manera ...