LAVA: Forums

Full Version: "The system cannot find the path specified" (Windows 8.1 64 bit)
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Quick background: I'm setting up a new Windows 8.1 (64 bit) system for a client who has an old HP LaserJet 4 that's still doing excellent work. The new computer doesn't have a parallel port, so I purchased Lava single Parallel port PCIe card. I've confirmed the card works by getting it to run on a different computer under Linux:

Code:
[root@testing ~] modprobe parport_pc io=0xcc00 irq=10
[root@testing ~] modprobe lp
[root@testing ~] dmesg | tail
parport0: PC-style at 0xcc00, irq 10 [PCSPP,EPP]
parport0: Printer, Brother HL-1250 series
lp0: using parport0 (interrupt-driven).

When I attempt to install the card on the Windows 8.1 computer, the Device Manager finds the card and says it needs drivers. I start a manual setup process and point it to the root of the directory where I've extracted the Lava_2014_07_15.zip file. Windows the says "The system cannot find the path specified."

The card's properties match the following description in PCIePorts_CC.inf:
  %PCIe.ParallelPort%=LptCard,PCI\VEN_1407&DEV_A000&SUBSYS_2000A000&REV_00

That INF file contains references to StnPPort.sys and PCIePorts.dll. A search of the file system turned up the PCIePorts.dll, which appears to be a Microsoft file because its Properties tab incluides a Microsoft copyright statement. The StnPPort.sys file is not found on the system.

Following a tip from a web search, I tired staging the driver:

Code:
cd C:\Users\<username>\Downloads\Lava Computer Mfg\Windows
pnputil.exe -a PCIePorts_CC.inf

I got a message the copy/installation was successful, but another attempt to install the driver failed.

I also tried the following, based on another web search:

Code:
pnputil.exe -i -a PCIePorts_CC.inf

Processing inf :            PCIePorts_CC.inf
Failed to install the driver on any of the devices on the system : No more data is available.

Total attempted:              1  
Number successfully imported: 0

Ideally I'd like to be able to install the device driver by following the proper Windows procedure. However, if all the installation does is copy a couple of files and update the registry, I suspect I could get the card going by knowing where to copy the StnPPort.sys file and importing the appropriate registry entries.

Any insights and assistance you can provide would be greatly appreciated, and I'd have a happy customer.

Regards,
Brad
Hi Brad,

Sorry about the delay.  I've honestly never had someone reach out to me about an issue like this, especially since the driver have been signed and certified by Microsoft.

Have you attempted to obtain the driver for the card via Windows Update? Baring that have you attempted to perform a full uninstall of the card and reinstall of the card.  Occasionally Windows may have a hiccup with installation and some files are only partially copied over.  I'm not sure what the exact uninstall process is in Windows 8, but it generally hasn't changed too much since XP (Driver Uninstallation for Windows 2000/XP).

- Lava Support
Thanks for the response and the link to the instructions to uninstall the driver. I see this particular client for two hours a week every Monday, so I'll give the instructions a try the next time I see them.

I did try to obtain the driver using Windows Update (it was the first thing I did), but it failed with the same error. I've been trying other things since, and started this thread when nothing worked.

The window to return the card to the store for a refund has closed, so it's important to get it working in the new system. If I can't they'll be out the money they paid for the card.
I'm happy to say I now have the driver installed.

I performed the driver uninstallation procedure linked to upthread, but that didn't resolve the issue. Following a tip I found on Stack Overflow [1], I downloaded the Windows Driver Package Installer [2]. I used a command similar to the following to install it (command is broken into two lines for readability):

Code:
cmd> "C:\Program Files (x86)\Windows Kits\8.1\redist\DIFx\dpinst\EngMui\x64\dpinst.exe"
/PATH "C:\Users\dkb\Downloads\Lava Computer Mfg\Windows" /SH /C

And ... I got an error!

Code:
INFO:   ENTER:  DriverPackageInstallW
INFO:   Looking for Model Section [PCIePorts.NTamd64]...
INFO:   Installing INF file 'c:\users\dkb\downloads\lava computer mfg\windows\pcieports_cc.inf' (Plug and Play).
INFO:   Could not open file:
    C:\Windows\System32\DriverStore\FileRepository\pcieports_cc.inf_amd64_58b1b0f23cd7da12\pcieports_cc.inf.
    (Error code 0x3: The system cannot find the path specified.)
ERROR:  PnP Install failed. (Error code 0x3EE: The volume for a file has been externally altered so that
    the opened file is no longer valid.)

I saw this as progress. I attempted to uninstall the driver using the /U switch:

Code:
cmd> "C:\Program Files (x86)\Windows Kits\8.1\redist\DIFx\dpinst\EngMui\x64\dpinst.exe"
/U "C:\Users\dkb\Downloads\Lava Computer Mfg\Windows\PCIePorts_CC.inf" /C

I got the same error as above.

I next ran the "pnputil" command I described in my opening post, but this time ran it in the same cmd.exe that I was using for the previous commands. That meant this time around I was actually running as Administrator instead of as a user:

Code:
cmd> pnputil.exe -i -a PCIePorts_CC.inf
Microsoft PnP Utility

Processing inf :            PCIePorts_CC.inf
Successfully installed the driver on a device on the system.
Driver package added successfully.
Published name :            oem11.inf

Total attempted:              1
Number successfully imported: 1

cmd>

Much better. Now that I knew I had the files on the system, I ran the command line installation again. Note: I think running the command-line program was probably not required; I suspect things would have worked if I had followed the procedure typically used for installing a device driver from the Device Manager:

Code:
cmd> "C:\Program Files (x86)\Windows Kits\8.1\redist\DIFx\dpinst\EngMui\x64\dpinst.exe" \
/PATH "C:\Users\dkb\Downloads\Lava Computer Mfg\Windows" /SH /C /F

(many lines snipped)

INFO:   ENTER:  DriverPackageInstallW
INFO:   Looking for Model Section [PCIePorts.NTamd64]...
INFO:   Installing INF file 'c:\users\dkb\downloads\lava computer mfg\windows\pcieports_cc.inf' (Plug and Play).
INFO:   Looking for Model Section [PCIePorts.NTamd64]...
INFO:   Installing devices with Id "PCI\VEN_1407&DEV_A000&SUBSYS_2000A000&REV_00" using INF
    "C:\Windows\System32\DriverStore\FileRepository\pcieports_cc.inf_amd64_58b1b0f23cd7da12\pcieports_cc.inf".
INFO:   Will force install because driver is not better and force flag is set.
INFO:   ENTER UpdateDriverForPlugAndPlayDevices...
SUCCESS:RETURN UpdateDriverForPlugAndPlayDevices.
INFO:   Installation was successful.
SUCCESS:Install completed
INFO:   RETURN: DriverPackageInstallW  (0x0)

And now the device manager shows a Lava Parallel Port on the system.

References:
[1] Install device driver inf via command line (stackoverflow.com)
[2] How to get the WDK (Windows Driver Kit) microsoft.com