cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
johnj
Engaged Sweeper II
Can I determine what whether a particular machine is running the 32 or 64-bit version of a program, in particular Microsoft Office?

Or can I determine how many installations we have of a particular software broken out by 32 and 64-bit?

Happy New Year,
- john
7 REPLIES 7
Mikey_
Engaged Sweeper III
Has this been added yet? Last message was about a year ago. It would be great to differentiate x32 and x64 bit office installs when you are trying to convert any x32 bit installs to x64 bit...

Thanks!

Mike
grimstar
Champion Sweeper II
Mikey! wrote:
Has this been added yet? Last message was about a year ago. It would be great to differentiate x32 and x64 bit office installs when you are trying to convert any x32 bit installs to x64 bit...

Thanks!

Mike


Not sure if this has been added, however registry values exist to provide the 'bitness' of an install in order to do so on your end if necessary. You could create a registry scan entry to look for these particular values. Perhaps even run a script in your environment if you have multiple versions of office and are looking to sort on one field. I did this very quickly as an example. I do not have the actual registry keys, nor did I test it, but I would think something like this would work.

#Variables
#First two are for creation of future registry key. The rest should be appropriate key value locations you need to query.
$officeVersion = notScanned
$pathToWriteTo = "hklm:\whatever\you\want\to\query\later\on"
$office2010x86 = test-path "hklm:whatever\the\local\of\the\value\is"
$office2010x64 = test-path "hklm:whatever\the\local\of\the\value\is"
$office2013x86 = test-path "hklm:whatever\the\local\of\the\value\is"
$office2013x64 = test-path "hklm:whatever\the\local\of\the\value\is"
$office2016x86 = test-path "hklm:whatever\the\local\of\the\value\is"
$office2016x64 = test-path "hklm:whatever\the\local\of\the\value\is"

#Go through each. I only did the first three. Off the top of my head I'd say in reverse order so that if you have upgraded over time and multiple keys exist that it just pulls
#the most recent key and then stops

If ( $office2016x64 -eq $True ) {
$officeVersion = "Office 2016 x64"
New-Item -Path $pathToWriteTo -Name OfficeVersion -Value $officeVersion
} ElseIf ( $office2016x86 -eq $True ) {
$officeVersion = "Office 2016 x86"
New-Item -Path $pathToWriteTo -Name OfficeVersion -Value $officeVersion
} ElseIf ( $office2013x64 -eq $True ) {
$officeVersion = "Office 2013 x64"
New-Item -Path $pathToWriteTo -Name OfficeVersion -Value $officeVersion
} Else {
exit
}

You then scan for the value of $pathToWriteTo\$OfficeVersion within Lansweeper (the real name, not the variables) and you'll have an output that you can query in a report.

EDIT: Fixed some grammatical stuff that was driving me crazy.
Esben_D
Lansweeper Employee
Lansweeper Employee
At the moment is the only way. I'm aware its not the best option 😉
Argon0
Champion Sweeper
Is that really the BEST(only) way to do this?
gkeys
Engaged Sweeper II
Actually, If you go to the Scanning tab, File and Registry scanning, and make one file entry:


%programfiles%\Microsoft Office\root\Office16\EXCEL.EXE

After the next scan is done, this will give you a list of all computers with excel installed and will indicate if it is installed in "Program Files" or "Program files (x86)"
Sort the report by FilePathFull and you will have your answer
johnj
Engaged Sweeper II
Thanks for the response and options Charles.

Cheers,
- john
Esben_D
Lansweeper Employee
Lansweeper Employee
Unfortunately it is not yet possible to scan if software is 32 or 64-bit software. I did however add your topic to the existing feature request for scanning if software is 32 or 64-bit.

For specific software you might be able to filter by name since some software will have the bit version in the name. E.G. Microsoft Visual Studio 2010 Tools for Office Runtime (x64)

You can create a condition similar to:
Where tblSoftwareUni.softwareName Like '%Microsoft%x64%'