Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Запуск своей программы.
|
|||
|---|---|---|---|
|
#18+
Доброе время суток. Подскажите пожалуйста. Как в прогрмме вызвать свой .exe'шник с передачей ему (.exe'шнику) параметров. В качестве параметров надо использовать значения некоторых полей. Я писал "BC.exe m.nsf m.nfs". Естественно моя прога воспринимает всё буквально. Мне надо значения полей, а не сами символы "m.nsf". Наппишите пожалуйста по подробнее. Я с Фоксом "на вы". Заранее благодарен. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.11.2003, 18:03 |
|
||
|
Запуск своей программы.
|
|||
|---|---|---|---|
|
#18+
Подскажите пожалуйста. Как в прогрмме вызвать свой .exe'шник с передачей ему (.exe'шнику) параметров. В качестве параметров надо использовать значения некоторых полей. Я писал "BC.exe m.nsf m.nfs". m.nsf - строка... если нет то конвертишь в строку... в этой строке не должно быть КАВЫЧЕК(одинарных и двойных) x1 = strtran(m.nsf,"'","") x1 = strtran(m.nsf,'"',"") x2 = strtran(m.nfs,"'","") x2 = strtran(m.nfs,'"',"") param1 = "'" + x1 +"'" param2 = "'" + x2 +"'" ! /N BC.exe ¶m1 ¶m2 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.11.2003, 18:21 |
|
||
|
Запуск своей программы.
|
|||
|---|---|---|---|
|
#18+
¶m1 ¶m2 Во блин конвертнуло... А я написал: ¶m1 -> амперсант+param1 ¶m2 -> амперсант+param2 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.11.2003, 18:28 |
|
||
|
Запуск своей программы.
|
|||
|---|---|---|---|
|
#18+
Если учесть, что в этом поле не встречается ни каких кавычек, то как надо написать? Я написал вот так. param1 = "'" + m.nsf + "'" ! /N BC.exe ¶m1 НЕ ПОЛУЧИЛОСЬ. Программа воспринимает только одинарную кавычку в качестве первого параметра. Куда девается всё остальное не понятно. Подскажите... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.11.2003, 19:03 |
|
||
|
Запуск своей программы.
|
|||
|---|---|---|---|
|
#18+
Почему все забывают про API? DECLARE integer WinExec IN kernel32 string lpCmdLine, integer nCmdShow WinExec('BC.exe '+m.nsf+' '+ m.nfs, 10) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.11.2003, 19:07 |
|
||
|
Запуск своей программы.
|
|||
|---|---|---|---|
|
#18+
Сорри обшибся... У тебя наверно вначале m.nsf стоит пробел что б данные типа: m.nsf = "a1 a2 a3" не передавались в exe'шник как a1 - первый параметр a2 - второй a3 - трейтий Надо строку помещать в двойную кавычку а не в одинарную v1 = '"' + Alltrim(m.nsf) + '"' ! /N BC.exe &v1 Проверил -> пашит... lnu: WinExec - все равно не спасет если в строке есть пробелы... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.11.2003, 19:29 |
|
||
|
Запуск своей программы.
|
|||
|---|---|---|---|
|
#18+
WinExec - все равно не спасет если в строке есть пробелы... Ты о чем? s="Explorer.exe c:\" && Строка с пробелом WinExec(s, 10) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.11.2003, 19:39 |
|
||
|
Запуск своей программы.
|
|||
|---|---|---|---|
|
#18+
lnu: WinExec - все равно не спасет если в строке есть пробелы... Ты о чем? s="Explorer.exe c:\" && Строка с пробелом WinExec(s, 10) А если s="Explorer.exe c:\ d:\ e:\" && Строка с 3 пробелами где "c:\ d:\ e:\" - параметр Я говорил если строка - параметр имеет пробел... что б оно не разнесло эту строку как два параметра... И зачем WinExec Есть и стандартная RunAndWait в Foxrun.pif Оно еще и ждет пока выполнится... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.11.2003, 19:49 |
|
||
|
Запуск своей программы.
|
|||
|---|---|---|---|
|
#18+
Сорри не то скопировал... Есть и стандартная RunAndWait в Tool.dll Оно еще и ждет пока выполнится... DECLARE Integer RunAndWait in Tools String, Integer strarch = "vfp.exe" lcVerWin = os() If 'NT' $ lcVerWin or '5.0' $ lcVerWin or '5.1' $ lcVerWin strfoxrun = 'cmd.exe' Else strfoxrun = 'foxrun.pif' Endif Run_Wait=RunAndWait('&strfoxrun /C &strarch',1) Че то я ПО-завершении рабочего дня... совсем рассеяным стал ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.11.2003, 20:06 |
|
||
|
Запуск своей программы.
|
|||
|---|---|---|---|
|
#18+
В таком случае в MSDN написано The executable name is treated as the first white space-delimited string in lpCmdLine. If the executable or path name has a space in it, there is a risk that a different executable could be run because of the way the function parses spaces. The following example is dangerous because the function will attempt to run "Program.exe", if it exists, instead of "MyApp.exe". WinExec("C:\Program Files\MyApp", ...) If a malicious user were to create an application called "Program.exe" on a system, any program that incorrectly calls WinExec using the Program Files directory will run this application instead of the intended application. To avoid this problem, make sure the application name is enclosed in quotation marks as shown in the example below. WinExec("\"C:\Program Files\MyApp.exe\" -L -S", ...) И зачем WinExec Есть и стандартная RunAndWait в Foxrun.pif Оно еще и ждет пока выполнится... Если надо подождать, тогда согласен. А если за дачу поставить на оборот. Есть у меня файл с расширением, например, *.xxx. Как привязать к файлу с таким расширением, мою программу и в ней работать с файлом? Т.е. кликаем по файлу с расширением doc, у нас загружается Word, а в нем наш файл. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.11.2003, 20:09 |
|
||
|
|

start [/forum/topic.php?fid=41&msg=32316513&tid=1597626]: |
0ms |
get settings: |
11ms |
get forum list: |
21ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
140ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
63ms |
get tp. blocked users: |
1ms |
| others: | 277ms |
| total: | 532ms |

| 0 / 0 |
