2010-06-16 12 views
41

È possibile avviare un'applicazione da un browser? Non sto parlando di aprire un file da un browser (come aprire un PDF con Adobe Reader), ma piuttosto di aprire una nuova istanza (vuota) di un'applicazione che è installata sul computer dell'utente.Come avviare un'applicazione da un browser?

Situazione ipotetica: l'utente naviga in un sito Web che elenca i computer che possono essere gestiti tramite RDP. Fa clic su un collegamento a 192.168.1.10, tale collegamento apre il client Microsoft RDP (mstsc.exe) con l'indirizzo IP già compilato.

Sto parlando rigorosamente dell'universo di Windows.

Questa cosa è fattibile anche al di fuori di ActiveX e IE?

È consigliabile provare questo in IE con ActiveX?

+0

http: // roblox .com è un sito di gioco che ogni utente deve installare il proprio client e visitare il proprio sito Web per avviare il client di gioco. Così hanno impostato dove lanciare un'applicazione direttamente dal loro sito. Ho guardato attraverso la loro fonte e non lo fanno come dice brendan ... – georgiaboy82

+0

@ georgiaboy82, controllando se l'app installata o meno è lavoro di sviluppatori di frontend o sviluppatori di backend? – SaiUnique

risposta

5

Non si può realmente "lanciare un'applicazione" nel vero senso della parola. Come hai indicato, puoi chiedere all'utente di aprire un documento (ad esempio un PDF) e Windows tenterà di utilizzare l'app predefinita per quel tipo di file. Molte applicazioni hanno un modo per farlo.

Ad esempio, è possibile salvare le connessioni RDP come file .rdp. Mettere un collegamento sul tuo sito per qualcosa come questo dovrebbe consentire all'utente di lanciare a destra in una sessione RDP:

<a href="MyServer1.rdp">Server 1</a> 
+0

Sto solo imparando cosa sia ActiveX e io rosso che possa essere usato per eseguire applicazioni all'interno di un browser. Quindi non dovrebbe essere possibile? Ho provato a seguire queste istruzioni per avviare Blocco note dal browser, anche se non ha funzionato. http://www.codeproject.com/Articles/113678/How-to-execute-a-Local-File-using-HTML-Application – Celeritas

1

Utilizziamo una vpn sonicwall. Avvia un applet java che avvia mstc con tutte le impostazioni delle credenziali. Non puoi davvero farlo senza un'applet java o un plugin activex.

Microsoft utilizza questa tecnica sul proprio server di piccole imprese per accedere alla rete. Non direi che è un'idea terribile, purché l'indipendenza dalla piattaforma non sia importante.

0

Alcune applicazioni si lanciano da protocolli. come itunes con i collegamenti "itms: //". Non so però come puoi registrarlo con Windows.

+0

So che questa discussione è vecchia, ho lo stesso problema. Ci sono un sacco di informazioni su come installare i gestori di protocollo, ma non posso farlo al lavoro sulla macchina di ogni utente (l'IT mi ucciderebbe letteralmente ...) – nurchi

+0

non dovresti farlo manualmente su ogni macchina dell'utente . Questo è ciò che la tua applicazione dovrebbe fare durante il processo di installazione. – Mikhail

1

ho raggiunto la stessa cosa utilizzando un server web locale e PHP. Ho usato uno script contenente shell_exec per avviare un'applicazione localmente.

In alternativa, si potrebbe fare qualcosa di simile:

<a href="file://C:/Windows/notepad.exe">Notepad</a> 
+18

Si noti che 'shell_exec' eseguirà le applicazioni sul server web. Per quanto riguarda il collegamento, di solito provoca il download del file. –

-4

È possibile utilizzare il seguente:

<a href="c:\windows\Notepad.exe" 
type="application/octet-stream">Launch Notepad</a> 

da quello che ricordo con file: // viene respinto da Chrome e Firefox.

+3

Questo (inutilmente) scarica (copia) notepad.exe, non lo esegue. –

1

È possibile utilizzare Silverlight per avviare un'applicazione dal browser (questo funziona solo su IE e Firefox, versioni più recenti di Chrome non supportano questo)

codice di esempio here

Problemi correlati