Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2007.06.10;
Скачать: [xml.tar.bz2];

Вниз

Что-то вроде триалки:-)   Найти похожие ветки 

 
Bad_B   (2007-05-21 17:39) [0]

В общем задачка такая: сделать что-то типа триал-версии программы, если пользователь нажал >=5 определенную кнопку, то при следующем запуске прога просто "вырубалась". Осуществить через реестр.
Вот взгляните (за 20 мин набросал, но давно не программил), как можно по другому реализовать (или улучшить) задачу.

var
 Form1: TForm1;
 i:integer;
 off:boolean;
=====================
procedure tform1.WrReg;
var
 Registry: TRegistry;
begin
 Registry := TRegistry.Create;
 Registry.RootKey := hkey_local_machine;
 Registry.OpenKey("software\MyReg",true);
 Registry.WriteInteger("index",i);
 Registry.CloseKey;
 Registry.Free;
end;
=======================
procedure TForm1.Button1Click(Sender: TObject);
begin
inc(i);
wrreg;
end;
=================
procedure TForm1.FormCreate(Sender: TObject);
var
Registry: TRegistry;
MyKey : HKey;
Buffer : array[0..1000] of char;
 hrt:integer;
 Err: longint;
begin
hrt:=0;
off:=false;
Err:=RegOpenKey(hkey_local_machine,"software\MyReg",MyKey);
 if Err<>ERROR_SUCCESS then
  begin
  wrreg;
  i:=0;
  end
  else
  begin
Registry := TRegistry.Create;
Registry.RootKey := hkey_local_machine;
Registry.OpenKey("software\MyReg",true);
hrt:=Registry.ReadInteger("index");
Registry.CloseKey;
Registry.Free;
  end;

if hrt>=5 then
 begin
   showmessage("Registry time over");
   off:=true;
 end
else
  wrreg;
end;

procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X,
 Y: Integer);
begin
if off then
form1.Close;
end


 
Jeer ©   (2007-05-21 18:18) [1]

"Если работает - не трогай".


 
Bad_B   (2007-05-21 19:23) [2]


> Jeer ©   (21.05.07 18:18) [1]
> "Если работает - не трогай".

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


 
Johnmen ©   (2007-05-21 19:33) [3]

Т.е. как работать с реестром сообразил (?), а как реализовать элементарную логику не знаешь???

Не люблю лгунов (с)


 
Bad_B   (2007-05-21 19:48) [4]


> Johnmen ©   (21.05.07 19:33) [3]

как работать с реестром не сообразил, а научился (вот отсюда читал как и что, ну и думал конечно http://bookz.ru/authors/avtor-neizvesten-3/delphiregry.html )

ну так что получается помощи ждать неоткуда?!....


 
{RASkov} ©   (2007-05-21 19:55) [5]

> не совсем корректно закрывать приложение по движению курсора

На Таймер повесь.... шутка конечно...
Или на нажатии кнопок проверяй значение i...
Пересмотри заново свой алгоритм программы... очень не красиво.
А зачем сразу закрывать, пусть уж последний раз полностью отработает, при зарытии предупредит, что мол, всё.... курИте....



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2007.06.10;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.075 c
15-1176818174
pasha_golub
2007-04-17 17:56
2007.06.10
Посоветуйте спелл чекер


4-1166970048
vertal
2006-12-24 17:20
2007.06.10
Точность измерения временных интервалов для UART в windows


15-1179253032
N3xt_
2007-05-15 22:17
2007.06.10
Программа


6-1164175406
psa247
2006-11-22 09:03
2007.06.10
IpConfig /release


2-1179422547
Shark280289
2007-05-17 21:22
2007.06.10
Delphi 7. Работа с ListView.





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский