Update cookies preferences
Promotic

ShellExecute - metoda obiektu Pm

Opis:
Uruchomienie lub wydrukowanie pliku lub dokumentu zarejestrowanego.
Składnia:
Long ShellExecute(String sOperation, String sFile, String sParameters, String sFolder, Variant vOptions, [String sRequestId], [Function onComplete])
Parametry:
sOperation(String) Typ operacji z plikiem. Jeżeli parametr jest pusty łańcuch, wtedy parametrem domyślnym jest wartość "open".
"open" - Plik ma zostać otwarty razem ze skojarzoną aplikacją
"print" - Plik ma zostać wydrukowany
"runas" - Jak "open", ale z uprawnieniami administratora. Uwaga! Zostanie wywołany system UAC Windows (szare tło ekranu oraz okno potwierdzające przejście na wyższy poziom uprawnień).
sFile(String) Nazwa pliku ze ścieżką.
Jeżeli nie jest wprowadzona pełna ścieżka, wtedy zostanie uzupełniona względem do foldera aplikacji.
Jest zalecane stosowanie ścieżki w składni PROMOTIC - patrz PROMOTIC ścieżka do plików lub folderów.
sParameters(String) Parametry, których przekazanie aplikacji skojarzonej z uruchamianym plikiem jest konieczne
sFolder(String) Ścieżka do foldera roboczego aplikacji.
Jest zalecane stosowanie ścieżki w składni PROMOTIC - patrz PROMOTIC ścieżka do plików lub folderów.
vOptions(Variant) Dodatkowe parametry
KeyVal - Dodatkowe parametry określone w postaci łańcucha. Dane są tutaj w formacie KeyVal, na przykład "state:hidden;timeout:10;"
state - Określa tryb wyświetlani aplikacji.
normal (domyślnie) - zwykła aktywna
max - zmaksymalizowana aktywna
min - zminimalizowana aktywna
hidden - ukryta
normal_na - zwykła nie aktywna
min_na - zminimalizowana nie aktywna
timeout - Określa maksymalny czas operacji w sekundach. Domyślnie jest -1, oznaczające nieskończony timeout.
Jeżeli operacja nie zostanie zakończona w określonym czasie, wtedy wywoływana jest funkcja onComplete(ev), gdzie wartość zwrotna (parametr ev.Value) będzie undefined (nieprawidłowa).
Number - Stary sposób określenia trybu wyświetlenia aplikacji przy pomocy liczby:
0 - ukryta
1 - zwykła aktywna
2 - zminimalizowana aktywna
3 - zmaksymalizowana aktywna
4 - zwykła nie aktywna
6 - zminimalizowana nie aktywna
sRequestId[opcjonalne] (String) Identyfikator zarejestrowanej funkcji zdarzenia.
- Uniemożliwia ponowne zarejestrowanie tej samej funkcji.
- Może zawierać dowolne znaki (nie jest to nazwa systemowa).
- Nie może być pusty łańcuch.
onComplete[opcjonalne] (Function) Parametr onComplete zawiera funkcję, która zostanie wywołana do asynchronicznego przekazania wyniku. Funkcja musi posiadać następujcą składnię: function onComplete(ev) {};
gdzie parametr ev.Value zawiera wartość zwrotną (wynik) asynchronicznego wołania.
Wynikiem jest wartość zwracana przez uruchomioną aplikację po jej zakończeniu.
Jeżeli nie wystąpił żaden błąd, wtedy wartość ta wynosi zazwyczaj 0.
Jeżeli aplikacja nie została zakończona w czasie określonym przez parametr timeout, wtedy wartość zwrotna jest undefined.
Wartość zwrotna:
Jeżeli operacja przebiegła pomyślnie, wtedy metoda zwraca wartość 0, w innym przypadku zwraca numer błędu:
1 - brak pamięci
3 - określony plik nie został odnaleziony
4 - wprowadzona ścieżka nie została odnaleziona
Notatka:
Metoda służy do uruchamiania lub wydruku pliku *.exe lub pliku zarejestrowanego w SO Windows razem ze skojarzoną aplikacją.

Metoda ta nie działa w Web panelach. Metoda ta jest asynchroniczna.
Patrz również:
- Pm.CreateProcess (metoda)
Przykład1:
Druk pliku tekstowego "experiment.htm" w InternetExplorerze:
JavaScriptVBScriptWybierz oraz skopiuj do schowka

Pm.ShellExecute("print", "#app:experiment.htm", "", "#app:", 0);
Przykład2:
Wyświetli systemowe okno Windows drukarki sieciowej "\\SERVER\PRINTER1:"
JavaScriptVBScriptWybierz oraz skopiuj do schowka

Pm.ShellExecute("", "\\\\SERVER\\PRINTER1", "", "", 0);
Przykład3:
Uruchomienie aplikacji PowerPointa.
JavaScriptVBScriptWybierz oraz skopiuj do schowka

Pm.ShellExecute("open", "C:\\PowerPoint\\presentation.pps", "", "C:\\PowerPoint\\", 1);
Przykład4:
Otwarcie lokalnego pliku PDF w przeglądarce internetowej Edge.
JavaScriptVBScriptWybierz oraz skopiuj do schowka

var sPathBrowser = "c:/Program Files (x86)/Microsoft/Edge/Application/";
Pm.ShellExecute("open", sPathBrowser + "msedge.exe", "c:/download/filename.pdf", sPathBrowser, 3);
Aby wyświetlić żądaną stronę internetową w przeglądarce, lepiej jest użyć: CreateProcess lub Otwarcie przeglądarki stron Webowych (/#glob/webbrowser)
Przykład5:
Wysłanie pliku do serwera FTP z informacją o zakończonym transferze.
JavaScriptWybierz oraz skopiuj do schowka

var sUser = "ftpname:ftppassword";
var sFtpFile = "ftp://ftpservername.com/dir/filename.pdf";
var sLocalFile = "c:/Test/filename.pdf";
var sSend = ' -T "' + sLocalFile + '" -u "' + sUser + '" --url "' + sFtpFile + '"';

Pm.ShellExecute("open", "c:/Windows/System32/curl.exe", sSend, "", "state:hidden;", pMe.GetPathName(), onComplete);

function onComplete(ev)
{
if (!ev.Value)
{
Pm.Debug("FTP transfer is OK");
}
}

Historia:
Pm9.00.30: Nowa opcja "runas" w celu uruchomienia z wyższymi uprawnieniami.
Pm9.00.29: Nowy parametr sRequestId oraz nowy parametr onComplete, umożliwiający asynchroniczne pozyskanie wyniku operacji.
Nawigacja:
 
- Pm
 
- Abs
- Cos
- E
- Exp
- LN2
- PI
- Pow
- ShellExecute
 
 
- Sin
- Tan
© MICROSYS, spol. s r.o.