Работая над проектом и потребностью быть в состоянии определить, является ли O/S Windows 7, Vista или дефолтом к XP. Я понимаю, что мог столкнуться с Win2K и более ранними версиями, но позвольте нам просто сказать, что это не беспокойство, поскольку другой кодекс поймает это, прежде чем это доберется до этого пункта. Мое заявление будет в C ++ в настоящее время использующий VS2005. Я нашел статьи и пример кода одинаково, но они кажутся путем, раздутым для моего использования. Просто ища быстрое и грязное возвращение.
http://msdn.microsoft.com/en-us/library/ms724358%28VS.85%29.aspx
Список версии Windows , используя getVersionex
:
Version Number Description
6.1 Windows 7 / Windows 2008 R2
6.0 Windows Vista / Windows 2008
5.2 Windows 2003
5.1 Windows XP
5.0 Windows 2000
Это поведение можно получить, используя правильную конфигурацию при создании экземпляра объекта Ext.form.ComboBox:
var selectStyleComboboxConfig = {
fieldLabel: 'My Dropdown',
name: 'type',
allowBlank: false,
editable: false,
// This is the option required for "select"-style behaviour
triggerAction: 'all',
typeAhead: false,
mode: 'local',
width: 120,
listWidth: 120,
hiddenName: 'my_dropdown',
store: [
['val1', 'First Value'],
['val2', 'Second Value']
],
readOnly: true
};
var comboBox = new Ext.form.ComboBox(selectStyleComboboxConfig);
Замените режим : «local»
и store
в вашем случае, если вы хотите, чтобы он был связан, например, с Ext.data.JsonStore
.
Вы пытались typeAhead = false
? Не слишком уверен, что это близко к тому, что ты хочешь.
var combo = new Ext.form.ComboBox({
typeAhead: false,
...
});
-121--2140010- Как правило, вы не хотите проводить тестирование по определенному номеру версии, а скорее проверяете наличие определенной функции. Если вы действительно хотите обнаружить «Windows 7 или более позднюю версию», однако...
#include <windows.h>
bool IsWin7OrLater() {
DWORD version = GetVersion();
DWORD major = (DWORD) (LOBYTE(LOWORD(version)));
DWORD minor = (DWORD) (HIBYTE(LOWORD(version)));
return (major > 6) || ((major == 6) && (minor >= 1));
}
Для 2000 сравните основные и второстепенные соответственно с 5 и 0. Для XP сравните с 5 и 1. Для Vista - 6 и 0.
Как правило, вы можете использовать getVersionex
, чтобы найти версию Windows. Возможно, более безопасный способ использовать VerifyVersionInfo
. Существуют C примеры для обоих getVersionex
и verifyversioninfo
.
Однако, как неоднократно указано на MSDN , проверка версии операционной системы, как правило, не лучший способ определения того, присутствует конкретная функция .