FIX: PortIO.exe Fixes GENPORT.C: PortAddress Not Initialized

ID: Q126285


The information in this article applies to:
  • Microsoft Win32 Device Driver Kit (DDK) for Windows NT, version 3.5


SYMPTOMS

PortIO.exe is a sample for a generic port I/O driver. The sample driver GenPort.sys, which is part of the PORTIO sample, is found on the Windows NT DDK CD in \Q_A\Samples\DDK\PortIO. There is a problem with this version of the sample in that it does not claim the correct I/O ports during the call to IoReportResourceUsage. The version of PortIO.exe available for download from the Microsoft Software Library corrects this problem.


CAUSE

The variable PortAddress is not initialized.


RESOLUTION

Do one of the following to resolve this problem:

  • Download the corrected version of PortIO.exe from the Microsoft Software Library (see the MORE INFORMATION section of this article).


  • Fix the file yourself by adding two lines to DriverEntry as follows: Change this:
    
                      PortBase = DefaultBase;
                      PortCount = DefaultCount;
                  }
                  ExFreePool(paramPath.Buffer);
              }
          }
    
          // Register resource usage (ports)
          // 
          // This ensures that there isn't a conflict between this driver and
          // a previously loaded one or a future loaded one. 

    to this:
    
                      PortBase = DefaultBase;
                      PortCount = DefaultCount;
                  }
                  ExFreePool(paramPath.Buffer);
              }
          }
    
          PortAddress.LowPart  = PortBase;
          PortAddress.HighPart = 0;
    
          // Register resource usage (ports).
          // 
          // This ensures that there is not a conflict between this driver and
          // a previously loaded driver or a driver that is loaded in the
          // future. 




STATUS

The PORTIO sample is corrected in the July 1995 MSDN.


MORE INFORMATION

The following file is available for download from the Microsoft Software Library:

~ PortIO.exe

For more information about downloading files from the Microsoft Software Library, please see the following article in the Microsoft Knowledge Base:

Q119591 How to Obtain Microsoft Support Files from Online Services

Keywords : kbfile kbsample kbDDK kbKMode kbNTOS351fix
Version :
Platform :
Issue type : kbbug


Last Reviewed: March 2, 1999
© 2000 Microsoft Corporation. All rights reserved. Terms of Use.