Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2006.08.20;
Скачать: [xml.tar.bz2];

Вниз

ShellExecute   Найти похожие ветки 

 
susergey   (2006-07-28 00:37) [0]

Мастера, здравствуйте!

Возникла проблема

ShellExecute (Handle, nil, PAnsiChar(CasPolPath), "/?", nil, SW_SHOWNORMAL);

На сколько я понял именно четвертый параметр передает в командную строку ключи запуска программы. В данном случае я хочу добиться выполнения Caspol.exe /?


 
Германн ©   (2006-07-28 00:59) [1]

Вроде бы да. Но смущает отсутствие пути к файлу Caspol.exe в вызове функции.


 
KilkennyCat ©   (2006-07-28 01:04) [2]

у меня работает.


 
KilkennyCat ©   (2006-07-28 01:04) [3]

> [1] Германн ©   (28.07.06 00:59)

нормально. если зарегистрировано.


 
KilkennyCat ©   (2006-07-28 01:05) [4]

к тому же, может у него CasPolPath содержит все.


 
Германн ©   (2006-07-28 01:17) [5]


> к тому же, может у него CasPolPath содержит все.

Я среагировал на
>  я хочу добиться выполнения Caspol.exe /?
и на то, что я, лично, не знаю что такое Caspol.exe.
И, кстати, что значит
> если зарегистрировано.
?
Я до сих пор знал только два способа "вызова" файла без указания пути к нему: либо файл находится в текущей директории, либо в директории прописанной в системной переменной PATH.

Ууу блин! пока писАл ответ ТС искал сей файл у меня на компе и таки нашел! d:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\CasPol.exe
Ну раз "Microsoft.NET\Framework", наверно "зарегистрировано". :-)


 
KilkennyCat ©   (2006-07-28 01:21) [6]

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


 
Германн ©   (2006-07-28 01:28) [7]


> KilkennyCat ©   (28.07.06 01:21) [6]
> ну, под зарегистрировано я и имел ввиду, что система знает,
>  куды идти.

Я понял, но прошу не зачислять меня в разрад "буквоедов"! :-)
Более всего меня изумило, что и меня есть вышеупомянутый файл!
Ну отстал от жизни. Со мной это часто бывает. :-(
Но я умею догонять! Что тоже часто бывало! :-)


 
susergey   (2006-07-28 01:30) [8]

В переменной PAnsiChar(CasPolPath) я и определил путь к CasPol.exe
А что значит
> если зарегистрировано.


 
KilkennyCat ©   (2006-07-28 01:33) [9]

> [8] susergey   (28.07.06 01:30)

ShellExecute(Handle, nil, "caspol.exe", "/?", nil, SW_SHOWNORMAL);
проверено тоже. работает.


 
susergey   (2006-07-28 01:34) [10]

Ну я просто теряюсь, у меня не идет!


 
KilkennyCat ©   (2006-07-28 01:36) [11]

> А что значит
> > если зарегистрировано.


1. прописаны пути, см. [5]
2. расширение файла ассоциировано с исполняемым файлом.


 
KilkennyCat ©   (2006-07-28 01:37) [12]

> [10] susergey   (28.07.06 01:34)


а что получается-то? Как именно "не идет"?


 
susergey   (2006-07-28 01:38) [13]

Вот процедура целиком:

var
   WinDir: string;
   WinDirP: PChar;
   Res: Cardinal;
   CasPolPath: string;
 begin
    WinDirP := StrAlloc(MAX_PATH);
    Res := GetWindowsDirectory(WinDirP, MAX_PATH);
     if Res > 0 then
       WinDir := StrPas(WinDirP);
       CasPolPath := WinDir + "\Microsoft.Net\Framework\v.1.1.4322\CasPol.exe";
       if ShellExecute (Handle, nil, PAnsiChar(CasPolPath), " /?", nil, SW_SHOWNORMAL)< 32 then
       begin
               ShowMessage("Не могу выполнить ShellExecute !")
       end;

Выдает ShowMessage, я проверял значения переменных пути правильные.


 
susergey   (2006-07-28 01:51) [14]

Спасибо
KilkennyCat ©  & Германн © Я нашел ошибку.
\Microsoft.Net\Framework\v.1.1.4322\CasPol.exe"
Точка после v не нужна, Спасибо, за участие!


 
KilkennyCat ©   (2006-07-28 01:52) [15]

procedure TForm1.BitBtn1Click(Sender: TObject);
var
 WinDirP: PChar;
 Res: Cardinal;
 CasPolPath: string;
begin
   WinDirP := StrAlloc(MAX_PATH);
   Res := GetWindowsDirectory(WinDirP, MAX_PATH);
   if Res > 0 then begin
      CasPolPath := StrPas(WinDirP) + "\Microsoft.Net\Framework\v.1.1.4322\CasPol.exe";
      if ShellExecute(Handle, nil, PAnsiChar(CasPolPath), " /?", nil, SW_SHOWNORMAL)< 32 then ShowMessage("Не могу выполнить ShellExecute!")
   end;
end;


так лучше.


 
KilkennyCat ©   (2006-07-28 01:54) [16]

точку я тож нашел ;) Но Вы - первее. Эт хорошо.


 
susergey   (2006-07-28 01:55) [17]

Спасибо, да действительно, лучше.


 
susergey   (2006-07-28 01:58) [18]

Еще один вопросик, после запуска с нужными мне ключами, консоль возвращает результат или положительный или отрицательный, как мне его скопировать в Memo?


 
KilkennyCat ©   (2006-07-28 02:10) [19]

можно перенаправить в файл,
или http://www.codenet.ru/progr/bcb/pipes.php



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

Форум: "Начинающим";
Текущий архив: 2006.08.20;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.48 MB
Время: 0.043 c
2-1153744854
vetas
2006-07-24 16:40
2006.08.20
ProcessMessages в Dll


15-1153550962
DillerXX
2006-07-22 10:49
2006.08.20
Второй раз пытаюсь - опять никак :(


15-1153734381
PSPF2003
2006-07-24 13:46
2006.08.20
Ошибка в 17 строке


2-1153393351
Mintos
2006-07-20 15:02
2006.08.20
Перевод фамилий


15-1153456060
Slym
2006-07-21 08:27
2006.08.20
Защищенный почтовый сервер...





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский