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

Вниз

программа на данном компьютере больше не запускалась   Найти похожие ветки 

 
Galiley   (2007-07-27 09:43) [0]

Как сделать, чтобы программа на данном компьютере больше не запускалась?
Пр.: после нажатия на кнопку.


 
Человек   (2007-07-27 09:50) [1]

При нажатии на кнопку:
Ini.WriteInteger("yourprogram","close",1);

При formcreate
close:=Ini.readinteger("yourprogram","close",1);
if close=1 then
 close;


 
Galiley   (2007-07-27 09:58) [2]

это ерунда!

к примеру видел код, который не давал запустить программу до перезагрузки, мож. код есть, что и перезагрузка не поможет?


 
Человек   (2007-07-27 10:08) [3]

знаю, что ерунда. НО после перезагрузки прога то не запустится :))


 
Сергей М. ©   (2007-07-27 10:11) [4]

Единственный способ - уничтожить или испортить исп.файл приложения.


 
iXT ©   (2007-07-27 10:13) [5]

> [4] Сергей М. ©   (27.07.07 10:11)

Дык можно заново его закатать :)


 
Сергей М. ©   (2007-07-27 10:16) [6]


> можно заново его закатать


Ну если так, то тогда никак)


 
Человек   (2007-07-27 10:17) [7]

А с помощью INI даже после переустановки прога не запустится


 
iXT ©   (2007-07-27 10:18) [8]

> [6] Сергей М. ©   (27.07.07 10:16)

Как всегда формулировка хромает :)


 
iXT ©   (2007-07-27 10:19) [9]

> [7] Человек   (27.07.07 10:17)

Прога запуститься.


 
Человек   (2007-07-27 10:20) [10]

И сразу вырубится


 
iXT ©   (2007-07-27 10:21) [11]

> [10] Человек   (27.07.07 10:20)

Но запуститься - читать [8]


 
Galiley   (2007-07-27 10:27) [12]

Вот нашёл тот код:
После добавления следующего кода в программу, она запустится только один раз за время сессии Windows. Для повторного запуска программы необходимо будет перезагрузить Windows.

procedure TForm1.FormShow(Sender : TObject);
var atom : integer;
    CRLF : string;
begin
if GlobalFindAtom("THIS_IS_SOME_OBSCUREE_TEXT") = 0 then
  atom := GlobalAddAtom("THIS_IS_SOME_OBSCUREE_TEXT")
 else begin
   CRLF := #10 + #13;
   ShowMessage("This programm will start only once" + CRLF +
      for next start reboot windows please, or..." + CRLF +
         "REGISTER PROGRAM !!");
 Close;
end;
end;


Вот как не на сеанс, а навсегда?


 
Человек   (2007-07-27 10:30) [13]


> XT ©   (27.07.07 10:21) [11]
> > [10] Человек   (27.07.07 10:20)Но запуститься - читать
> [8]


но ведь вырубится


 
iXT ©   (2007-07-27 10:33) [14]

Уверен, что я не смогу запустить такую прогу без перезагрузки дважды?


 
Сергей М. ©   (2007-07-27 10:34) [15]


> Galiley   (27.07.07 10:27) [12]


Этот код не имеет ничего общего с твоим вопросом.
Программа как запускалась, так и продолжает запускаться.


 
Galiley   (2007-07-27 10:43) [16]

Сергей М. ©   (27.07.07 10:34) [15]

> Galiley   (27.07.07 10:27) [12]

Этот код не имеет ничего общего с твоим вопросом.
Программа как запускалась, так и продолжает запускаться.


Да ладно! Конечно код я взял с другово сайта, раньше я ею пользовался и помню, что изменение я внёс, чтобы всё нормально заработало!
Я её использовал так: три раза неверно вводишь пароль и... перезагружайся )

мне бы этот эффект продлить на всю жизнь операционки! А ты говоришь отношения не имеет!


 
Сергей М. ©   (2007-07-27 10:51) [17]


> А ты говоришь отношения не имеет


Конечно не имеет)

Если ты увидел на экране сообщение "This programm will start only once .." (и т.д.), значит программа запустилась.

Не святой же дух это сообщение вывел)


 
Сергей М. ©   (2007-07-27 10:52) [18]


> мне бы этот эффект


Этот "эффект" не имеет ничего общего к "программа не запустилась")


 
Virgo_Style ©   (2007-07-27 11:09) [19]

Человек   (27.07.07 10:17) [7]

Если установщик не затирает .ini и если программа устанавливается в тот же каталог.


 
Sonia ©   (2007-07-27 11:26) [20]


> мне бы этот эффект продлить на всю жизнь операционки!

А почему бы не сделать так, чтобы программа сама себя убивала?


 
iXT ©   (2007-07-27 11:30) [21]

> [20] Sonia ©   (27.07.07 11:26)

Программа самоубийца? :)


 
Vlad Oshin ©   (2007-07-27 11:30) [22]


> А почему бы не сделать так, чтобы программа

делала все что угодно, кроме нужного


 
Sonia ©   (2007-07-27 11:40) [23]


> делала все что угодно, кроме нужного

Ну если ини не подходит, не подходит подпорчивание программы, тогда что? может быть и можно прописать где-то в файлах ОС, чтобы она не запускала эту прогу, но можно ведь и залезть в этот файлик и поменять все ручками и тогда программа снова будет запускаться :)


 
oxffff ©   (2007-07-27 11:43) [24]


> Galiley   (27.07.07 09:43)  
> Как сделать, чтобы программа на данном компьютере больше
> не запускалась?
> Пр.: после нажатия на кнопку.


Нажать любую кнопку. После взять лопату и грабли и поработать над системным блоком.

Метод работает как до перезагрузки, так и после. Даже запускать не надо.


 
Dib@zol ©   (2007-07-27 11:51) [25]

> > Galiley   (27.07.07 09:43)  
> > Как сделать, чтобы программа на данном компьютере больше
>
> > не запускалась?
> > Пр.: после нажатия на кнопку.

Повязать на кнопу процедуру выполняющую следующее:
- Определить сектор винта в котором прога прописана.
- Пометить его как сбойный.
- Проставить в пропертях заголовка файла флаг "папка".

Теперь без предобработки нихто не откроет ;)


 
iXT ©   (2007-07-27 11:54) [26]

> [25] Dib@zol ©   (27.07.07 11:51)

Угу, и права раздать соответствующие пользователям.


 
AleksandrR ©   (2007-07-27 11:58) [27]

Попробуй этот код. Чтобы прога работала удали файл С:\Windows\kernel.fhd
uses
 Registry;

//А потом по созданию окна напиши следующий код:

procedure TForm1.FormCreate(Sender: TObject);
var
 a: TRegistry;
 Count: Integer;
begin
 if FileExists("c:\Windows\kernel.fhd") = false then
 begin
   a := TRegistry.Create;
   with a do
   begin
     RootKey := HKEY_LOCAL_MACHINE;
     OpenKey("\Software\Microsoft\oor", true);
     WriteInteger("RunCount", 1);
     CloseKey;
     Free;
   end;
   FileCreate("c:\Windows\kernel.fhd");
 end
 else
 begin
   a:=TRegistry.Create;
   with a do
   begin
     RootKey := HKEY_LOCAL_MACHINE;
     OpenKey("\Software\Microsoft\oor", true);
     Count := ReadInteger("RunCount");
     CloseKey;
     Free;
   end;
   if Count = 1 then
     halt
   else
   begin
     Inc(Count);
     a := TRegistry.Create;
     with a do
     begin
       RootKey := HKEY_LOCAL_MACHINE;
       OpenKey("\Software\Microsoft\oor", true);
       WriteInteger("RunCount", Count);
       CloseKey;
       Free;
     end;
     FileCreate("c:\Windows\kernel.fhd");
   end;
 end;
end;


 
oxffff ©   (2007-07-27 11:59) [28]


> iXT ©   (27.07.07 11:54) [26]
> > [25] Dib@zol ©   (27.07.07 11:51)
>
> Угу, и права раздать соответствующие пользователям.


Но до этого читать только Руссиновича, Рихтера и Шрайбера


 
Dib@zol ©   (2007-07-27 12:02) [29]

> Угу, и права раздать соответствующие пользователям.

Нахрена???? Пишем дрова, запускаемся в нулевом кольце и шарашим DMA!!! =D


 
oxffff ©   (2007-07-27 12:02) [30]


> AleksandrR ©   (27.07.07 11:58) [27]
> Попробуй этот код. Чтобы прога работала удали файл С:\Windows\kernel.
> fhd


Да нет достаточно найти Offset FormCreate. И jz на  jmp


 
SlymRO ©   (2007-07-27 12:17) [31]

AleksandrR ©   (27.07.07 11:58) [27]
if Count = 1 then halt

домается как 2 пальца оба...
StrToFind(E8xxxxFBFF)
StrToReplace(9090909090)


 
Dib@zol ©   (2007-07-27 12:20) [32]

> домается как 2 пальца оба...

Реально. И даже не Софтом Айсом, а банальным Файлмоном...


 
SlymRO ©   (2007-07-27 12:28) [33]

MessageBox(0,"
Запуская эту программу, Вы соглашаетесь с тем, что с вероятностью 1/10 программа удалить каждый десятый файл с ваших дисков. Ано вам надо?","Предупреждение!",MB_YESNO);


 
Игорь Шевченко ©   (2007-07-27 12:29) [34]

www.delphilamer.ru


 
SlymRO ©   (2007-07-27 12:35) [35]

www.ProcToLogAV.net :)



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

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

Наверх





Память: 0.53 MB
Время: 0.039 c
2-1185191496
gen
2007-07-23 15:51
2007.08.19
Прошу помощи мастера


2-1185141282
Альберт
2007-07-23 01:54
2007.08.19
Проверка на существование файла или директории


5-1160122325
BadTester
2006-10-06 12:12
2007.08.19
Имеется задача pеализовать выдвижную панель на экpане


15-1185175924
Nic
2007-07-23 11:32
2007.08.19
Нужно покупать хорошие блоки питания


15-1184753380
tean-q
2007-07-18 14:09
2007.08.19
Китайская программа





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский