![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Создать файл [D7, XP]
Костик © (2008-11-18 10:50:00)Как быстро создать файл, влить в него строку 'Файл создан такойто программой' + либо что, чтобы получилось повно 512 байт на диске?
Германн (2008-11-19 00:50:00) [1]Бред.
Имхо.
palva (2008-11-19 00:45:00) [2]
> Скажите плиз как файл удалить?
Вот как удаляют файлы правильные пацаны:
"Если слежка угрожает вашей жизни, то необходимо заменить жесткий диск на новый, а старый диск разобрать и сточить с него верхний слой с помощью наждачной бумаги."
http://computerix.narod.ru/inter/gold3/pub/bez.htm
Anatoly Podgoretsky (2008-11-18 19:29:00) [3]Знаешь я доверчивый после 48 сообщений.
Правда зачем было создавать файл, вливать в него строку и тут же удалять с помощью DeleteFile.
Костик (2008-11-18 17:12:00) [4]Анатолий вы не поверите, но реально я только с помощью DeleteFile() справился, ну тобишь программно.
Anatoly Podgoretsky (2008-11-18 17:06:00) [5]> Костик (18.11.2008 16:51:45) [45]
Пригласи прогаммиста/системного администратора.
Костик (2008-11-18 17:05:00) [6]Скажите плиз как файл удалить?
Костик (2008-11-18 16:51:00) [7]Черт - реальный вирус. 80 метров удалить до сих пор не могу...
@!!ex (2008-11-18 16:10:00) [8]> OpenDialog1.Execute;
>
> FileName:=OpenDialog1.FileName;
>
> Path.Caption:= FileName;
:))
2 замечания:
1) Не стоит игнорировать нажатие на Cancel в диалоге.
2) Зачем лишняя переменная?
Костик (2008-11-18 15:55:00) [9]
> Vayrus (18.11.08 15:36) [42]
> Попробуй это:
спасибо
Vayrus (2008-11-18 15:36:00) [10]Попробуй это:
procedure TForm1.OpenClick(Sender: TObject);
var
FileName: string;
begin
OpenDialog1.Execute;
FileName:=OpenDialog1.FileName;
Path.Caption:= FileName;
end;
procedure TForm1.DeleteClick(Sender: TObject);
var
buffer: array [0..4095] of Byte;
max, n: LongInt;
i,j,k: Integer;
fs: TFileStream;
FileName: String;
begin
case Num.Position of
0: k:=1;
1: k:=3;
2: k:=5;
3: k:=10;
4: k:=15;
end;
FileName:= Path.Caption;
fs := TFilestream.Create(FileName, fmOpenReadWrite or fmShareExclusive);
try
for i := 1 to k do
begin
for j := Low(buffer) to High(buffer) do
buffer[j] := Random(256);
max := fs.Size;
fs.Position := 0;
while max > 0 do
begin
if max > SizeOf(buffer) then
n := SizeOf(buffer)
else
n := max;
fs.Write(Buffer, n);
max := max - n;
end;
FlushFileBuffers(fs.Handle);
end;
finally
fs.Free;
end;
Deletefile(FileName);
ShowMessage('Все пучком');
end;
Anatoly Podgoretsky (2008-11-18 15:07:00) [11]> clickmaker (18.11.2008 14:29:39) [39]
Не просто магнит, а очень мощный магнит.
Гораздо лучше шредер или печка.
Костик (2008-11-18 14:42:00) [12]
> тут магнит нужен.остальное все - фигня, ФСБ найдет
ну это слишком
clickmaker (2008-11-18 14:29:00) [13]> хочу, чтобы то, что удаляется с винта, нельзя было восстановить
> никогда в жизни...
тут магнит нужен.
остальное все - фигня, ФСБ найдет
Костик (2008-11-18 14:24:00) [14]Да, 80Мб за час - долговато... Зато на работу почти не влияет. Я правильно понимаю что размер 512 в данном случае оптимально подходит?
Юрий Зотов (2008-11-18 14:00:00) [15]> чтобы получилось повно 512 байт на диске?
На диске - не получится. На диске файл размером 512 байт займет 1 кластер.
sniknik (2008-11-18 13:52:00) [16]ну если весь, и если не жалко времени... флаг тебе руки в общем. делай.
Костик (2008-11-18 13:49:00) [17]
> то что новые запишутся совсем не туда куда ты хочешь, а
> туда куда удобнее системе.
я ж весь винт забиваю, и ничего не сканирую, удалил то что не надо, перезалил и все, просто как не знаю даже что...
Anatoly Podgoretsky (2008-11-18 13:35:00) [18]> sniknik (18.11.2008 13:33:32) [32]
Вот и вирус готов.
sniknik (2008-11-18 13:34:00) [19]> Да, а что не поможет?
то что новые запишутся совсем не туда куда ты хочешь, а туда куда удобнее системе.
sniknik (2008-11-18 13:33:00) [20]> Будем считать, что меня пытали:
считай что не зря. нет никаких гарантий что создание нового файла, не даст восстановить старый удаленный...
для того чтобы сделать то что ты хочешь нужно не создавать, а удалять старые с предварительно перезаписанным началом.
т.е. перед удалением открываешь файл на редактирование, пишешь в начало свою фигню, делаешь ему транкейт до 512 байт, и только после этого удаляешь.