Форум: "Основная";
Текущий архив: 2002.06.06;
Скачать: [xml.tar.bz2];
ВнизНе подскажите как сделать так, чтобы запущенная прога, скопировал Найти похожие ветки
← →
ЗГ (2002-05-24 08:17) [0]Приветствую!!!
Не подскажите как сделать так, чтобы запущенная прога, скопировалала себя в заранее определенную папку
← →
Song (2002-05-24 08:37) [1]CopyFile()
← →
Delphi5.01 (2002-05-24 08:57) [2]Ne tak uj eto legko kak kazal song net proceduri String to Pchar voooooooo
a vot polnoe reshenie uje proveril
type
TPChar = Record
Name : Array [0..Max_Path] of Char;
End;
.........
.........
Function StrToPChar(St : String) : TPChar;
Var i: integer;
begin
For i:=1 to Max_Path do
StrToPChar.Name[i-1]:=#0;
for i:=1 to Length(St) do
StrToPChar.Name[i-1]:=St[i];
end;
procedure TForm1.SpeedButton1Click(Sender: TObject);
var P : TPChar;
begin
p:=StrToPChar(Application.ExeName);
CopyFile(P.Name,"c:\CopyProg.exe",True);
end;
..........
..........
← →
Начинающий програмер (2002-05-24 10:54) [3]var OpStruc: TSHFileOpStruct;
frombuf, tobuf: Array [0..128] of Char;
FillChar( frombuf, Sizeof(frombuf), 0 );
FillChar( tobuf, Sizeof(tobuf), 0 );
StrPCopy( frombuf, "твой файл");
StrPCopy( tobuf, "C:\Windows\System32\" );
With OpStruc DO Begin Wnd:= Handle;
wFunc:= FO_COPY; pFrom:= @frombuf; pTo:=@tobuf;
fFlags:= FOF_NOCONFIRMATION or FOF_RENAMEONCOLLISION;
fAnyOperationsAborted:= False; hNameMappings:= Nil;
lpszProgressTitle:= Nil;
end;
ShFileOperation( OpStruc );
← →
Song (2002-05-24 11:00) [4]2Delphi5.01 © (24.05.02 08:57), 2 Начинающий програмер © (24.05.02 10:54)
>>>net proceduri String to Pchar
Скажу Вам по секрету... есть (шёпотом) - называется PChar()
CopyFile(PChar(Applcation.ExeName),PChar("куда-то там"),False);
← →
z_1 (2002-05-24 20:05) [5]я вот так делал...
Procedure TForm1.Something();
Var
hf : hfile;
fsz : dword;
buf : array[0..4096] of byte;
bytes, b_read : dword;
os : TFileStream;
begin
hf := CreateFile("откуда",
GENERIC_READ,
FILE_SHARE_READ,
nil,
OPEN_EXISTING,
FILE_ATTRIBUTE_NORMAL,
0);
os := TFileStream.Create("куда", fmCreate);
fsz := SetFilePointer(hf, 0, nil, FILE_END);
SetFilePointer(hf, 0, nil, FILE_BEGIN);
b_read := 0; bytes := 0;
while true do begin
ReadFile(hf, buf, 4096, bytes, nil);
os.Write(buf, bytes);
b_read := b_read + bytes;
if b_read >= fsz then break;
end;
os.Free;
CloseHandle(hf);
end;
← →
LazorenkoX (2002-05-24 21:49) [6]Ребята!!! PChar()!!!
← →
snoup (2002-05-25 20:21) [7]CopyFile(pchar(paramstr(0)),"c:\a.exe",true);ХА!
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2002.06.06;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.007 c