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

Вниз

Мистика !))   Найти похожие ветки 

 
Zheksonz   (2013-02-04 00:04) [0]

программа запускается:
ShellExecute(Handle, "open", Pchar("C:\Program Files\ProPoster\ProPoster.exe"), nil, nil, SW_SHOWNORMAL);

Изображение открывается:
ShellExecute(Handle, "open", Pchar(OpenDialog2.FileName), nil, nil, SW_SHOWNORMAL);

а вот в таком варианте не запускается:
ShellExecute(Handle, "open", Pchar("C:\Program Files\ProPoster\ProPoster.exe " + OpenDialog2.FileName), nil, nil, SW_SHOWNORMAL);

несмотря на то, что из командной строки без проблем программа открывает изображение. Мистика ?


 
Zheksonz   (2013-02-04 00:16) [1]

Хотя может и не мистика... Вообще-то ранее, в делфи 7, я благополучно использовал ф-цию WinExec, но в Delphi XE Embarcadero WinExec никак не "скушает" мою строку(((


 
RWolf ©   (2013-02-04 00:36) [2]

C:\Progra~1\…


 
Zheksonz   (2013-02-04 00:49) [3]


> RWolf ©   (04.02.13 00:36) [2]


да уже как только не пробовал, не выходит(((

Странно, что спокойно "кушается" WinExec("C:\Program Files\ProPoster\ProPoster.exe ", SW_SHOW) но никак не "скушается"
st: string;
st := OpenDialog2.FileName;
WinExec("C:\Program Files\ProPoster\ProPoster.exe " + st, SW_SHOW)


 
sniknik ©   (2013-02-04 01:52) [4]

> да уже как только не пробовал, не выходит(((
правильно не пробовал

пара вопросов
1 нафига у функции параметр для передачи параметров? и почему у тебя там nil?
2 что говорит код возврата функции?
ну и ладно третий, почему в одном случае к pchar приводится в другом нет?


 
Германн ©   (2013-02-04 01:55) [5]


> несмотря на то, что из командной строки без проблем программа
> открывает изображение. Мистика ?

Никакой мистики нет. Есть незнание функции ShellExecute и её параметров.
А конкретно третьего и четвертого. Возможно что и пятого тоже.


 
Германн ©   (2013-02-04 02:00) [6]


> ну и ладно третий, почему в одном случае к pchar приводится
> в другом нет?

Этого автор (судя по его ранним топикам) до сих пор "неасилил".
Ибо не нашел примеров использования WinExec с использованием приведения типов :)


 
Медвежонок Пятачок ©   (2013-02-04 08:43) [7]

Мистика ?

...уистика!

OpenDialog2.FileName

OpenDialog2.Options := OpenDialog2.Options + [ofNoChangeDir];

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


 
Anatoly Pogoretsky   (2013-02-04 10:36) [8]

> Zheksonz  (04.02.2013 00:16:01)  [1]

Только чуваки используют в
наше время WinExec из времен Win 3.11


 
sniknik ©   (2013-02-04 10:54) [9]

> WinExec из времен Win 3.11
а ShellExecute не устарел? а то там какое то не адекватное получение ошибок... был даже случай получил "неизвестную" т.е. номер не из списка в описании msdn, пришлось переделать на ShellExecuteEx там с гетластеррор проблем нет.


 
sniknik ©   (2013-02-04 10:57) [10]

а да еще вспомнил сразу как запопостил, ShellExecute при runas и юзерском отказе в процессе говорит "отказано в доступе" (5-я ошибка), а вот гетластеррор после ShellExecuteEx более адекватен, ошибка - "отмена пользователя" (что-то типа, дословно не помню).


 
Zheksonz   (2013-02-04 11:42) [11]

Добрый день, sniknik и Медвежонок Пятачок!
Спасибо за помощь!

Германн ©   (04.02.13 01:55) [5] Anatoly Pogoretsky   (04.02.13 10:36) [8]

Ну не всем же дано быть такими крутыми программистами, которые ещё никому не дали дельный совет, зато в числе высокомерных и злорадствующих - первые! Должно быть вЫ собой гордитесь ))


 
Anatoly Pogoretsky   (2013-02-04 11:42) [12]

> sniknik  (04.02.2013 10:54:09)  [9]

Может и устарел, но таковым
пока не признается. А вот  
WinExec признан
Выписка
> This function is provided for compatibility with earlier versions of
Windows. For Win32-based applications, use the CreateProcess function.


 
Anatoly Pogoretsky   (2013-02-04 11:45) [13]

> sniknik  (04.02.2013 10:57:10)  [10]

Микрософт умные, как знали
что столько маргиналов
окажется и создали
эмуляцию функции WinExec


 
Inovet ©   (2013-02-04 11:48) [14]

> [12] Anatoly Pogoretsky   (04.02.13 11:42)
> Выписка

Кто же их читает, есть же копипаст из Инета.


 
Zheksonz   (2013-02-04 11:53) [15]

Просто в седьмой версии Делфи, используя Winexec, с конструкцией Winexec(PChar("c:\111\222\123.exe " + OpenDialog2.FileName)) без проблем запускалась программа, и запускала файл, имя и путь к которому я получаю из OpenDialog2.FileName, и мне было фиолетово, признана эта ф-ция устаревшей или нет, я же не с целью выпендриться использую те или иные ф-ции...


 
Inovet ©   (2013-02-04 12:04) [16]

> [15] Zheksonz   (04.02.13 11:53)
> мне было фиолетово, признана эта ф-ция устаревшей или нет

Зато теперь не фиолетово стало, а нет чтобы сразу сделать как надо ещё тогда.


 
sniknik ©   (2013-02-04 12:14) [17]

> я же не с целью выпендриться использую те или иные ф-ции...
с целью по извращаться после? мазохист?


 
Zheksonz   (2013-02-04 12:22) [18]


> sniknik ©   (04.02.13 12:14) [17]


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


 
Zheksonz   (2013-02-04 12:38) [19]

Почти у каждого здесь находящегося есть машина, которую вы чуть ли не каждый день используете... Большинство из вас в общих чертах знает что и как устроено, но если вдруг расход увеличился или ещё какая неисправность появляется, то вы не станете перерывать всю инструкцию, чтобы разобраться какой штуцер нужно подкрутить... Вы просто спросите у профессионала (мастера), что это может быть... Один мастер подскажет, поможет, не вдаваясь в подробности, почему это вы так слабо подкованы, ведь вы пользуетесь машиной достаточно давно, а другой, которого вы конечно же муdаком будете считать и будете правы, не поможет толком, зато кучу гадостей наговорит не по сути, а о том какой он умный, в отличие от вас... Я ничего не упустил, Анатолий Подгорецкий?


 
sniknik ©   (2013-02-04 12:46) [20]

> зато кучу гадостей наговорит не по сути, а о том какой он умный, в отличие от вас...
это наверное от точки зрения зависит или воспитания... но вот со своей стороны не вижу от него ни гадостей, ни рассказов о том какой он умный, но вижу вполне себе "по сути" сообщение об устаревшей функции.

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

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


 
знайка   (2013-02-04 12:55) [21]

Аналогия неправильная, тут пришел программист к программисту, а там сантехник к слесарю. :)


 
Плохиш ©   (2013-02-04 12:55) [22]


> Zheksonz   (04.02.13 12:38) [19]

Судя по многа букаф, вам надо нанять программиста.

PS. водитель (пользователь автомобиля) и мастер по ремонту ("программист" автомобиля) - это разные понятия.


 
Zheksonz   (2013-02-04 12:57) [23]


> sniknik ©   (04.02.13 12:46) [20]


Если чувак это не оскорбление, то кто из здесь присутствующих готов сказать, что он чувак?

И потом, нашлись же те, кто дал мне правильный, полезный совет, без употребления слова "чувак"... и он мог подсказать, что сейчас лучше использовать CreateProcess, т.к. winexec устарел, но как же при этом он самоутвердится? Ведь просто помощь, тем более в категории "Начинающим", не даст ему никакого самоудовлетворения, а вот оскорбит человека, совсем другой эффект прочувствует... Это очевидно, так что не нужно никого выгораживать. Каждый получает по заслугам. И если я признал сою слабую подкованность и перебрался в категорию начинающим, то пусть и он признается в высокомерии и невоспитанности.


 
Zheksonz   (2013-02-04 13:01) [24]


> Плохиш ©   (04.02.13 12:55) [22]


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


 
Anatoly Podgoretsky ©   (2013-02-04 13:16) [25]

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


 
Zheksonz   (2013-02-04 13:28) [26]


> Anatoly Podgoretsky ©   (04.02.13 13:16) [25]
> Сколько лет вижу на форуме, а все одни и теже жалобы, может
> пора заняться собой, а не искать врагов вокруг


Повторю для тех, кто не слышит других, т.к. слишком занят собой, я не программист, я просто использую программирование для автоматизации моей непосредственной работы, которой у меня предостаточно. Что не даёт мне возможности углублённо заниматься именно программированием. При этом я естественно не являюсь специалистом или мастером в программировании, поэтому я и задаю вопросы в категории начинающим.

По мере возможности я всё же стараюсь разобраться, но конкретно в этом случае меня сбило с толку то, что вроде бы конструкция правильная, ведь она проходила в делфи 7, но почему-то не работает в новом компиляторе.

А ответ-то был прост, если его не разбавлять оскорблениями, и смог его дать только sniknik ©   (04.02.13 01:52) [4] и наверняка совет Медвежонка Пятачка ©   (04.02.13 08:43) [7] пригодится. Им спасибо!


 
clickmaker ©   (2013-02-04 13:31) [27]

> наверняка совет Медвежонка Пятачка ©   (04.02.13 08:43)
> [7] пригодится

не пригодится, если указываешь полные пути


 
Zheksonz   (2013-02-04 14:22) [28]


> clickmaker ©   (04.02.13 13:31) [27]
> > наверняка совет Медвежонка Пятачка ©   (04.02.13 08:43)
>
> > [7] пригодится
>
> не пригодится, если указываешь полные пути


Да, указываю полные пути, но всё равно считаю совет Медвежонка Пятачка полезным, т.к. он демонстрирует один из возможных вариантов неработоспособности кода.


 
Dennis I. Komarov ©   (2013-02-04 19:49) [29]


> Я не программист... я просто, по столько по скольку, использую
> программирование для автоматизации своей непосредственной
> работы...

Время - это невостонавливаемый ресурс, а Вы его тратите зря...



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

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

Наверх




Память: 0.55 MB
Время: 0.006 c
15-1368622352
картман
2013-05-15 16:52
2013.10.27
очиститель воздуха


2-1360060314
Чайник
2013-02-05 14:31
2013.10.27
Как поместить картинки в ComboBoxEx


15-1368216598
Bitt
2013-05-11 00:09
2013.10.27
Передать управление при изменении byte


15-1368294835
Дмитрий С
2013-05-11 21:53
2013.10.27
Почему


1-1317227566
sniknik
2011-09-28 20:32
2013.10.27
Ситуация... Citrix and TPrinter поддержка "отображаемых"