2016-01-14 35 views
16

Da tempo immemorabile, la maggior parte dei browser Web è stata in grado di aprire un file locale se si eseguiva il file eseguibile del browser Web, ad esempio basta eseguire iexplore.exe file:/c:/temp/file o tramite le interfacce IShellDocView. Sto provando a farlo dal mio programma, in Windows 10, con Microsoft Edge, e non sono consapevole di come farlo.Come posso aprire un file HTML locale nel browser Microsoft Edge?

L'eseguibile sembra completamente non documentato, non risponde a /? ci

C:\Windows\SystemApps\Microsoft.MicrosoftEdge_8wekyb3d8bbwe\MicrosoftEdge.exe <whatever> 

è un'API: o/help, e semplicemente va in crash, non importa quello che mi passa ad esso, e dato che il percorso sembra essere destinata a cambiare, non è probabilmente l'approccio corretto per invocare questo eseguibile direttamente in Windows che può essere invocato invece, questo aprirà Edge, forse anche se non è il browser predefinito corrente?

Se era il browser predefinito, credo che potrei fare ciò che voglio tramite l'API di shell Win32 ShellExecute. Mi piacerebbe essere in grado di lanciare qualcosa in Edge anche se ho impostato un altro browser come predefinito, allo scopo di automatizzare alcune attività di test web.

Esistono interfacce o API programmatiche per Edge? Per gli scopi di questa domanda, diciamo che voglio scrivere questo in C, ma questa dovrebbe essere la stessa API indipendentemente dalla lingua che sto usando, quindi non ho taggato questa domanda C.

Se non c'è modo per farlo a livello di codice, c'è un argomento da riga di comando che potrei usare e passare a un eseguibile MicrosoftEdge o MicrosoftEdgeCP?

+0

correlati: http://stackoverflow.com/questions/31794639/how-to-add-edge-as-my-debug-browser-in-visual-studio-2012-on-windows-10 –

+1

I have a idea vaga forse devi usare LaunchWinApp.exe per lanciare Edge, anche se sembra un'app desktop per Windows, è molto più simile a un'app Store. –

+1

Alcuni esempi di codice trovati in C++ https://github.com/MicrosoftEdge/MicrosoftEdgeLauncher –

risposta

8

Attualmente non è supportato, ma il team lo sta valutando come un'opzione. Per il momento, il modo più semplice per aprire una risorsa in Edge è utilizzare il gestore di protocollo microsoft-edge:. Ad esempio, è possibile eseguire microsoft-edge: http://stackoverflow.com per aprire Overflow dello stack in Edge.

+0

Quindi questo non funziona, purtroppo: 'start" "" microsoft-edge: file:/c: /path/to/html.txt "' –

+0

Ma se ho un mezzo locale per servire HTTP, potrei servire il risorsa io stesso e poi punta a http: // localhost: 12345 –

+1

Un server locale funzionerebbe; Ho intenzione di contattare alcuni membri del team per vedere se c'è un altro modo per farlo. Idealmente, i file verrebbero aperti nell'app predefinita * selezionata dall'utente *. – Sampson

0

ottenere strumento da https://github.com/MicrosoftEdge/edge-launcher

MicrosoftEdgeLauncher file:///C:/Users/me/Documents/homepage.html

+2

Sfortunatamente la domanda non è chiedere cosa digitare nella barra degli indirizzi, ma come avviare l'eseguibile insieme alla risorsa della pagina locale fornita. –

+0

Sembra che tu possa ora eseguire il file 'MicrosoftEdgeLauncher.exe: /// C:/something/index.html' se vai a prendere lo strumento da github.com/MicrosoftEdge/MicrosoftEdgeLauncher –

-3

bordo lancia file locali da un segnalibro. Un lancio non avviato dalla riga di comando sarebbe un buon avvio dalla condivisione file montata.

+0

Non ho idea di cosa stai dicendo:" sarebbe un buon lancio dalla condivisione file montata "? – trincot

+0

Ciao e benvenuto su Stack Overflow, in primo luogo grazie per aver trovato il tempo di rispondere. Per favore, prendi un po 'di tempo per passare al [tour di benvenuto] (https://stackoverflow.com/tour) per sapere come muoverti qui (e anche per guadagnare il tuo primo badge), leggi [risposta] per creare utili risposte e aggiungere la comunità. – garfbradaz