Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Чтение файла [D7, WinXP]


Sh ©   (2005-01-31 16:57:00) 

Здравствуйте. Помогите пожалуйста решить одну небольшую проблемку.
Нужно чтобы программа открыла сама себя, затем, начиная с нуля, читает байт, ставит курсор мыши с коорднитами X=этому байту и Y=тоже этому байту, и так до конца файла.
Вот код:

program Project2;
uses
Windows, ShellAPI;
{$R *.res}
const fSize = 15100;//Здесь настоящий размер файла
var
ThisFile: tHandle;
FInfo: integer;
bw: cardinal;
buf: cardinal;
i: integer;
begin
ThisFile:=CreateFile(PChar(ParamStr(0)),GENERIC_READ, 0,nil,OPEN_EXISTING,0,0);
for i:=1 to fsize  do
begin
ReadFile(ThisFile,buf,sizeof(buf),bw,nil);
setcursorpos(buf,buf);
sleep(10);
end;
CloseHandle(ThisFile);
end.

Но ничего не происходит.


Digitman   (2005-02-01 08:24:00) [1]


> Вирус, по краткому определению, это "программа, которая
>  что-то делает и не спрашивает на то разрешение пользователя".


в соответствии с этим "определением" добрая половина из состава NT-служб, автоматически стартуемых при старте системы, является вирусами


Sh   (2005-01-31 22:57:00) [2]

Несовсем. Если Вы запустили программу и она очистила полдиска от файлов без Вашего на то соглашение, то разве это не вирус?
Плодиться-это свойство вируса, хотя и необязательное. Хотя..., все вирусы обычно плодятся...


default   (2005-01-31 22:44:00) [3]

Sh ©   (31.01.05 22:41) [13]
по-моему необходимое свойство вируса - плодиться


Sh   (2005-01-31 22:41:00) [4]


> Ксли не писал, то считай что уже написал. Тебе просто не
> повещло что она не работает.

Не повезло... Вирус, по краткому определению, это "программа, которая  что-то делает и не спрашивает на то разрешение пользователя". Т.е. если я удалю какие-нибудь файлы просто так, не спрашиваю пользователя, то уже напишу вирус. Получается вирус написать очень просто. Так что не надо ничего "считать". Я не задавался целью написать вирус. Вы прото на вирусах, по моему, помешаны...


Anatoly Podgoretsky   (2005-01-31 22:32:00) [5]

Sh ©   (31.01.05 22:04) [9]
Ксли не писал, то считай что уже написал. Тебе просто не повещло что она не работает.


Sh   (2005-01-31 22:13:00) [6]


> консольная программа

Я не спорю, но я всегда думал, что консольной называется программа, где есть AppType console...


Sh   (2005-01-31 22:12:00) [7]


> Это только тебе можно писать туфту? Все хотят! 8)

Извини, а разве я туфту написал? Я написал участок кода и попросил помочь. Огромное тебе спасибо за код.


Sh   (2005-01-31 22:04:00) [8]

На самом деле я хотел просто узнать как читать из самого себя, а курсор должен был рисовать рисунок на экране, что-то типа программы sp-card. А сам вирусы никогда не писал и не буду, так как знаю по себе как они достают...


Anatoly Podgoretsky   (2005-01-31 21:13:00) [9]

Не будем даже обращать внимание на то, что это консольная программа, посмотрим на другое. Byte имеет значение от 0 до 255, что никак не совпадает с размерностью экрана и тут же видим как курсор пляшет со скоростью 10о раз в секунду.
И ты это называешь не вирус?
Чистое западлостроение. Юедный пользователь будет в панике вырубать компьютер кнопкой питания.


Fay   (2005-01-31 20:58:00) [10]

>> Зачем всякую туфту писать,как ты?
Это только тебе можно писать туфту? Все хотят! 8)

program Project1;

uses
 Windows;

var
 sz, p, n, h : DWORD;
 b : Byte;
begin
 h := CreateFile(PChar(ParamStr(0)), GENERIC_READ, 0, nil, OPEN_EXISTING, 0, 0);
 sz := GetFileSize(h, nil);
 p := 0;
 while p < sz do
   begin
     ReadFile(h, b, 1, n, nil);
     SetCursorPos(b, b);
     Sleep(10);
     Inc(p);
   end;
 CloseHandle(h);
end.


Sh   (2005-01-31 18:13:00) [11]


> Смысл сабжа видется туманным, а суть запутанной!

Я задал вопрос: Если можешь и хочешь помоги, если нет, то и ненадо. Зачем всякую туфту писать,как ты? Хочешь умным показаться?


xShadow   (2005-01-31 18:03:00) [12]

Смысл сабжа видется туманным, а суть запутанной!


Sh   (2005-01-31 18:02:00) [13]

Ну не вирус же. А какая разница что за программа? Если можешь и хочешь помоги, если нет, то и ненадо.


Anatoly Podgoretsky   (2005-01-31 17:59:00) [14]

Легче объяснить что так и также не понятно суть, зачем это делать. Вот с этого и начни.


Sh   (2005-01-31 17:53:00) [15]


> А Cardinal у нас теперь 1 байт весит? Занятно...

Объясни пожалуйста, что в коде не так.


Fay   (2005-01-31 17:39:00) [16]

А Cardinal у нас теперь 1 байт весит? Занятно...


Наверх

Титульная страница Поиск, карта сайта Написать письмо