Russian Qt Forum

Qt => Общие вопросы => Тема начата: unax от Ноябрь 20, 2009, 18:45



Название: Узнать имя и версию OS в которой приложение запущено
Отправлено: unax от Ноябрь 20, 2009, 18:45
Привет, товарищи.
Есть ли како-нибудь стандартный метод узнать в какой ОС запущена программа?
Пишу сервис, в принципе расчитываю, что он будет под nix-ами работать, можно тогда систему спросить стандартно - uname -a
Но вот под win тоже исходники когда-нибудь закомпилю.. и хотелось бы универсальный метод пользовать.. У QT полюбому такое должно быть, ибо чего там только нет. Может макрос какойто еще надо рисовать..
 ::) помогите советом


Название: Re: Узнать имя и версию OS в которой приложение запущено
Отправлено: pastor от Ноябрь 20, 2009, 18:55
Глянь класс QSysInfo + макросы Q_WS_MAC, Q_WS_WIN, Q_WS_X11, этц


Название: Re: Узнать имя и версию OS в которой приложение запущено
Отправлено: MoPDoBoPoT от Ноябрь 20, 2009, 18:56

Как определить из приложения систему (http://www.prog.org.ru/wiki/index.php?title=Frequently_Asked_Questions#.D0.9A.D0.B0.D0.BA_.D0.BE.D0.BF.D1.80.D0.B5.D0.B4.D0.B5.D0.BB.D0.B8.D1.82.D1.8C_.D0.B8.D0.B7_.D0.BF.D1.80.D0.B8.D0.BB.D0.BE.D0.B6.D0.B5.D0.BD.D0.B8.D1.8F_.D1.81.D0.B8.D1.81.D1.82.D0.B5.D0.BC.D1.83.3F_.28Windows.2FLinux.2F.2ABSD.2FMacOS_X.29)


Название: Re: Узнать имя и версию OS в которой приложение запущено
Отправлено: unax от Ноябрь 20, 2009, 20:11
Спасибо! Все понятно) Изящно скодил себе определялку  ;)


Название: Re: Узнать имя и версию OS в которой приложение запущено
Отправлено: shender от Ноябрь 24, 2009, 16:47
а как насчет Windows 7?


Название: Re: Узнать имя и версию OS в которой приложение запущено
Отправлено: spectre71 от Ноябрь 24, 2009, 16:56
а как насчет Windows 7?

А посмотреть самому слабо?
Ссылку "Как определить из приложения систему" дали.

В ассистанте открываем QSysInfo и смотрим!
или
Находим модуль с объявлением QSysInfo::WV_NT - "qglobal.h"
Находим enum содержащий например WV_NT и смотрим в нем какие есть еще значения!



Название: Re: Узнать имя и версию OS в которой приложение запущено
Отправлено: shender от Ноябрь 24, 2009, 17:40
Код:
 enum WinVersion {
        WV_32s      = 0x0001,
        WV_95       = 0x0002,
        WV_98       = 0x0003,
        WV_Me       = 0x0004,
        WV_DOS_based= 0x000f,

        /* codenames */
        WV_NT       = 0x0010,
        WV_2000     = 0x0020,
        WV_XP       = 0x0030,
        WV_2003     = 0x0040,
        WV_VISTA    = 0x0080,
        WV_NT_based = 0x00f0,

        /* version numbers */
        WV_4_0      = WV_NT,
        WV_5_0      = WV_2000,
        WV_5_1      = WV_XP,
        WV_5_2      = WV_2003,
        WV_6_0      = WV_VISTA,

        WV_CE       = 0x0100,
        WV_CENET    = 0x0200,
        WV_CE_5     = 0x0300,
        WV_CE_6     = 0x0400,
        WV_CE_based = 0x0f00
    };
может я что то не вижу???


Название: Re: Узнать имя и версию OS в которой приложение запущено
Отправлено: crackedmind от Ноябрь 24, 2009, 20:48
Жди релиза 4.6 :) Там будет поддержка 7ки


Название: Re: Узнать имя и версию OS в которой приложение запущено
Отправлено: spectre71 от Ноябрь 24, 2009, 21:28
Код:
 enum WinVersion
может я что то не вижу???

Да, поскольку у тебя старая версия!
У меня стоит 4.5.2. Поддержка Windows 7 вроде с нее пошла или чуть раньше.


Название: Re: Узнать имя и версию OS в которой приложение запущено
Отправлено: crackedmind от Ноябрь 25, 2009, 00:34
Ах да, ошибся маленько :) Действительно, базовая поддержка семерки уже в 4.5.1 появилась