Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 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.52 MB
Время: 0.023 c
2-1187544827
Bast
2007-08-19 21:33
2007.09.16
Криптовщик


2-1188120764
Daedr
2007-08-26 13:32
2007.09.16
Memo


15-1187302091
Install
2007-08-17 02:08
2007.09.16
Что можно почитать о цветовой схеме YCbCr на русском?


2-1187530743
Тмиофей
2007-08-19 17:39
2007.09.16
Как использоват свойство Tag


15-1187286257
Змей
2007-08-16 21:44
2007.09.16
rxlib