powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Региональные настройки
8 сообщений из 8, страница 1 из 1
Региональные настройки
    #32186525
slavvka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Как получить формат даты из региональных настроек винды?
Заранее благодарен.
...
Рейтинг: 0 / 0
Региональные настройки
    #32186530
Geen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Месяц назад поборол похожую проблему:)
Но непонятно что именно нужно сделать.
Пишите побробнее, постараюсь помочь:)
Geen
...
Рейтинг: 0 / 0
Региональные настройки
    #32186539
slavvka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Мне нужна строка, в которой содержится формат
...
Рейтинг: 0 / 0
Региональные настройки
    #32186546
incold
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 slavvka
Если не секрет для чего это нужно?
...
Рейтинг: 0 / 0
Региональные настройки
    #32186550
Geen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ГДЕ строка, какая строка?
Какой формат?

Если нужно заформатировать дату, попробуйте нечто вроде:

Format(Me.MyDate, yyyy mm dd hh:mm:ss) - ANSI формат
Format(Me.MyDate, ddmmyyhhmmss) - наш родной формат

Увы, что именно Вам нужно я понять не могу:)

Geen
...
Рейтинг: 0 / 0
Региональные настройки
    #32186557
slavvka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В Control Panel есть Regional Options на вкладке Date имеется Short date format
Вопрос заключается в следующем - где Windows хранит все это дело и как этим делом можно управлять, в частности получить в переменную Short date format
...
Рейтинг: 0 / 0
Региональные настройки
    #32186591
slavvka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем спасибо, уже нашел, может кому пригодиться!

С помощью этих функций можно считать и записать кучу параметров из локальных установок компьютера для текущего пользователя.


'Code courtesy of
'Dev Ashish
Public Const LOCALE_ILANGUAGE = &H1 ' ID языка
Public Const LOCALE_SLANGUAGE = &H2 ' локализованное название языка
Public Const LOCALE_SENGLANGUAGE = &H1001 ' английское название языка
Public Const LOCALE_SABBREVLANGNAME = &H3 ' аббревиатура языка
Public Const LOCALE_SNATIVELANGNAME = &H4 ' родное название языка
Public Const LOCALE_ICOUNTRY = &H5 ' код страны
Public Const LOCALE_SCOUNTRY = &H6 ' локализованное название страны
Public Const LOCALE_SENGCOUNTRY = &H1002 ' английское название страны
Public Const LOCALE_SABBREVCTRYNAME = &H7 ' аббревиатура названия страны
Public Const LOCALE_SNATIVECTRYNAME = &H8 ' родное название страны
Public Const LOCALE_IDEFAULTLANGUAGE = &H9 ' ID языка по умолчанию
Public Const LOCALE_IDEFAULTCOUNTRY = &HA ' Код страны по умолчанию
Public Const LOCALE_IDEFAULTCODEPAGE = &HB ' Кодовая страница по умолчанию
Public Const LOCALE_SLIST = &HC ' list item separator
Public Const LOCALE_IMEASURE = &HD ' 0 = metric, 1 = US
Public Const LOCALE_SDECIMAL = &HE ' Разделитель десятичных разрядов
Public Const LOCALE_STHOUSAND = &HF ' Разделитель тысяч
Public Const LOCALE_SGROUPING = &H10 ' digit grouping
Public Const LOCALE_IDIGITS = &H11 ' number of fractional digits
Public Const LOCALE_ILZERO = &H12 ' leading zeros For decimal
Public Const LOCALE_SNATIVEDIGITS = &H13 ' native ascii 0-9
Public Const LOCALE_SCURRENCY = &H14 ' local monetary symbol
Public Const LOCALE_SINTLSYMBOL = &H15 ' intl monetary symbol
Public Const LOCALE_SMONDECIMALSEP = &H16 ' monetary decimal separator
Public Const LOCALE_SMONTHOUSANDSEP = &H17 ' monetary thousand separator
Public Const LOCALE_SMONGROUPING = &H18 ' monetary grouping
Public Const LOCALE_ICURRDIGITS = &H19 ' # local monetary digits
Public Const LOCALE_IINTLCURRDIGITS = &H1A ' # intl monetary digits
Public Const LOCALE_ICURRENCY = &H1B ' positive currency mode
Public Const LOCALE_INEGCURR = &H1C ' negative currency mode
Public Const LOCALE_SDATE = &H1D ' date separator
Public Const LOCALE_STIME = &H1E ' time separator
Public Const LOCALE_SSHORTDATE = &H1F ' short date format String
Public Const LOCALE_SLONGDATE = &H20 ' long date format String
Public Const LOCALE_STIMEFORMAT = &H1003 ' time format String
Public Const LOCALE_IDATE = &H21 ' short date format ordering
Public Const LOCALE_ILDATE = &H22 ' Long date format ordering
Public Const LOCALE_ITIME = &H23 ' time format specifier
Public Const LOCALE_ICENTURY = &H24 ' century format specifier
Public Const LOCALE_ITLZERO = &H25 ' leading zeros in time field
Public Const LOCALE_IDAYLZERO = &H26 ' leading zeros in day field
Public Const LOCALE_IMONLZERO = &H27 ' leading zeros in month field
Public Const LOCALE_S1159 = &H28 ' AM designator
Public Const LOCALE_S2359 = &H29 ' PM designator
Public Const LOCALE_SDAYNAME1 = &H2A ' Long name For Monday
Public Const LOCALE_SDAYNAME2 = &H2B ' Long name For Tuesday
Public Const LOCALE_SDAYNAME3 = &H2C ' Long name For Wednesday
Public Const LOCALE_SDAYNAME4 = &H2D ' Long name For Thursday
Public Const LOCALE_SDAYNAME5 = &H2E ' Long name For Friday
Public Const LOCALE_SDAYNAME6 = &H2F ' Long name For Saturday
Public Const LOCALE_SDAYNAME7 = &H30 ' Long name For Sunday
Public Const LOCALE_SABBREVDAYNAME1 = &H31 ' abbreviated name For Monday
Public Const LOCALE_SABBREVDAYNAME2 = &H32 ' abbreviated name For Tuesday
Public Const LOCALE_SABBREVDAYNAME3 = &H33 ' abbreviated name For Wednesday
Public Const LOCALE_SABBREVDAYNAME4 = &H34 ' abbreviated name For Thursday
Public Const LOCALE_SABBREVDAYNAME5 = &H35 ' abbreviated name For Friday
Public Const LOCALE_SABBREVDAYNAME6 = &H36 ' abbreviated name For Saturday
Public Const LOCALE_SABBREVDAYNAME7 = &H37 ' abbreviated name For Sunday
Public Const LOCALE_SMONTHNAME1 = &H38 ' Long name For January
Public Const LOCALE_SMONTHNAME2 = &H39 ' Long name For February
Public Const LOCALE_SMONTHNAME3 = &H3A ' Long name For March
Public Const LOCALE_SMONTHNAME4 = &H3B ' Long name For April
Public Const LOCALE_SMONTHNAME5 = &H3C ' Long name For May
Public Const LOCALE_SMONTHNAME6 = &H3D ' Long name For June
Public Const LOCALE_SMONTHNAME7 = &H3E ' Long name For July
Public Const LOCALE_SMONTHNAME8 = &H3F ' Long name For August
Public Const LOCALE_SMONTHNAME9 = &H40 ' Long name For September
Public Const LOCALE_SMONTHNAME10 = &H41 ' Long name For October
Public Const LOCALE_SMONTHNAME11 = &H42 ' Long name For November
Public Const LOCALE_SMONTHNAME12 = &H43 ' Long name For December
Public Const LOCALE_SABBREVMONTHNAME1 = &H44 ' abbreviated name For January
Public Const LOCALE_SABBREVMONTHNAME2 = &H45 ' abbreviated name For February
Public Const LOCALE_SABBREVMONTHNAME3 = &H46 ' abbreviated name For March
Public Const LOCALE_SABBREVMONTHNAME4 = &H47 ' abbreviated name For April
Public Const LOCALE_SABBREVMONTHNAME5 = &H48 ' abbreviated name For May
Public Const LOCALE_SABBREVMONTHNAME6 = &H49 ' abbreviated name For June
Public Const LOCALE_SABBREVMONTHNAME7 = &H4A ' abbreviated name For July
Public Const LOCALE_SABBREVMONTHNAME8 = &H4B ' abbreviated name For August
Public Const LOCALE_SABBREVMONTHNAME9 = &H4C ' abbreviated name For September
Public Const LOCALE_SABBREVMONTHNAME10 = &H4D ' abbreviated name For October
Public Const LOCALE_SABBREVMONTHNAME11 = &H4E ' abbreviated name For November
Public Const LOCALE_SABBREVMONTHNAME12 = &H4F ' abbreviated name For December
Public Const LOCALE_SABBREVMONTHNAME13 = &H100F

Public Const LOCALE_SYSTEM_DEFAULT& = &H800
Public Const LOCALE_USER_DEFAULT& = &H400

Const cMAXLEN = 255

Private Declare Function apiGetLocaleInfo Lib "kernel32" _
Alias "GetLocaleInfoA" (ByVal Locale As Long, _
ByVal LCType As Long, ByVal lpLCData As String, _
ByVal cchData As Long) As Long

Private Declare Function apiSetLocaleInfo Lib "kernel32" _
Alias "SetLocaleInfoA" (ByVal Locale As Long, _
ByVal LCType As Long, ByVal lpLCData As String) As Long

Function GetLocaleInfo(lngLCType As Long) As String
Dim lngLocale As Long
Dim strLCData As String, lngData As Long
Dim lngX As Long

strLCData = String$(cMAXLEN, 0)
lngData = cMAXLEN - 1
lngX = apiGetLocaleInfo(LOCALE_USER_DEFAULT, lngLCType, _
strLCData, lngData)
If lngX <> 0 Then
GetLocaleInfo = Left$(strLCData, lngX - 1)
End If
End Function
--------------------------------------------------------------------------------


'am v1.0.0_991111
Function SetLocaleInfo(lngLCType As Long, lValue) As String
On Error Resume Next
Dim lngLocale As Long
Dim strLCData As String
Dim lngX As Long

strLCData = String$(cMAXLEN, 0)
strLCData = CStr(lValue) & String(cMAXLEN - Len(CStr(lValue)), 0)
lngX = apiSetLocaleInfo(LOCALE_USER_DEFAULT, lngLCType, _
strLCData)
If lngX <> 0 Then
SetLocaleInfo = Left$(strLCData, lngX - 1)
End If
End Function
--------------------------------------------------------------------------------


Пример использования:Call SetLocaleInfo(LOCALE_SDECIMAL, ".") - устанавливает разделитель разрядов - точку.
msgbox GetLocaleInfo(LOCALE_SSHORTDATE) - возвращает краткий формат даты.
...
Рейтинг: 0 / 0
Региональные настройки
    #32186604
incold
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Совет:
Поосторожнее с привязкой/установкой к региональным настройкам.

Пример:
Access XP Rus + Ms SQL 7.0 (все без сервис-паков)
понимает передачу на сервер через ADO дату в формате dd.mm.yyyy

Access XP Eng + Ms SQL 7.0 (все без сервис-паков)
понимает передачу на сервер через ADO дату в формате mm.dd.yyyy

Лучше всего если программа вообще не зависит от региональных настроек
И еще вот
http://www.sql.ru/faq/faq_topic.aspx?fid=103

P.S. ИМХО. Что касается работы с API-функциями...сейчас начнется драка :))...то их кол-во проямо пропорционально кол-ву потенциальных проблем.
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Региональные настройки
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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