2017-02-07 106 views
0

Im пытается сделать очень простой код для обнаружения архитектуры ноутбука. Ниже приведен код. Мой ноутбук 64 бит, но он также отобразит 32-битное окно сообщения. Есть ли что-нибудь еще, что не хватает для кода?Чтобы обнаружить системную архитектуру

#Load assembly 
add-type -assemblyname system.windows.forms 

#Assign messagebox to variable 
$message1 = [System.Windows.Forms.MessageBox]::Show("This is a 64 bit  version" , "Status") 
$message2 = [System.Windows.Forms.MessageBox]::Show("This is a 32 bit version" , "Status") 

#Display message based on the architecture 
if ([System.Environment]::Is64BitProcess) { 
echo $message1 
} else { 
echo $message2 
} 

ответ

1

ваши окна сообщений работают в то время самой декларации переменной, вы можете подтвердить это, запустив $x = [System.Windows.Forms.MessageBox]::Show("This is a 64 bit version" , "Status") заявление only.show метод показывает окно сообщения и сохраняет ответ сообщения («КИ» в данном случае) в переменной, попробуйте следующее:

#Load assembly 
add-type -assemblyname system.windows.forms 


#Display message based on the architecture 
if ([System.Environment]::Is64BitProcess) { 
[System.Windows.Forms.MessageBox]::Show("This is a 64 bit  version" , "Status") 
} else { 
[System.Windows.Forms.MessageBox]::Show("This is a 32 bit version" , "Status") 
} 

 Смежные вопросы

  • Нет связанных вопросов^_^