Deuxchevaux
11th June 2009 22:51 UTC
Driver install with DPInst: difference between amd64 and ia64?
Hi all,
I'm developing a program for which I need to install an USB Driver. I use DPInst using ExecWait to install the driver. The manufacturer provides a package with 3 driver types: x86, amd64 and ia64. DPInst also comes in these flavors as 3 seperate executables (from the Windows DDK, Driver Development Kit).
What is the difference between amd64 and ia64 and how can I distuinguish these versions from NSIS?
I saw the x64.nsh in the NSIS dir, but I do not see how I can use the functions to get the difference between amd64 and ia64.
Thanks for any help,
Rogier
Animaether
11th June 2009 23:54 UTC
http://forums.winamp.com/showthread....highlight=ia64
Unless you've been asked to support Itaniums, though, I'd say ignore ia64. amd64 is what pretty much everybody uses now - Intel, I'm guessing, calls it something other than 'amd64' ('x86-64', I guess), but the architecture is the same. Itanium is a completely different - and near-dead - beast pretty much only used in some server settings, still.
Zinthose
12th June 2009 00:30 UTC
You need to use a windows api call to get the information...
OutFile "NSIS Test.exe"
>ShowInstDetails show
Section-Main
System
::Alloc 32
Pop$0
System::Call "Kernel32::GetNativeSystemInfo(i) v (r0)"
System::Call "*$0(&i2 .r1)"
System::Free $0
StrCmp$1 9 0 +2
DetailPrint PROCESSOR_ARCHITECTURE_AMD64
StrCmp$1 6 0 +2
DetailPrint PROCESSOR_ARCHITECTURE_IA64
StrCmp$1 0 0 +2
DetailPrint PROCESSOR_ARCHITECTURE_INTEL
StrCmp$1 0xffff 0 +2
DetailPrint PROCESSOR_ARCHITECTURE_UNKNOWN
SectionEnd
>
Deuxchevaux
12th June 2009 10:10 UTC
Hi guys,
thanx for the help. Our product is geared towards the consumer market, so Itanium will be a very, very rare occasion.
I've now built in x64 detection using x64.nsh and call the appropiate DPInst version from that.
I just didn't know what ia64 exactly meant.
Thanks!
Rogier