Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.09.16;
Скачать: CL | DM;

Вниз

Как реализовать в ShellExecute следующий вариант >>>   Найти похожие ветки 

 
rtm ©   (2007-08-22 21:22) [0]

Всем привет, подскажите пожалуйста как вставить из
локальной таблицы с базой данных адрес на файл в строку,
вызывающей метод ShellExecute:
.....
procedure TForm1.Button1Click(Sender: TObject);
begin
shellexecute(handle, "open", "вот сюда (?)", nil, nil, SW_SHOW);
end;
.....

хочу создать архив заказов, чтобы юзер мог щелкнуть на строку
в БД, и нажав кнопку "Просмотреть" ему окрывался, сохраненный
ранее файл (допустим отчет в формате .txt).

Пытался реализовать Label.Caption с указанием пути и имени файла
но при следующей вставке в строку, типа такого
.....
shellexecute(handle, "open", Label.Caption , nil, nil, SW_SHOW);
.....

компилятор конечно же меня обрадовал ошибкой, подскажите что
можно сделать.

С уважением, rtm.


 
Leonid Troyanovsky ©   (2007-08-22 21:41) [1]


> rtm ©   (22.08.07 21:22)  

> компилятор конечно же меня обрадовал ошибкой, подскажите
> что можно сделать.

Прочитать ее текст?

--
Regards, LVT.


 
Германн ©   (2007-08-22 22:26) [2]


> Пытался реализовать Label.Caption с указанием пути и имени
> файла
> но при следующей вставке в строку, типа такого
> .....
> shellexecute(handle, "open", Label.Caption , nil, nil, SW_SHOW);
>
> .....
>
> компилятор конечно же меня обрадовал ошибкой, подскажите
> что
> можно сделать.
>

Сколько же раз за один день объяснять одно и то же :)
http://delphimaster.net/view/2-1187783503/


 
rtm ©   (2007-08-23 14:10) [3]

извиняюсь за недоходчивость но что-то я здесь взаимосвязи не вижу, получается Label.Caption мне надо указать как переменная PChar?


 
Германн ©   (2007-08-23 14:19) [4]


> rtm ©   (23.08.07 14:10) [3]
>
> извиняюсь за недоходчивость но что-то я здесь взаимосвязи
> не вижу, получается Label.Caption мне надо указать как переменная
> PChar?
>

Точная формулировка:
переменную Label.Caption нужно передать как параметр приведя её тип к PChar.


 
Leonid Troyanovsky ©   (2007-08-23 14:31) [5]


> rtm ©   (23.08.07 14:10) [3]

> извиняюсь за недоходчивость но что-то я здесь взаимосвязи
> не вижу

В окошечке Compiler Messages можно выделить строку с ошибкой,
нажать Ctrl-С и вставить в текст своего послания (Paste):

[Error] UnitX.pas(17): Incompatible types: "String" and "PChar"

Если текст не понятен даже со словарем, то можно,
стоя на той самой строке, нажать F1 и прочитать поучительную статью: Incompatible types: "<element>" and "<element>"

--
Regards, LVT.


 
rtm ©   (2007-08-23 20:17) [6]

да нет ребят я не про перевод ошибки, я спросил как мне сделать так чтобы процедура ShellExecute открыла файл, адрес которой динамически меняется в компоненте Label.Caption, например, нажал я кнопку 1, Label.Caption имел бы значение C:\1.txt, нажал кнопку "Показать" и мне открылся бы этот файл, потом нажал я кнопку 2, Label.Caption имел бы значение С:\2.txt, нажал кнопку "Показать" и мне открылся ся бы этот файл и т.д.
Как это можно сделать?
Спасибо.


 
@!!ex ©   (2007-08-23 21:01) [7]

> [6] rtm ©   (23.08.07 20:17)

Говорят тебе - сделай приведение типов!!!!
Винда понятия не имеет о существовании типа string.
Зато знает, что такое PChar.
Учитывая, что особенности архитектуры без проблем позволяют приводить string к PChar, этим надо пользоваться.
Но готового кода я все равно не скажу.. Ибо если после 5 постов разжевывания не сделаешь сам, не стоит вообще программрованием заниматься.
ИМХО

P.S.
маленькая подсказочка:
Приведение типов делаеться так
тип(переменная)


 
rtm ©   (2007-08-24 06:51) [8]

ну ладно ладно что ж так грубо, ведь форум для того и создан, но всеравно спасибо и на этом


 
rtm ©   (2007-08-24 06:52) [9]

а заниматься мне программированием или нет это не Вам решать вообще, Москва не сразу строилась ИМХО


 
alshtam ©   (2007-08-24 06:58) [10]

shellexecute(handle, "open",PChar(Label.Caption), nil, nil, SW_SHOW);


 
alshtam ©   (2007-08-24 07:03) [11]

вернее наверное Pansichar вместо Pchar, попробуй как пойдет


 
rtm ©   (2007-08-24 07:35) [12]

alshtam
Спасибо большое ты оказался на 100 % прав, дельный совет, без всяких лишних комментариев, спасибо еще раз.


 
@!!ex ©   (2007-08-24 09:30) [13]

> [9] rtm ©   (24.08.07 06:52)

Конечно не мне решать.
Только разница между программированием и копипастом, как между ********* и пулеметом.


 
rtm ©   (2007-08-24 14:20) [14]

да видишь в чем дело это не банальный копипаст, это чтобы понятнее форумчанам было, на самом деле там все сложнее и продумней и сроки поджимают, если ты знаешь решение то подскажи, а если нет то зачем выеживаться


 
@!!ex ©   (2007-08-24 14:59) [15]

> [14] rtm ©   (24.08.07 14:20)

Так давно же сказали: Приведи тип string к PChar.
Вот это:
PChar(Label.Caption) - и есть то самое приведение.
Теперь ты знаешь, как приводить типы.
А если бы тупо получил код, который в [10] - то скопипастил бы его и в следюущий раз, когда нужно было скажем привести POinter к Cardinal, опять бы задавал этот вопрос на форуме.


 
Anatoly Podgoretsky ©   (2007-08-24 15:25) [16]

> @!!ex  (24.08.2007 14:59:15)  [15]

А думаешь, сейчас что то изменилось?


 
rtm ©   (2007-08-25 14:57) [17]


> А думаешь, сейчас что то изменилось?

да уж поверь изменилось :)


 
rtm ©   (2007-08-25 14:58) [18]

и вообще ребят давайте уже вопрос закроем, проблема решена на том и пост надо закрыть, не будем препираться кто тут умнее и прав.


 
Leonid Troyanovsky ©   (2007-08-25 17:42) [19]


> rtm ©   (25.08.07 14:58) [18]

> и вообще ребят давайте уже вопрос закроем, проблема решена

Cложней, продуманней и сроки -
это, соб-сно, надо и доказать.

--
Regards, LVT.



Страницы: 1 вся ветка

Текущий архив: 2007.09.16;
Скачать: CL | DM;

Наверх




Память: 0.52 MB
Время: 0.027 c
15-1187663110
Engine1
2007-08-21 06:25
2007.09.16
Как числа Single и Double представлены с точки зрения бит?


4-1174766392
Дмитрий Белькевич
2007-03-24 22:59
2007.09.16
Как зазипоповать файл win xp api?


15-1184659616
vajo
2007-07-17 12:06
2007.09.16
Бесплатные аналоги ПО


1-1183718871
azamatufa
2007-07-06 14:47
2007.09.16
FastReport счетчик группы внутри группы


3-1179312724
MZ
2007-05-16 14:52
2007.09.16
Импорт из *.dbf в FireBird