Показать сообщение отдельно
  #5  
Старый 08.11.2009, 15:55
-=C@$PeR=- -=C@$PeR=- вне форума
Прохожий
 
Регистрация: 07.11.2009
Сообщения: 14
Репутация: 11
Радость

Цитата:
1. Нет текущего времени,я должен искать часы...на компе или еще где то...
Об этом мне и брат например говорил, но думал, что это бессмысленно, так как есть часы в трее. Учту.

Цитата:
2. Осталось до сигнала в минутах, а можно было бы еще и в секундах...
Ну можно попробовать. Честно сказать не понимаю зачем такая точность. Почему говорю можно попробовать, посмотри на код расчёта времени:
Код:
procedure GetRemainedTime;
var HourCount, MinCount : word;
    HourENow, MinENow : word; //HourENow - тут будет текущие часы
begin

   HourENow := HourOf(Now);
   MinENow := MinuteOf(Now);
   if (HourENow > HourAlarm) and (MinENow <> 0) then
   begin
     HourCount := 24 - HourENow;
     HourCount := HourCount + HourAlarm - 1;
     MinCount := (60 - MinENow) + MinAlarm;
     if MinCount > 59 then
     begin
       HourCount := HourCount + 1;
       MinCount := MinCount - 60;
       HourRemain := HourCount;
       MinRemain :=MinCount;
       exit;
     end else
     begin
       HourRemain := HourCount;
       MinRemain :=MinCount;
       exit;
     end;
   end;

   if (HourENow > HourAlarm) and (MinENow = 0) then
   begin
     HourCount := 24 - HourENow;
     HourCount := HourCount + HourAlarm;
     MinCount := MinAlarm;
     HourRemain := HourCount;
     MinRemain :=MinCount;
     exit;
   end;

   if (HourENow < HourAlarm) and (MinENow <> 0) then
   begin
     HourCount := HourAlarm - HourENow - 1;
     MinCount := (60 - MinENow) + MinAlarm;
     if MinCount > 59 then
     begin
       HourCount := HourCount+1;
       MinCount := MinCount - 60;
       HourRemain := HourCount;
       MinRemain :=MinCount;
       exit;
     end else
     begin
       HourRemain := HourCount;
       MinRemain :=MinCount;
       exit;
     end;
   end;
   if (HourENow < HourAlarm) and (MinENow = 0) then
   begin
     HourCount := HourAlarm - HourENow;
     MinCount := MinAlarm;
     HourRemain := HourCount;
     MinRemain :=MinCount;
     exit;
   end;
   if (HourENow = HourAlarm) and (MinENow < MinAlarm) then
   begin
     HourRemain := 0;
     MinRemain := MinAlarm - MinENow;
     exit;
   end;

   if (HourENow = HourAlarm) and (MinENow > MinAlarm) then
   begin
     HourRemain := 23;
     MinRemain := (60 - MinENow) + MinAlarm;
     exit;
   end;
   if (HourENow = HourAlarm) and (MinENow = MinAlarm) then
   begin
     HourRemain := 0;
     MinRemain := 0;
     exit;
   end;
end;
Долго ломал этой процедурой голову.

Цитата:
1. Не пиши при помощи чего пишешь прогу...среда программирования ведь у тебя нелицензионная ведь так...значит и писать на ней права не имеешь...
Я пока ничего не продавал, а скинул на ознакомление.
Сразу назревает несколько вопросов: Откуда такая увереность (лицензия)? Тебе не всё равно? Кстати под Window 7 полюбому куплю лицензию, ну под Delphi вроде 2010. Слава богу работаю )). Если я не буду писать этой средой разработки, то я вообще не буду писать, больше не на чём не умею. Для меня загадка как например интерфейс делать на паскале. Друг, а Windows у тебя лицензионный?

Цитата:
2. Лично у меня проблема со шрифтом всплывающих сообщений, написаны крокозябры...Windows 7600...
Всмысле подсказок или когда будильник срабатывает? Windows 7600 это чё за Windows такой? билд 7600? ХР? хотя у ХР вроде билд последний что я виде 2600. Не насмехаюсь, просто не понял.

Цитата:
3. Монитор не выключается...
У меня и у друзей выключается, у всех Windows XP Service Pack 3
Там используется API функция, вот код выключения монитора:
Код:
procedure MonitorOnOff(OnOff : boolean); //Выключить/включить монитор
begin
  if OnOff = True then //если в условии указано True, значит выключить монитор
  begin
    SendMessage(Application.Handle, WM_SYSCOMMAND, SC_MONITORPOWER, 1);
  end else               //если False, значит включить
  begin
    SendMessage(Application.Handle, WM_SYSCOMMAND, SC_MONITORPOWER, -1);
  end;
end;

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

Цитата:
4. И не стоит делать ее тестовой до 2010 г...все равно взломают)))а ссобщение кумарит)))
Пока все....ждем версию 1.3...

Хотелось бы посмотреть на взломаную версию. По взлому кое что читал. При выводе сообщения не используется API их видно в той же Olly Debag. Не используется текст выводимый в окно открытым текстом, тоесть то что видно в окне, в переменной храниться в другом виде. защита была сделана наспех. Да и не особо нужна она. Просто не хочу недоделаное пускать в массы , ексешник сжат.
Ответить с цитированием