Prev: WDK 7.1 Mirror driver, INF file fail on windows 7 64bits
Next: Develop driver 32/64 bit (IA & AMD64) for XP, Vista & Seven fo
From: Moulefrite on 1 Sep 2010 11:54 Hi all, I have a project where it's necessary to "upgrade" sourceCode of smartcardReader driver for pass WHQL certification. This driver works fine in XP 32 bits. Someone can explain me differents steps for finish this project. For the moment : _ I have updated the .inf file for execute "AMD64" routine. _ Recomplied the sourceCode and installed to XP x64 bit, and driver seems to be work. Someone could confirm me that for compile a driver 64 bit Vista Seven, it's necessary to build it with "WDK 7600 >> build environnement >> Windows Server 2003" and select "X64 Free or Checked" for generate "wnet64" directory ? If I use a computer with Intel processor, I can compile the driver with X64 ? or necessarily with IA64 ? I have an other problem, I have compiled a "wnet64" drivers that work with XP 64bit, but when I try to install it to Vista I have an error code 39 and the same error status with seven (value 52) Even if I remove the integrity verification signature drivers, result is the same. Some one have an idea ? I have read MSDN but I don't know if this driver need some rewrite for work with Vista, Seven OS or just need a particular compilation. For exemple this link found in other thread : http://msdn.microsoft.com/en-us/library/ff545635%28v=VS.85%29.aspx Someone can explain me the different part to rewrite ( ioDeviceControl ? , inOutBuffer from IRP ?) Interest to use this macro : ULongToHandle(ul) ? Thanks a lot by advance (^_^) ps : Sorry for my poor level in english.
From: Don Burn on 1 Sep 2010 12:16 Yes if you are going for WHQL you should use the latest WDK. Your build environment is correct by using the oldest 64-bit OS you will support all of them. I suspect your install problem is that 64-bit drivers must have a digital signature to load. Try having Windbg connected and boot choosing the F8 option to ignore signatures and see if that allows the driver to load. If you are not doing stupid things like passing 32-bit pointers in IOCTL data you should not need to modify your driver for 64-bit. You may need to in order to pass WHQL. Don Burn (MVP, Windows DKD) Windows Filesystem and Driver Consulting Website: http://www.windrvr.com Blog: http://msmvps.com/blogs/WinDrvr "Moulefrite" <Moulefrite(a)discussions.microsoft.com> wrote in message news:E6180A95-8A30-4F1D-8EE0-05E24B764A01(a)microsoft.com: > Hi all, > I have a project where it's necessary to "upgrade" sourceCode of > smartcardReader driver for pass WHQL certification. > This driver works fine in XP 32 bits. > Someone can explain me differents steps for finish this project. > For the moment : > _ I have updated the .inf file for execute "AMD64" routine. > _ Recomplied the sourceCode and installed to XP x64 bit, and driver seems to > be work. > > Someone could confirm me that for compile a driver 64 bit Vista Seven, it's > necessary to build it with "WDK 7600 >> build environnement >> Windows Server > 2003" and select "X64 Free or Checked" for generate "wnet64" directory ? > > If I use a computer with Intel processor, I can compile the driver with X64 > ? or necessarily with IA64 ? > > I have an other problem, I have compiled a "wnet64" drivers that work with > XP 64bit, but when I try to install it to Vista I have an error code 39 and > the same error status with seven (value 52) > Even if I remove the integrity verification signature drivers, result is the > same. > Some one have an idea ? > > I have read MSDN but I don't know if this driver need some rewrite for work > with Vista, Seven OS or just need a particular compilation. > For exemple this link found in other thread : > http://msdn.microsoft.com/en-us/library/ff545635%28v=VS.85%29.aspx > Someone can explain me the different part to rewrite ( ioDeviceControl ? , > inOutBuffer from IRP ?) > Interest to use this macro : ULongToHandle(ul) ? > > Thanks a lot by advance (^_^) > > ps : Sorry for my poor level in english.
From: Maxim S. Shatskih on 1 Sep 2010 18:09
> Someone could confirm me that for compile a driver 64 bit Vista Seven, it's > necessary to build it with "WDK 7600 >> build environnement >> Windows Server > 2003" and select "X64 Free or Checked" for generate "wnet64" directory ? I don't know the smartcard drivers in particular, but usually old driver binary (if it is not using some hard undocumented things like EPROCESS structure offsets) just plain work being installed on a new OS. The major exception are technology changes. For instance, NDIS5 driver will work badly on Vista+, and TDI filters will not filter half of the traffic (with Vista+, not all TCP/IP capable software are TDI clients). So are XPDM -> WDDM. I don't know whether there was some major technology changes in smartcard stack in Vista+. > If I use a computer with Intel processor, I can compile the driver with X64 > ? or necessarily with IA64 ? IA64 is Itanium. The usual 64-bit machine is x64. > XP 64bit, but when I try to install it to Vista I have an error code 39 and > the same error status with seven (value 52) Signature issue? try on 32bit Vista. -- Maxim S. Shatskih Windows DDK MVP maxim(a)storagecraft.com http://www.storagecraft.com |