Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 10.01.2013, 14:17   #1
proxex
Новичок
Джуниор
 
Регистрация: 10.01.2013
Сообщений: 2
По умолчанию Не могу найти ошибку


Объясните что ему не нравиться?
Код:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ShellAPI, ExtCtrls;

type
  TForm1 = class(TForm)
    Timer1: TTimer;
    Timer2: TTimer;
    procedure FormCreate(Sender: TObject);
    procedure Timer1Timer(Sender: TObject);
    procedure Timer2Timer(Sender: TObject);
  private
  i:integer;
  massages:array[0..7] of Pchar;
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
 ShellExecute (Application.Handle, 'open','c:\windows\notepad.exe',nil,nil,SW_MAXIMIZE);
 i := 0;
 messages[0] := 'Просто любой текст.';
 messages[1] := 'Просто любой текст.';
 messages[2] := 'Просто любой текст.';
 messages[3] := 'Просто любой текст.';
 messages[4] := 'Просто любой текст.';
 messages[5] := 'Просто любой текст.';
 messages[6] := 'Просто любой текст.';
 messages[7] := 'Просто любой текст.';
end;

procedure TForm1.Timer1Timer(Sender: TObject);
var
 wnd:hwnd;
begin
wnd:=findwindow(nil,'Диспетчер задач Windows');
if (wnd<> 0) then
begin
sendmessage(wnd, wm_destroy,0,0);
end;
BlockInput (true);
end;

procedure TForm1.Timer2Timer(Sender: TObject);
var
wnd,wnd1:hwnd;
dc:hdc;
j:integer;
begin
wnd:=findwindow(nil,'Безымянный - Блокнот');
if wnd <> 0 then begin
wnd1:= FindwindowEx (wnd, 0, 'Edit', nil);
dc:=getdc(wnd1);
for j := 0 to length(messages[i]) do
begin
textout(dc,1,i*15,messages[i],j);
sleep(100);
end;
Timer2.Interval :=5000;
inc(i);
if i > 5 then
begin
Timer2.Enabled :=false;
sendmessage(wnd, wm_destroy,0,0);
BlockInput (false);
Form1.Close;
end;
end;

end;

end.

Последний раз редактировалось Stilet; 10.01.2013 в 14:39.
proxex вне форума Ответить с цитированием
Старый 10.01.2013, 15:44   #2
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

ну, для начала опечатка:
Цитата:
Код:
private
  i:integer;
  massages:array[0..7] of Pchar;
...
procedure TForm1.FormCreate(Sender: TObject);
begin
 ShellExecute (Application.Handle, 'open','c:\windows\notepad.exe',nil,nil,SW_MAXIMIZE);
 i := 0;
 messages[0] := 'Просто любой текст.';

Последний раз редактировалось Serge_Bliznykov; 10.01.2013 в 15:47.
Serge_Bliznykov вне форума Ответить с цитированием
Старый 10.01.2013, 16:44   #3
proxex
Новичок
Джуниор
 
Регистрация: 10.01.2013
Сообщений: 2
По умолчанию

Цитата:
Сообщение от Serge_Bliznykov Посмотреть сообщение
ну, для начала опечатка:
Спасибо!!! вот же я баран.. такую ошибку допустил...=)
proxex вне форума Ответить с цитированием
Старый 10.01.2013, 16:59   #4
IHaveAPussy
Новичок
Джуниор
 
Регистрация: 10.01.2013
Сообщений: 8
По умолчанию

А можешь объяснить для чего твой код используется?)
Я новичок, пытаюсь понять.
IHaveAPussy вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Не могу найти ошибку!!! bad9 Помощь студентам 1 14.06.2012 09:39
не могу найти ошибку Nix128 Microsoft Office Excel 8 24.05.2011 15:05
Не могу найти ошибку... pufystyj PHP 7 03.03.2011 08:36
не могу найти ошибку Berg_13 Помощь студентам 0 16.05.2010 21:53