Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
 Аватар для FreeWay
84 / 84 / 19
Регистрация: 17.12.2007
Сообщений: 574

На вин 7 не работает сравнение времени

15.04.2012, 12:52. Показов 1001. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет!

Стоит программка на вин 2003 сервер, одна из функций в ней сравнение времени.

Перенес программу на вин 7 32 бит - Тупо не сравнивает время:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
TDateTime WorkFrom, WorkTo, TimeExit; // эти переменные берутся с таблицы 
WorkFrom = ADOQueryWays->FieldByName("AutStarFro")->AsDateTime;
WorkTo = ADOQueryWays->FieldByName("AutStarTo")->AsDateTime;
////////// GetDate
AnsiString GetDate(int DateParam)
{
  String DateTime;
  if (DateParam==0) {
    DateTime= DateToStr(Now());
  }
  if (DateParam==1) {
    DateTime= TimeToStr(Now());
  }
  return DateTime;
}
if ( (GetDate(1)>WorkFrom) &&  (GetDate(1)<WorkTo) )
естественно смотрел в настройки региональных в формат время, сделал так же как на вин 2003, визуально значение времени корректное и должно срабатывать условие, но нифига не срабатывает...
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
15.04.2012, 12:52
Ответы с готовыми решениями:

простое приложение в вин хр работает, в вин 2000 ошибка
Всем привет!!!! Есть простое приложение на c# которое копирует файло. на хр работает нормально, а на тачках с 2000 виндой эксепшн...

не запускается приложение на вин 10,на вин 7 все работает
не запускается приложение human anatomy atlas, выдает ошибку, на виндовс 7 все отлично работает

Условие макроса сравнение дат и времени работает не корректно.Как это исправить?
Sub Макрос_1() For i = 5 To Sheets(&quot;Ввод Данных&quot;).Range(&quot;A&quot; &amp; Rows.Count).End(xlUp).Row If Sheets(&quot;Ввод...

3
Практикантроп
 Аватар для nick42
4841 / 2726 / 534
Регистрация: 23.09.2011
Сообщений: 5,798
15.04.2012, 13:30
Думаю, причина не в оси, а в работе с таблицами. Вот такой аналог Вашей программы на моей семерке Win7Ult32 работает без вопросов__
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
void __fastcall TForm1::Button6Click(TObject *Sender)
{
TDateTime WorkFrom, WorkTo, TimeExit; // ýòè ïåðåìåííûå áåðóòñÿ ñ òàáëèöû
     Edit1->Text = "10.04.2012";
     Edit2->Text = "30.04.2012";
     Edit3->Text = "15.04.2012";
   WorkFrom = StrToDateTime(Edit1->Text);
   WorkTo   = StrToDateTime(Edit2->Text);
//AnsiString GetDate = Edit3->Text;
     if ((GetDate(1) > WorkFrom) &&  (GetDate(1) < WorkTo))
        ShowMessage("Ñðàâíåíèå óñïåøíî!");
}
//---------------------------------------------------------------------------
AnsiString __fastcall TForm1::GetDate(int DateParam)
{
  String DateTime;
  if (DateParam==0) DateTime = DateToStr(Now());
  if (DateParam==1) DateTime = TimeToStr(Now());
  return DateTime;
}
1
 Аватар для FreeWay
84 / 84 / 19
Регистрация: 17.12.2007
Сообщений: 574
15.04.2012, 15:13  [ТС]
Цитата Сообщение от nick42 Посмотреть сообщение
Думаю, причина не в оси, а в работе с таблицами. Вот такой аналог Вашей программы на моей семерке Win7Ult32 работает без вопросов__
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
void __fastcall TForm1::Button6Click(TObject *Sender)
{
TDateTime WorkFrom, WorkTo, TimeExit; // ýòè ïåðåìåííûå áåðóòñÿ ñ òàáëèöû
     Edit1->Text = "10.04.2012";
     Edit2->Text = "30.04.2012";
     Edit3->Text = "15.04.2012";
   WorkFrom = StrToDateTime(Edit1->Text);
   WorkTo   = StrToDateTime(Edit2->Text);
//AnsiString GetDate = Edit3->Text;
     if ((GetDate(1) > WorkFrom) &&  (GetDate(1) < WorkTo))
        ShowMessage("Ñðàâíåíèå óñïåøíî!");
}
//---------------------------------------------------------------------------
AnsiString __fastcall TForm1::GetDate(int DateParam)
{
  String DateTime;
  if (DateParam==0) DateTime = DateToStr(Now());
  if (DateParam==1) DateTime = TimeToStr(Now());
  return DateTime;
}

чуток не так. я не даты сравниваю, и время, если текущее время попадает между диапазоном, то срабатывает условие.

создал проект для пробы:

C++
1
2
3
4
5
6
7
8
9
10
11
     Edit1->Text = "08:00:00";
     Edit2->Text = "16:30:00";
     Edit3->Text = GetDate(1);
   WorkFrom = StrToDateTime(Edit1->Text);
   WorkTo   = StrToDateTime(Edit2->Text);
//AnsiString GetDate = Edit3->Text;
     if ((GetDate(1) > WorkFrom) &&  (GetDate(1) < WorkTo))
     {
        ShowMessage("вошло");
 
        }
не срабатывает
0
 Аватар для Samrisbe
1365 / 732 / 67
Регистрация: 28.01.2011
Сообщений: 2,069
15.04.2012, 23:45
DateTimeCompare (C++)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
15.04.2012, 23:45
Помогаю со студенческими работами здесь

Не работает Explorer 11 на Windows 7 x64
Народ помогите ! Не работает Explorer 11 на Win 7 64 остальные браузеры (Opera, Chrome) пашут нормально, сброс настроек браузера не...

обращение к дочернему окну (Вин ГУИ) используя Вин АПИ
Здравствуйте уважаемые форумчане.у меня проблема с WIN API к сожалению не нашел форума именно по C# и Win API. В общем мне надо...

TeknoGods - на Вин 7 работает, на ХР нет.
Програма TeknoGods которая работает на Виндовс7, при попытке запуска на Вин ХР выдает ошибку. Из-за чего возможна ета ошибка ?

Стоит Вин 7 -64, хочу паралельно установить Вин 8
Стоит Вин 7 -64, хочу паралельно установить Вин 8. У кого есть опыт такой установки?

восстановить загрузку вин 7 после установки вин хп
привет была хп давным давно на С: потом установил вин 7 на второй раздел диска Д: потом пришлось переустановить XP ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Как я обхитрил таблицу Word
Alexander-7 21.03.2026
Когда мигает курсор у внешнего края таблицы, и нам надо перейти на новую строку, а при нажатии Enter создается новый ряд таблицы с ячейками, то мы вместо нервных нажатий Энтеров мы пишем любые буквы. . .
Krabik - рыболовный бот для WoW 3.3.5a
AmbA 21.03.2026
без регистрации и смс. Это не торговля, приложение не содержит рекламы. Выполняет свою непосредственную задачу - автоматизацию рыбалки в WoW - и ничего более. Однако если админы будут против -. . .
Программный отбор значений справочника
Maks 21.03.2026
Установка программного отбора значений справочника "Сотрудники" из модуля формы документа. В качестве фильтра для отбора служит предопределенное значение перечислений. Процедура. . .
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
Оттенки серого
Argus19 18.03.2026
Оттенки серого Нашёл в интернете 3 прекрасных модуля: Модуль класса открытия диалога открытия/ сохранения файла на Win32 API; Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru