This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Hi,
We are working on MSP430F5659 based controller and using inbuilt USB for PC communication(UI). We are facing problem with signed driver when we integrate and install through UI application.
But if we select the device in Device Manager and search the driver and install no issues, Even Using .bat file run in admin mode also no issues.
Only if we integrate with UI application and then application dynamically executes .inf file. Once installation runs windows through warning " windows can't verify the publisher of this driver software"
as shown below
Please need help how to resolve this, we need solve this for our cyber security clearance. IF warning come like this cyber security clearance for the product is rejected. Our goal is one application for UI as well Driver installation.
I appreciate if some helps in resolving this warning issue.
Thanks in advance
Nitesh
Hi,
Some more details for the same issue, Please find the log file after installation
>>> [SetupCopyOEMInf - C:\USB_Signed_Drivers\msp430_ti_signed.inf] >>> Section start 2018/02/15 11:10:32.464 cmd: pnputil -i -a C:\USB_Signed_Drivers\msp430_ti_signed.inf sto: {Import Driver Package: C:\USB_Signed_Drivers\msp430_ti_signed.inf} 11:10:32.494 sto: Importing driver package into Driver Store: sto: Driver Store = C:\Windows\System32\DriverStore (Online | 6.1.7601) sto: Driver Package = C:\USB_Signed_Drivers\msp430_ti_signed.inf sto: Architecture = amd64 sto: Locale Name = neutral sto: Flags = 0x00000000 sto: Copying driver package files to 'C:\Users\innipad\AppData\Local\Temp\{70de157d-17d3-5ffb-fba9-9247add1b466}'. inf: Opened INF: 'C:\USB_Signed_Drivers\msp430_ti_signed.inf' ([strings]) inf: Opened INF: 'C:\Windows\System32\DriverStore\FileRepository\mdmcpq.inf_amd64_neutral_b53453733bd795bc\mdmcpq.inf' ([strings]) inf: Opened INF: 'C:\USB_Signed_Drivers\msp430_ti_signed.inf' ([strings]) flq: {FILE_QUEUE_COPY} flq: CopyStyle - 0x00000000 flq: SourceRootPath - 'C:\USB_Signed_Drivers' flq: SourceFilename - 'MSP430_CDC.cat' flq: TargetDirectory- 'C:\Users\innipad\AppData\Local\Temp\{70de157d-17d3-5ffb-fba9-9247add1b466}' flq: {FILE_QUEUE_COPY exit(0x00000000)} flq: {FILE_QUEUE_COPY} flq: CopyStyle - 0x00000000 flq: SourceRootPath - 'C:\USB_Signed_Drivers' flq: SourceFilename - 'msp430_ti_signed.inf' flq: TargetDirectory- 'C:\Users\innipad\AppData\Local\Temp\{70de157d-17d3-5ffb-fba9-9247add1b466}' flq: {FILE_QUEUE_COPY exit(0x00000000)} flq: {_commit_file_queue} flq: CommitQ DelNodes=0 RenNodes=0 CopyNodes=2 flq: {_commit_copy_subqueue} flq: subqueue count=2 flq: source media: flq: SourcePath - [C:\USB_Signed_Drivers] flq: SourceFile - [MSP430_CDC.cat] flq: Flags - 0x00000000 flq: {_commit_copyfile} flq: CopyFile: 'C:\USB_Signed_Drivers\MSP430_CDC.cat' flq: to: 'C:\Users\innipad\AppData\Local\Temp\{70de157d-17d3-5ffb-fba9-9247add1b466}\SETF569.tmp' flq: MoveFile: 'C:\Users\innipad\AppData\Local\Temp\{70de157d-17d3-5ffb-fba9-9247add1b466}\SETF569.tmp' flq: to: 'C:\Users\innipad\AppData\Local\Temp\{70de157d-17d3-5ffb-fba9-9247add1b466}\MSP430_CDC.cat' flq: {_commit_copyfile exit OK} flq: {_commit_copyfile} flq: CopyFile: 'C:\USB_Signed_Drivers\msp430_ti_signed.inf' flq: to: 'C:\Users\innipad\AppData\Local\Temp\{70de157d-17d3-5ffb-fba9-9247add1b466}\SETF579.tmp' flq: MoveFile: 'C:\Users\innipad\AppData\Local\Temp\{70de157d-17d3-5ffb-fba9-9247add1b466}\SETF579.tmp' flq: to: 'C:\Users\innipad\AppData\Local\Temp\{70de157d-17d3-5ffb-fba9-9247add1b466}\msp430_ti_signed.inf' flq: {_commit_copyfile exit OK} flq: {_commit_copy_subqueue exit OK} flq: {_commit_file_queue exit OK} pol: {Driver package policy check} 11:10:32.634 pol: {Driver package policy check - exit(0x00000000)} 11:10:32.634 sto: {Stage Driver Package: C:\Users\innipad\AppData\Local\Temp\{70de157d-17d3-5ffb-fba9-9247add1b466}\msp430_ti_signed.inf} 11:10:32.634 inf: Opened INF: 'C:\Users\innipad\AppData\Local\Temp\{70de157d-17d3-5ffb-fba9-9247add1b466}\msp430_ti_signed.inf' ([strings]) inf: Opened INF: 'C:\Windows\System32\DriverStore\FileRepository\mdmcpq.inf_amd64_neutral_b53453733bd795bc\mdmcpq.inf' ([strings]) inf: Opened INF: 'C:\Users\innipad\AppData\Local\Temp\{70de157d-17d3-5ffb-fba9-9247add1b466}\msp430_ti_signed.inf' ([strings]) sto: Copying driver package files: sto: Source Path = C:\Users\innipad\AppData\Local\Temp\{70de157d-17d3-5ffb-fba9-9247add1b466} sto: Destination Path = C:\Windows\System32\DriverStore\Temp\{16f6909e-3a4a-7c56-d666-2549d759aa7a} flq: {FILE_QUEUE_COPY} flq: CopyStyle - 0x00000010 flq: SourceRootPath - 'C:\Users\innipad\AppData\Local\Temp\{70de157d-17d3-5ffb-fba9-9247add1b466}' flq: SourceFilename - 'MSP430_CDC.cat' flq: TargetDirectory- 'C:\Windows\System32\DriverStore\Temp\{16f6909e-3a4a-7c56-d666-2549d759aa7a}' flq: {FILE_QUEUE_COPY exit(0x00000000)} flq: {FILE_QUEUE_COPY} flq: CopyStyle - 0x00000010 flq: SourceRootPath - 'C:\Users\innipad\AppData\Local\Temp\{70de157d-17d3-5ffb-fba9-9247add1b466}' flq: SourceFilename - 'msp430_ti_signed.inf' flq: TargetDirectory- 'C:\Windows\System32\DriverStore\Temp\{16f6909e-3a4a-7c56-d666-2549d759aa7a}' flq: {FILE_QUEUE_COPY exit(0x00000000)} flq: {_commit_file_queue} flq: CommitQ DelNodes=0 RenNodes=0 CopyNodes=2 flq: {_commit_copy_subqueue} flq: subqueue count=2 flq: source media: flq: SourcePath - [C:\Users\innipad\AppData\Local\Temp\{70de157d-17d3-5ffb-fba9-9247add1b466}] flq: SourceFile - [MSP430_CDC.cat] flq: Flags - 0x00000000 flq: {_commit_copyfile} flq: CopyFile: 'C:\Users\innipad\AppData\Local\Temp\{70de157d-17d3-5ffb-fba9-9247add1b466}\MSP430_CDC.cat' flq: to: 'C:\Windows\System32\DriverStore\Temp\{16f6909e-3a4a-7c56-d666-2549d759aa7a}\SETF5F5.tmp' flq: MoveFile: 'C:\Windows\System32\DriverStore\Temp\{16f6909e-3a4a-7c56-d666-2549d759aa7a}\SETF5F5.tmp' flq: to: 'C:\Windows\System32\DriverStore\Temp\{16f6909e-3a4a-7c56-d666-2549d759aa7a}\MSP430_CDC.cat' flq: {_commit_copyfile exit OK} flq: {_commit_copyfile} flq: CopyFile: 'C:\Users\innipad\AppData\Local\Temp\{70de157d-17d3-5ffb-fba9-9247add1b466}\msp430_ti_signed.inf' flq: to: 'C:\Windows\System32\DriverStore\Temp\{16f6909e-3a4a-7c56-d666-2549d759aa7a}\SETF606.tmp' flq: MoveFile: 'C:\Windows\System32\DriverStore\Temp\{16f6909e-3a4a-7c56-d666-2549d759aa7a}\SETF606.tmp' flq: to: 'C:\Windows\System32\DriverStore\Temp\{16f6909e-3a4a-7c56-d666-2549d759aa7a}\msp430_ti_signed.inf' flq: {_commit_copyfile exit OK} flq: {_commit_copy_subqueue exit OK} flq: {_commit_file_queue exit OK} sto: {DRIVERSTORE_IMPORT_NOTIFY_VALIDATE} 11:10:32.767 inf: Opened INF: 'C:\Windows\System32\DriverStore\Temp\{16f6909e-3a4a-7c56-d666-2549d759aa7a}\msp430_ti_signed.inf' ([strings]) sig: {_VERIFY_FILE_SIGNATURE} 11:10:32.787 sig: Key = msp430_ti_signed.inf sig: FilePath = C:\Windows\System32\DriverStore\Temp\{16f6909e-3a4a-7c56-d666-2549d759aa7a}\msp430_ti_signed.inf sig: Catalog = C:\Windows\System32\DriverStore\Temp\{16f6909e-3a4a-7c56-d666-2549d759aa7a}\MSP430_CDC.cat ! sig: Verifying file against specific (valid) catalog failed! (0x800b0109) ! sig: Error 0x800b0109: A certificate chain processed, but terminated in a root certificate which is not trusted by the trust provider. sig: {_VERIFY_FILE_SIGNATURE exit(0x800b0109)} 11:10:32.917 sig: {_VERIFY_FILE_SIGNATURE} 11:10:32.917 sig: Key = msp430_ti_signed.inf sig: FilePath = C:\Windows\System32\DriverStore\Temp\{16f6909e-3a4a-7c56-d666-2549d759aa7a}\msp430_ti_signed.inf sig: Catalog = C:\Windows\System32\DriverStore\Temp\{16f6909e-3a4a-7c56-d666-2549d759aa7a}\MSP430_CDC.cat sig: Success: File is signed in Authenticode(tm) catalog. sig: Error 0xe0000242: The publisher of an Authenticode(tm) signed catalog has not yet been established as trusted. sig: {_VERIFY_FILE_SIGNATURE exit(0xe0000242)} 11:10:33.037 ! sto: Driver package signer is unknown but user trusts the signer. sto: {DRIVERSTORE_IMPORT_NOTIFY_VALIDATE exit(0x00000000)} 11:10:35.257 sto: Verified driver package signature: sto: Digital Signer Score = 0xFF000000 sto: Digital Signer Name = <unknown> sto: {DRIVERSTORE_IMPORT_NOTIFY_BEGIN} 11:10:35.257 inf: Opened INF: 'C:\Windows\System32\DriverStore\Temp\{16f6909e-3a4a-7c56-d666-2549d759aa7a}\msp430_ti_signed.inf' ([strings]) sto: Create system restore point: sto: Description = Device Driver Package Install: Texas Instruments Ports (COM & LPT) sto: Time = 15ms sto: Status = 0x00000422 (FAILURE) sto: {DRIVERSTORE_IMPORT_NOTIFY_BEGIN: exit(0x00000000)} 11:10:35.277 sto: Importing driver package files: sto: Source Path = C:\Windows\System32\DriverStore\Temp\{16f6909e-3a4a-7c56-d666-2549d759aa7a} sto: Destination Path = C:\Windows\System32\DriverStore\FileRepository\msp430_ti_signed.inf_amd64_neutral_5c9a7f3a226b108c sto: {Copy Directory: C:\Windows\System32\DriverStore\Temp\{16f6909e-3a4a-7c56-d666-2549d759aa7a}} 11:10:35.287 sto: Target Path = C:\Windows\System32\DriverStore\FileRepository\msp430_ti_signed.inf_amd64_neutral_5c9a7f3a226b108c sto: {Copy Directory: exit(0x00000000)} 11:10:35.287 sto: {Index Driver Package: C:\Windows\System32\DriverStore\FileRepository\msp430_ti_signed.inf_amd64_neutral_5c9a7f3a226b108c\msp430_ti_signed.inf} 11:10:35.287 idb: Registered driver store entry 'msp430_ti_signed.inf_amd64_neutral_5c9a7f3a226b108c'. idb: Published 'msp430_ti_signed.inf_amd64_neutral_5c9a7f3a226b108c\msp430_ti_signed.inf' to 'C:\Windows\INF\oem143.inf' idb: Published driver store entry 'msp430_ti_signed.inf_amd64_neutral_5c9a7f3a226b108c'. sto: Published driver package INF 'oem143.inf' was changed. sto: Active published driver package is 'msp430_ti_signed.inf_amd64_neutral_5c9a7f3a226b108c'. sto: {Index Driver Package: exit(0x00000000)} 11:10:35.367 sto: {DRIVERSTORE_IMPORT_NOTIFY_END} 11:10:35.367 ndv: No system restore point was set earlier. sto: {DRIVERSTORE_IMPORT_NOTIFY_END: exit(0x00000000)} 11:10:35.367 sto: {Stage Driver Package: exit(0x00000000)} 11:10:35.377 ndv: Doing device matching lookup! inf: Opened INF: 'C:\Windows\System32\DriverStore\FileRepository\msp430_ti_signed.inf_amd64_neutral_5c9a7f3a226b108c\msp430_ti_signed.inf' ([strings]) inf: Saved PNF: 'C:\Windows\System32\DriverStore\FileRepository\msp430_ti_signed.inf_amd64_neutral_5c9a7f3a226b108c\msp430_ti_signed.PNF' (Language = 0409) sto: Driver package was staged to Driver Store. Time = 2933 ms sto: Imported driver package into Driver Store: sto: Filename = C:\Windows\System32\DriverStore\FileRepository\msp430_ti_signed.inf_amd64_neutral_5c9a7f3a226b108c\msp430_ti_signed.inf sto: Time = 3057 ms sto: {Import Driver Package: exit(0x00000000)} 11:10:35.557 inf: Opened INF: 'C:\USB_Signed_Drivers\msp430_ti_signed.inf' ([strings]) inf: Driver Store location: C:\Windows\System32\DriverStore\FileRepository\msp430_ti_signed.inf_amd64_neutral_5c9a7f3a226b108c\msp430_ti_signed.inf inf: Published Inf Path: C:\Windows\INF\oem143.inf inf: Opened INF: 'C:\USB_Signed_Drivers\msp430_ti_signed.inf' ([strings]) inf: Installing catalog MSP430_CDC.cat as: oem143.CAT <<< Section end 2018/02/15 11:10:35.607 <<< [Exit status: SUCCESS]
Check " Verifying file against specific (valid) catalog failed! (0x800b0109)" in attached mail, it seems cat file validation failed, Can we get correct Cat file for the USB signed driver.
Thanks in advance
Nitesh
Nitesh,
The Cat file that is delivered with the example is the correct .cat file. There is no other. I looked through your log and it looks like the 'moved' cat file is being verified against a 'specific' catalog file. Can you verify that it is being compared to the MSP430_CDC.cat file and not to something else like the SETF606.tmp file? Also I am not sure how the comparison is occurring since the .cat file is an executable file. I also noticed that the .inf and .cat files are first being copied to SETF606.tmp file and then moved over to their respective filenames. Can you verify that there are no extra spaces or lines inserted when this copy and move happens?
Regards,
Arthi
Hi Jace,
Sorry i was not well for a week, I will share the details by my next response i.e. EOD today.
Sorry for the inconvenience.
Nitesh
Hi Jace,
Sorry for delay in response, please find the application code for invoking driver installation.
We trigger USB driver installation through installer script, will use command line approach
Below are steps, also included installer script for your reference
Driver (Inf & cat files) are placed under the folder called ‘Driver’
While installation copy the driver and place in the program Files, open the command line through the script and trigger driver installation by referring the program file driver path.
Refer below installation script
public void DSADriverInstallation()
{
var DsaFolderPath = Path.GetPathRoot(Environment.SystemDirectory) + @"DsaPortDriver";
var DsaFilePath = DsaFolderPath + @"\msp430_ti_signed.inf";
var DsaINFSrcPath = path + @"\msp430_ti_signed.inf";
if (!Directory.Exists(DsaFolderPath))
{
Directory.CreateDirectory(DsaFolderPath);
File.Copy(DsaINFSrcPath, DsaFilePath, true);
//Copy(DsaINFSrcPath, DsaFilePath);
}
var process = new Process();
process.StartInfo.UseShellExecute = false;
process.StartInfo.CreateNoWindow = true;
process.StartInfo.RedirectStandardOutput = true;
process.StartInfo.RedirectStandardError = true;
process.StartInfo.FileName = "cmd.exe";
//string driverPath = @"D:\msp430_ti_signed.inf";
process.StartInfo.Arguments = "/c C:\\Windows\\System32\\InfDefaultInstall.exe " + DsaFilePath; // where driverPath is path of .inf file
process.Start();
process.WaitForExit();
process.Dispose();
if (Directory.Exists(DsaFolderPath))
{
Directory.Delete(DsaFolderPath, true);
}
}
Please let us know whether any thing better we can do for the installation
thanks in advance
Nitesh
Hi Nitesh,
I am thinking that permissions might be an issue here since you stated that you can install the .inf file through .bat script and manually.
Make sure that your UI application installs the .inf file as administrator. I don't see where admin rights are being set in your script. If that does not work then try setting the appropriate read/write/execute for the folders you are copying the .cat file to.
In fact in your script trying opening up the permissions for folders/files, etc... to see if you can install the .inf via the UI application.
Regards,
Arthi
**Attention** This is a public forum