Текущий архив: 2007.09.16;
Скачать: CL | DM;
ВнизФайл Найти похожие ветки
← →
Bast (2007-08-22 15:51) [0]Здравствуйте! Есть прога допустим 123.exe она должна себе копировать на Диск Ц в папку программ файлес, но если я воспользуюсь функциекй copy то надо указывать имя проги т.е. copy(123.exe, c:\....), а как быть если у прога уже 312.exe ?
← →
Сергей М. © (2007-08-22 15:53) [1]Абракадабра какая-то)...
← →
Bast (2007-08-22 16:03) [2]Есть программа 123.exe мне нужно чтобы она сама себя скопировала на диск Ц
← →
Elen © (2007-08-22 16:05) [3]Этой функе фсе равно что копировать. Так и указывай как сказал
← →
Bast (2007-08-22 16:06) [4]Да, но если 123.exe переименовать в 321.exe то она уже не скорируется как быть?
← →
Вася Правильный (2007-08-22 16:20) [5]Application.ExeName
← →
Сергей М. © (2007-08-22 16:26) [6]
> если 123.exe переименовать в 321.exe то она уже не скорируется
Абракадабра ..
← →
Bast (2007-08-22 16:46) [7]Пытаюсь сделать вот так:
CopyFile(Application.ExeName,"c:\test.exe",true);
Но выдает ошибку:
Build
[Error] Unit1.pas(28): Incompatible types: "String" and "PAnsiChar"
[Fatal Error] Project2.dpr(5): Could not compile used unit "Unit1.pas"
← →
Сергей М. © (2007-08-22 16:53) [8]
> Bast (22.08.07 16:46) [7]
>
> Пытаюсь сделать вот так
> выдает ошибку
И ?
Твои-то действия каковы в этой ситуации ?
Кроме трындёжа в форуме ?
Спрасвку ты уже проштудировал ?
Что--то в ней не понял ?
Что ?
← →
wp2 © (2007-08-22 17:09) [9]А разве можно просто так самого себя копировать без хакерских методов.
> [Error] Unit1.pas(28): Incompatible types: "String" and "PAnsiChar"
Бери словарь англо-русский (должен быть по-любому). И переводи.
"Несовместимые типы String и PAnsiChar"
Теперь головой думаем, что надо сделать чтобы они были совместимыми?
ПРАВИЛЬНО!
Привести к нужному типу.
CopyFile(PAnsiChar(Application.ExeName),"c:\test.exe",true);
Как будто раньше никогда не приходилось типы приводить....
← →
wp2 © (2007-08-22 17:09) [10]Эх, нету на вас С++ там бы вообще погрязли...
← →
Bast (2007-08-22 17:12) [11]Какая функция переводит String в PAnsiChar? так понятнее?
← →
Dib@zol © (2007-08-22 17:22) [12]> [11] Bast (22.08.07 17:12)
ROFL +1
Объяснено же ж уже!!! PANSIChar()!!! Можно кстати просто PChar()!
← →
Bast (2007-08-22 17:54) [13]Всем спасибо
← →
grisme © (2007-08-22 18:40) [14]ну троян ведь небось :)
← →
Anatoly Podgoretsky © (2007-08-22 19:16) [15]> Bast (22.08.2007 17:54:13) [13]
Теперь дрожите мужики, сами напросились.
← →
Bast (2007-08-22 23:17) [16]Нет, это не троян
← →
DrPass © (2007-08-22 23:18) [17]
> Bast (22.08.07 23:17) [16]
> Нет, это не троян
В руках "умелого" программиста любая программа может стать хуже трояна...
← →
Bast (2007-08-22 23:46) [18]
> В руках "умелого" программиста любая программа может стать
> хуже трояна...
:)))))))))))
← →
wp2 © (2007-08-23 11:35) [19]>Какая функция переводит String в PAnsiChar? так понятнее?
Хм, а ведь есть такая функция, только не помню как называется. Счас поисчу.
Ага. вот оно. StrPCopy
var PC: PChar;
begin
StrPCopy(PC, Application.ExeName);
CopyFile(PC, "c:\test.exe", true);
end;
вроде так.
← →
wp2 © (2007-08-23 11:40) [20]уточнение:
var PC: PChar;
begin
New(PC);
StrPCopy(PC, Application.ExeName);
CopyFile(PC, "c:\test.exe", true);
end;
Проверено в Турбо Pascal 7.1 :-)
← →
wp2 © (2007-08-23 11:52) [21]Я вот только не вдуплил, что должна возвращать функция StrPCopy?
Вроде тоже возвращает строку...
тогда можно записать
var PC: PChar;
begin
New(PC);
CopyFile(StrPCopy(PC, Application.ExeName), "c:\test.exe", true);
end;
тоже работает.
Вот только в примерах я нигде не видел, чтобы ее использовали как функцию.
← →
wp2 © (2007-08-23 11:55) [22]То я когда-то вроде отлаживал приведение типа PChar.
И что вы думаете я обнаружил, какой именно ассемблерный код?
А никакой! Там была проверка на длину строку (не нулевая ли), а потом return :-)
Вот вам и всё приведение типа... :-)
← →
Leonid Troyanovsky © (2007-08-23 13:12) [23]
> wp2 © (23.08.07 11:35) [19]
> wp2 © (23.08.07 11:40) [20]
> wp2 © (23.08.07 11:52) [21]
> wp2 © (23.08.07 11:55) [22]
RTFM, RTFM & RTFM.
--
Regards, LVT.
← →
Anatoly Podgoretsky © (2007-08-23 15:10) [24]
> wp2 © (23.08.07 11:55) [22]
Это не приведение, а именно функция, кроме того ты код не до конца дочитал.
← →
Anatoly Podgoretsky © (2007-08-23 15:10) [25]Кстати в коде нет проверки длины, это ты выдумал.
Страницы: 1 вся ветка
Текущий архив: 2007.09.16;
Скачать: CL | DM;
Память: 0.49 MB
Время: 0.046 c