|
автор: ????????? (30.11.-1 в 00:00) |
|
| | |
|
| |
|
автор: Explorer (30.11.-1 в 00:00) |
|
| средствами Access никак... вы, например, можете узнать дату на моем компьютере? у меня Access установлен, и компьютер удаленно подключен к серверу этого сайта по ЭйчТиТиПи протоколу.
если ваша проблема сводится к тому, что пользователи ручками меняют системные дату и время отчего страдает целостность данных в БД
1 не используюте системные дату и время компьютера, если пользователь может их менять и это может отразиться на достоверности сведений в БД.
2 разработайте ситему проверок даты и времени и способы запретить пользователю вносить некорректные данные
3 используйте системные дату и время сервера и не давайте пользователю возможности ими манипулировать | |
|
| |
|
автор: Explorer (30.11.-1 в 00:00) |
|
| да... ну и конечно, самое простое и разумное... отберите у пользователей права на изменение важных настроек среды и окружения ОС
тогда и проверять не придется
[img]www.nowhere.land.ru/MsgBox.GIF[/img] | |
|
| |
|
автор: osmor (30.11.-1 в 00:00) |
|
| если это компьютер вашего домена -если вы имеете необходимые права в этом домене и на целевом компьютере
-если на целевом компьютре не установлено систем защиты вроде софтверного файервола
то можно:
On Error Resume Next
Const wbemFlagReturnImmediately = &h10
Const wbemFlagForwardOnly = &h20
arrComputers = Array("ДоменноеИмяКомпьютера")
For Each strComputer In arrComputers
WScript.Echo
WScript.Echo "=========================================="
WScript.Echo "Computer: " & strComputer
WScript.Echo "=========================================="
Set objWMIService = GetObject("winmgmts:\" & strComputer & "
ootCIMV2")
Set colItems = objWMIService.ExecQuery("SELECT * FROM Win32_UTCTime", "WQL", _
wbemFlagReturnImmediately + wbemFlagForwardOnly)
For Each objItem In colItems
WScript.Echo "Day: " & objItem.Day
WScript.Echo "DayOfWeek: " & objItem.DayOfWeek
WScript.Echo "Hour: " & objItem.Hour
WScript.Echo "Milliseconds: " & objItem.Milliseconds
WScript.Echo "Minute: " & objItem.Minute
WScript.Echo "Month: " & objItem.Month
WScript.Echo "Quarter: " & objItem.Quarter
WScript.Echo "Second: " & objItem.Second
WScript.Echo "WeekInMonth: " & objItem.WeekInMonth
WScript.Echo "Year: " & objItem.Year
WScript.Echo
Next
Next | |
|
| |
|
автор: Explorer (30.11.-1 в 00:00) |
|
| с таким количеством если все можно сделать и без access нужно только быть сисадмином :)))
ЗЫ
а не нужно еще для порядка сначала компьютеры попинговать select * from win32_ping status
я было собирал таким, примерно, образом логи с локальных машин когда сетка была паршивая...
на практике не встречал, чтобы применялось подобное решение - слишком много "если", но согласен - в принципе, если нужно, то можно :))) | |
|
| |
|
автор: Explorer (30.11.-1 в 00:00) |
|
| и все-же какой смысл в том, чтобы узнать ситемные дату и время на удаленной машине?
обычно в случае, когда они пишутся в БД как Date() или Now() по DefaulValue - например LastUpdated или CreationDate
ну а если пользователь поменял дату/время туда/обратно - какой смысл в такой проверке?
еще раз - нужно просто запретить изменения настроек или брать время с сервера | |
|
| |
|
автор: osmor (30.11.-1 в 00:00) |
|
| что разошелся? :-) я и сам понимаю, что ценность информации о времени на удаленном компе, с таким уровнем надежности стремится к null. Но если нужно человеку....
Вообще у нас при регистрации компа в домене, на нем автоматически устанавливается время с таймсервера, но если человек балует с системной датой, то все ошибки с этим связанные, это его поблемы.... | |
|
| |
|
автор: Explorer (30.11.-1 в 00:00) |
|
| да так - воспоминания нахлынули - "как боролись админы БД с админами сети" системную дату может поменять приложение из под пользователя, а он об этом и не узнает... | |
|
| |
|
автор: osmor (30.11.-1 в 00:00) |
|
| "как боролись админы БД с админами сети" - нет повести печальнее на свете... | |
|
| |