![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Глюк с ListView [D7, Win95/98, WinME, NT4, Win2k, WinXP]
K_O_T © (2002-11-14 14:36:00)Я сейчас пишу(уже написал можно считать) базу данных для организации и быстрого доступа к некоторым файлам (преимущественно *.html, *.htm и т.д) ....вот...
Мне надо их запускать при клике по строчке в ListView....но они ни хотят этого запускаться делаю так:
Код:
procedure TForm1.dxDNListView1DblClick(Sender: TObject);
begin
try
ShellExecute(0,"open", dxDNListView1.Selected.SubItems.GetText {в этой строке dxDNListView1 адрес написан} , nil, nil, SW_MAXIMIZE );
form1.Deactivate
except
MessageDlg("Error",
mtWarning, [mbYes], 0)
end;
end;
не пашет гадина ...при исполнении возвращается код ошибки
ERROR_FILE_NOT_FOUND (что значит думаю сами знаете) ...а файл есть ....и если написать не dxDNListView1.Selected.SubItems.GetText а например "с:\Foo.exe" то пашет...
тогда я делаю так
Код:
ShellExecute(0,"open","Explorer.exe",dxDNListView1.Selected .SubItems.GetText,nil,SW_MAXIMIZE );
интернет странички открываются правильно а *.exe или *.doc придлагает сохранить на диске или открыть
прикол в том что WinExec и CreateProsses тоже не работают...тоже файл не видят..если
dxDNListView1.Selected.SubItems.GetText и
видят если "c:\foo.exe"
P.s. dxDNListView тоже что TListView только посимпотнее
Помогите Plz...
K_O_T (2002-11-14 16:51:00) [1]>>DieHard © такого нет
>>Всем ..проблема решена
ShellExecute(0,"open", Pchar(dxDNListView1.Selected.SubItems.CommaText), nil, nil,SW_MAXIMIZE );
KoluChi (2002-11-14 15:36:00) [2]Если FileExists файл не находит, значит его нет.
советую breakpoint, пошаговый debug.
DieHard (2002-11-14 15:32:00) [3]2K_O_T :
И все-таки я бы тебе настоятельно посоветовал рассмотреть вариант с dxDNListView1.Selected.SubItems[0]
Велика вероятность, что dxDNListView1.Selected.SubItems.GetText возвращает строку с символами перевода #13#10
K_O_T (2002-11-14 15:14:00) [4]>>KoluChi не находит а файл есть
K_O_T (2002-11-14 15:02:00) [5]Хотяя...подожжи...dxDNListView1.Selected .SubItems.GetText возвращает Pchar ...а dxDNListView1.Selected.SubItems.Text string
но это нам не поможет
K_O_T (2002-11-14 14:59:00) [6]>>Неее...возвращает он то что нужно например Showmessage(dxDNListView1.Selected .SubItems.GetText) выдает например с:\x\r\ere\x.exe
Marcus (2002-11-14 14:56:00) [7]А что у тебя GetText возвращает, смотрел в отладчике? Если у тебя SubItem"ов несколько это будет несколько строк, поскольку StringList. Может надо что-то типа dxDNListView1.Selected .SubItems[0] ?
KoluChi (2002-11-14 14:55:00) [8]А FileExists(dxDNListView1.Selected .SubItems.GetText()) чему равно?
K_O_T (2002-11-14 14:53:00) [9]WinExec тоже не пашет если в качестве параметра указать dxDNListView1.Selected .SubItems.GetText(*Тут путь к файлу хранится*)
KoluChi (2002-11-14 14:46:00) [10]Попробуй WinExec - старая функция, параметров всего 2, но тебе может быть поможет.