![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
|
Хочу написать GUI для UPX
Так вот сжим я выполняю через ShellExecute, а файлы лежат в TListView Как можно сочитать ShellExecute и TListView Выдает ошибку Цитата:
Код: Код:
procedure TForm1.sButton2Click(Sender: TObject);
var
i:integer;
List:TListItem;
begin
for i:=0 to sListView1.Items.Count-1 do
List := sListView1.Items[i];
ShellExecute(0,'open','cmd.exe', PChar('/c "' + ExtractFilePath(paramstr(0)) + 'upx.exe" '
+ List), nil, sw_hide);
end;P.S прошу сильно не пинать ![]() |
|
#2
|
||||
|
||||
|
Можно немного подсократить, попробуйте так
Код:
with sListView1 do
for i := 0 to Items.Count-1 do
ShellExecute(0, 'open', 'cmd.exe', PChar('/c "' +
ExtractFilePath(paramstr(0)) + 'upx.exe" ' + Items[i].Caption), nil, sw_hide);
З.Ы. Кстати, у нас такой уже лежит в исходниках Последний раз редактировалось Alegun, 09.07.2013 в 20:03. |
|
#3
|
||||
|
||||
|
Ну и на кой этой ГУЙ к Упыху?
|
|
#4
|
|||
|
|||
|
Цитата:
Я не знаю почему , но этот код выполняет действие ShellExecute только на 1 файл в ListBox-е Можно как то это исправить |
|
#5
|
||||
|
||||
|
Тогда похоже код должен быть примерно такой
Код:
var
i: integer;
s: string;
begin
for i := 0 to sListView1.Items.Count-1 do s:= Format('%s"%s" ',[s,sListView1.Items[i].Caption]);
ShellExecute(0,'open','cmd.exe',PChar('/c "'+ExtractFilePath(paramstr(0))+'upx.exe" '+s),nil,sw_hide);
end; |
|
#6
|
|||
|
|||
|
Цитата:
Странно но в применении данный код вообще не работает ни 1 из строк колонок В чем же косяк? |
|
#7
|
||||
|
||||
|
Скобки не поставили:
Код:
for i := 0 to sListView1.Items.Count-1
do begin
s:= Format('%s"%s" ',[s,sListView1.Items[i].Caption]);
ShellExecute(0,'open','cmd.exe',PChar('/c "'+ExtractFilePath(paramstr(0))+'upx.exe" '+s),nil,sw_hide);
end;Последний раз редактировалось Страдалецъ, 11.07.2013 в 00:38. |
|
#8
|
|||
|
|||
|
Вообще не получается
![]() |
|
#9
|
||||
|
||||
|
И не может получиться,
Код:
s := Format('%s"%s" ', [s, sListView1.Items[i].Caption]); |
|
#10
|
|||
|
|||
|
И как ее определить ?
|
|
#11
|
||||
|
||||
|
Забавно, каждый что-то находит и добавляет к коду, а весь блок лениво изучать.
![]() |
|
#12
|
|||
|
|||
|
Отпиши какую нибудь статью или мануал, хороший , я обезательно почитаю
|
|
#13
|
||||
|
||||
|
Цитата:
Дать готовый код не сложно, но хочется чтобы ТС немного сам подумал. |
|
#14
|
||||
|
||||
|
Цитата:
Не надо каждый раз упаковщик вызывать, достаточно ему передать весь список файлов, кодовкаКод:
for i := 0 to sListView1.Items.Count-1 do s:= Format('%s"%s" ',[s,sListView1.Items[i].Caption]); |
|
#15
|
||||
|
||||
|
Зачем самому разбираться, если можно зайти на форум и нагрузить дядей, чтоб они за него все сделали, разжевали и в рот положили.
|