Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 |

 

  Вопрос: Помогите с оператором Environ! Добавлено: 30.10.07 10:10  

Автор вопроса:  werber | Web-сайт: www.werbersoft.ru
Кто умеет разбираться в операторе Environ, напишите описание возвращаемых строк опрератора Environ ("OS").

А то он мне какую- то хрень выдаёт, ничего не понятно.

Ответить

  Ответы Всего ответов: 13  

Номер ответа: 1
Автор ответа:
 Pashenko



ICQ: 176176951 

Вопросов: 14
Ответов: 655
 Профиль | | #1 Добавлено: 30.10.07 10:14
В командной строке набери "set", там всё будет.

Ответить

Номер ответа: 2
Автор ответа:
 Алексей



black  admin

ICQ: 261779681 

Вопросов: 87
Ответов: 633
 Web-сайт: aleksey.nemiro.ru
 Профиль | | #2
Добавлено: 30.10.07 10:21
http://kbyte.ru/Refbooks/Show.aspx?id=52&lang=ru

Ответить

Номер ответа: 3
Автор ответа:
 werber



Вопросов: 71
Ответов: 112
 Web-сайт: www.werbersoft.ru
 Профиль | | #3
Добавлено: 30.10.07 10:26
А поканкретнее можно. Первые два ответа не помогли.
А второй ответ ссылается на ссылку с общим определением оператора Environ. Люди, мне нужно описание возвращемых значений оператора Environ ("OS";) (ИМЕННО OS!!!)

Ответить

Номер ответа: 4
Автор ответа:
 Pashenko



ICQ: 176176951 

Вопросов: 14
Ответов: 655
 Профиль | | #4 Добавлено: 30.10.07 10:29
Ну, погоняй на разных операционках и увидишь, что возвращает.

Ответить

Номер ответа: 5
Автор ответа:
 AndreyMp



ICQ: 237822510 

Вопросов: 28
Ответов: 1182
 Профиль | | #5 Добавлено: 30.10.07 10:45
Люди, мне нужно описание возвращемых значений оператора Environ ("OS";) (ИМЕННО OS!!!)
А что он тебе еще может выдать кроме платформы? На Windows 2000/XP/2003 он естественно тебе выдаст - Windows_NT.

Ответить

Номер ответа: 6
Автор ответа:
 werber



Вопросов: 71
Ответов: 112
 Web-сайт: www.werbersoft.ru
 Профиль | | #6
Добавлено: 30.10.07 11:00
У меня стоит только WinXP, других операционок нет. Поэтому и прошу указать описание возвращаемых строк, кроме Win_NT.

Ответить

Номер ответа: 7
Автор ответа:
 Yanex



ICQ: 387761649 

Вопросов: 32
Ответов: 169
 Web-сайт: Progr.Do.am
 Профиль | | #7
Добавлено: 30.10.07 12:17
Если стоит Windows NT, 2000, XP, 2003 Server, Vista, то он естественно выдаст Windows_NT, так как все они от NT и образованы.

95, 98, Me от него не образованы, поэтому надписи Windows_NT получить не удастся. А что он там выдаст в конкретном случае - все равно. Поэтому можно использовать следующий код:

Public Function IsNT As Boolean
  IsNT = Environ("OS";) = "Windows_NT"
End Function


Но использовать эту штуку крайне не рекомендую. Любой любопытный пользователь может изменить строку на все что угодно (например, даже "Linux Pirat Edition" =)), поэтому лучше юзать другие способы определения (на сайтах по программированию их - кучи).

Ответить

Номер ответа: 8
Автор ответа:
 



Администратор

ICQ: 278109632 

Вопросов: 42
Ответов: 3949
 Web-сайт: domkratt.com
 Профиль | | #8
Добавлено: 30.10.07 14:58
GetVersionEx рулит...

Ответить

Номер ответа: 9
Автор ответа:
 Mr.Smile



ICQ: 427682013 

Вопросов: 14
Ответов: 464
 Профиль | | #9 Добавлено: 02.11.07 16:07
GetVersionEx рулит...
А Режим Совместимости в свойствах EXE-файла или сссылки на него не обойдёт эту хрень?

Ответить

Номер ответа: 10
Автор ответа:
 



Администратор

ICQ: 278109632 

Вопросов: 42
Ответов: 3949
 Web-сайт: domkratt.com
 Профиль | | #10
Добавлено: 02.11.07 19:02
Ой, не пробовал... Ну если надо определить NT или 9x, то можно попробовать загрузить ntdll. Если грузится - NT.
ret=LoadLibrary("ntdll.dll";)
If ret < 1 Then OS = Win9x

Ответить

Номер ответа: 11
Автор ответа:
 Mr.Smile



ICQ: 427682013 

Вопросов: 14
Ответов: 464
 Профиль | | #11 Добавлено: 02.11.07 23:34
Если грузится - NT.
Вернее, если есть в системе - грузится. А NT не обязательно...

Ответить

Номер ответа: 12
Автор ответа:
 werber



Вопросов: 71
Ответов: 112
 Web-сайт: www.werbersoft.ru
 Профиль | | #12
Добавлено: 07.11.07 17:31
Короче, как я понимаю появляется следующий способ: нужно найти тот определённый файл, который обязательно должен быть в опредёлённой Винде, так?

Что-ж, тогда скажите пожалуйста, какие определённые файлы есть в определённых Виндах? Если я, конечно, правильно вас понял.

Ответить

Номер ответа: 13
Автор ответа:
 



Администратор

ICQ: 278109632 

Вопросов: 42
Ответов: 3949
 Web-сайт: domkratt.com
 Профиль | | #13
Добавлено: 07.11.07 18:40
Arcady_XQST
Вряд ли ntdll будет в Win9x.
Вообще есть множество способов. В реестре есть версия винды, можно найти ветки реестра, присущие только определенной винде, файлы... да много чего.
Есть АПИ-функции, которые работают только в XP (не только в ntdll)

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам