powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Как определить версию Windows через VBA и проверить права администратора...
18 сообщений из 18, страница 1 из 1
Как определить версию Windows через VBA и проверить права администратора...
    #37210798
DMK67
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Написал программку на VBA и выяснилось интересное - обращение к файлам расположенные в директории C:\Program Files - не работает в Windows 7 если у пользователя нет прав администратора... Объясняется наличием "виртуального диска"...
как определить версию Windows и права пользователя?
...
Рейтинг: 0 / 0
Как определить версию Windows через VBA и проверить права администратора...
    #37210923
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я бы через WMI делал...
...
Рейтинг: 0 / 0
Как определить версию Windows через VBA и проверить права администратора...
    #37211041
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
про администратора отсюда можно взять:
Код: plaintext
1.
2.
3.
4.
5.
6.
'требуется иметь вверху модуля функцию:
'Private Declare Function IsUserAnAdmin Lib "shell32" () As Long
Select Case IsUserAnAdmin() 
Case  1 :
Case False:
MsgBox$ "У Вас недостаточно прав ...."
End Select
...
Рейтинг: 0 / 0
Как определить версию Windows через VBA и проверить права администратора...
    #37211250
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
*ROFL*
...
Рейтинг: 0 / 0
Как определить версию Windows через VBA и проверить права администратора...
    #37212753
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Akina, *ROFL* - это что значит?
...
Рейтинг: 0 / 0
Как определить версию Windows через VBA и проверить права администратора...
    #37212939
скукотища
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ROFL — аббревиатура, расшифровывающаяся как «Rolling On Floor Laughing» («Катаюсь По Полу, Смеясь»).

Akina,
не держите в себе, поделитесь, что смешного в IsUserAdmin экспортируемой из shell32.dll ?
...
Рейтинг: 0 / 0
Как определить версию Windows через VBA и проверить права администратора...
    #37213146
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
скукотищаподелитесь, что смешного в IsUserAdmin экспортируемой из shell32.dll ?
Если бы ты не указал, ТС непременно спросил бы, почему программа орёт, что user function not defined...
А смех - немного по другому поводу. Если нужны подробности - то только через IM.
...
Рейтинг: 0 / 0
Как определить версию Windows через VBA и проверить права администратора...
    #37213147
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кстати! вдогонку - попробуй спросить, что это за функция, у поставщиков поиска IE (гугль, бинг и пр.). Очень забавные результаты.
...
Рейтинг: 0 / 0
Как определить версию Windows через VBA и проверить права администратора...
    #37213159
скукотища
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Akina,
заинтриговал. Вас из даст IM?
P.S.: по поводу, "попробуй спросить, что это за функция, у поставщиков поиска IE (гугль, бинг и пр.) ..." - не понял, чесслово. Первая же ссылка от Гугла отправляет "к первоисточникам"
...
Рейтинг: 0 / 0
Как определить версию Windows через VBA и проверить права администратора...
    #37213167
скукотища
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
"вдогонку" - что такое IM, вроде бы, понял.
...
Рейтинг: 0 / 0
Как определить версию Windows через VBA и проверить права администратора...
    #37213273
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
скукотища,

топик загадка, и автор куда-то пропал, что не так в моём варианте? Даст сбой? Когда? А как уточнить ОС?
...
Рейтинг: 0 / 0
Как определить версию Windows через VBA и проверить права администратора...
    #37213342
Дмит
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пример из API-Guide

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
Private Declare Function GetVersionEx Lib "kernel32" Alias "GetVersionExA" (lpVersionInformation As OSVERSIONINFO) As Long
Private Type OSVERSIONINFO
    dwOSVersionInfoSize As Long
    dwMajorVersion As Long
    dwMinorVersion As Long
    dwBuildNumber As Long
    dwPlatformId As Long
    szCSDVersion As String *  128 
End Type
Private Sub Form_Load()
    Dim OSInfo As OSVERSIONINFO, PId As String
    'KPD-Team 1998
    'URL: http://www.allapi.net/
    'KPDTeam@Allapi.net
    'Set the graphical mode to persistent
    Me.AutoRedraw = True
    'Set the structure size
    OSInfo.dwOSVersionInfoSize = Len(OSInfo)
    'Get the Windows version
    Ret& = GetVersionEx(OSInfo)
    'Chack for errors
    If Ret& =  0  Then MsgBox "Error Getting Version Information": Exit Sub
    'Print the information to the form
    Select Case OSInfo.dwPlatformId
        Case  0 
            PId = "Windows 32s "
        Case  1 
            PId = "Windows 95/98"
        Case  2 
            PId = "Windows NT "
    End Select
    Print "OS: " + PId
    Print "Win version:" + str$(OSInfo.dwMajorVersion) + "." + LTrim(str(OSInfo.dwMinorVersion))
    Print "Build: " + str(OSInfo.dwBuildNumber)
End Sub
...
Рейтинг: 0 / 0
Как определить версию Windows через VBA и проверить права администратора...
    #37213361
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ципихович Эндрючто не так в моём варианте?
Нет Declare Function. Без этой строки твой пример неработоспособен.
...
Рейтинг: 0 / 0
Как определить версию Windows через VBA и проверить права администратора...
    #37215187
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Akina,
нет Нет Declare Function IsUserAnAdmin Lib "shell32" () As Long
ОК
а без
Private Declare Function GetVersionEx Lib "kernel32" Alias "GetVersionExA" (lpVersionInformation As OSVERSIONINFO) As Long
будет работать???
а вот это Print "OS: " + PId без Debug из какого языка?
ну выдало ответ:
OS: Windows NT
Win version: 5.1
Build: 2600
Я должен догагаться, что это ХР??
...
Рейтинг: 0 / 0
Как определить версию Windows через VBA и проверить права администратора...
    #37219367
DMK67
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Нашел табличку как определять версию винды, но табличка заканчивается не дойдя до Висты.
По материалам топика и базы данных Винды сделал файлик с определителем версии и прав пользователя.

НО ГЛАВНАЯ ЗАДАЧА НЕ РЕШЕНА.
Может ктото погоняет файлик на семерке или висте и подумает как его распространить на эти версии?
...
Рейтинг: 0 / 0
Как определить версию Windows через VBA и проверить права администратора...
    #37221199
Фотография Shamanus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DMK67,

тут один форумчанин решал подобную проблему, судя по коду, путь который он выбрал аналогичен второму Вашему.
может он нашел ответ на Ваш вопрос

его топик и решение тут 6820067
...
Рейтинг: 0 / 0
Как определить версию Windows через VBA и проверить права администратора...
    #37662868
DMK67, я добавил в твой файл висту и семерку, смотри вложение
...
Рейтинг: 0 / 0
Как определить версию Windows через VBA и проверить права администратора...
    #37663872
DMK67
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Большое спасибо. Как раз кстати...
...
Рейтинг: 0 / 0
18 сообщений из 18, страница 1 из 1
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Как определить версию Windows через VBA и проверить права администратора...
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]