In questo articolo vengono fornite informazioni generali su come registrare il browser Web predefinito e quindi su come avviare il browser Web predefinito con
ShellExecute application programming interface (API). Fornisce inoltre informazioni dettagliate su fa come
ShellExecute Sì Microsoft passare a un URL (Uniform Resource Locator).
Determinare il browser predefinito
Per impostazione predefinita, Microsoft Internet Explorer consente di verificare se sia il browser Web predefinito ogni volta che viene avviato. Se documenti (HTML) sono associati a un browser diverso all'avvio di Internet Explorer, Internet Explorer riconosce che non sia il browser predefinito e viene chiesto di renderlo il browser predefinito.
Quando si seleziona
Imposta il browser predefinito in Internet Explorer e nelle versioni successive di Netscape, il browser registra se stesso in
tutte le chiavi riportate di seguito per rendere automaticamente il browser predefinito (tra le altre voci scritte). HKEY_CLASSES_ROOT\.htm HKEY_CLASSES_ROOT\.html HKEY_CLASSES_ROOT\http\shell\open\command HKEY_CLASSES_ROOT\http\shell\open\ddeexec\Application HKEY_CLASSES_ROOT\ftp\shell\open\command HKEY_CLASSES_ROOT\ftp\shell\open\ddeexec\Application HKEY_CLASSES_ROOT\gopher\shell\open\command HKEY_CLASSES_ROOT\gopher\shell\open\ddeexec\Application
Avviare il Browser Web predefinito da un'applicazione
Chiamare l'API
ShellExecute e passargli un URL. Che rappresenta il modo più semplice per l'utente avviare il browser Web predefinito da un'applicazione. Se il browser Web predefinito viene attualmente eseguito,
ShellExecute indica l'istanza che viene eseguito per passare all'URL (Uniform Resource Locator). Se non è in esecuzione,
ShellExecute avvia l'applicazione e quindi passa l'URL.
Se si utilizza Microsoft Visual c ++ per sviluppare l'applicazione, il codice riportato di seguito viene descritto come chiamare
ShellExecute .
LONG r = ShellExecute(NULL, "open", "http://www.microsoft.com", NULL, NULL, SW_SHOWNORMAL);
se è utilizzato Microsoft Visual Basic, è necessario inserire la dichiarazione di
ShellExecute nel progetto. È possibile trovare questa dichiarazione nel file Win32api.txt che si trova in una sottocartella dell'installazione di Microsoft Visual Studio. Facoltativamente, è possibile copiare, tramite lo strumento Visualizzatore API testo fornito con Visual Studio 6.0.
Per inserire l'API
ShellExecute nel progetto, attenersi alla seguente procedura:
- Creare un nuovo progetto in Visual Basic.
- Selezionare EXE standard .
- Aggiungere un pulsante al form.
- Inserire il codice seguente nel modulo.
Private Declare Function ShellExecute _
Lib "shell32.dll" _
Alias "ShellExecuteA"( _
ByVal hwnd As Long, _
ByVal lpOperation As String, _
ByVal lpFile As String, _
ByVal lpParameters As String, _
ByVal lpDirectory As String, _
ByVal nShowCmd As Long) _
As Long
Private Sub Command1_Click()
Dim r As Long
r = ShellExecute(0, "open", "http://www.microsoft.com", 0, 0, 1)
End Sub
- Eseguire il progetto e scegliere il pulsante per passare l'URL con il browser Web predefinito.
L'API
ShellExecute è supportata in Microsoft Windows 95 e Microsoft Windows NT 3.1 e versioni successive. È possibile utilizzare
ShellExecute per attivare il browser predefinito in Win32 tutte le versioni di Microsoft Internet Explorer dalla versione 1.0 e versioni successive. Questa tecnica non è supportata in Microsoft Windows 3.x UNIX o MacIntosh piattaforme.
Modalità di funzionamento ShellExecute
Lo sfondo seguente è esclusivamente per scopi informativi. Viene fornito in modo che è possibile comprendere meglio l'interazione tra applicazione del sistema operativo e. Non di base degli schemi sui presupposti che disegnano da queste informazioni. Tenere presente che questa funzionalità potrebbe cambiare nelle future versioni dei prodotti Microsoft.
L'URL di interpretazione ShellExecute superato
ShellExecute analizza la stringa che viene passata al metodo in modo che
ShellExecute possibile estrarre o un identificatore di protocollo che un'estensione. Successivamente,
ShellExecute ricerca nel Registro di sistema e utilizza quindi l'identificatore di protocollo o l'estensione per determinare quale applicazione avviare. Se si passa
http://www.microsoft.com ShellExecute ,
ShellExecute riconosce la sottostringa
http:// come un protocollo, causando
ShellExecute visualizzare informazioni su come eseguire
HKEY_CLASSES_ROOT\http\shell\open
. Se si passa
miofile.htm ShellExecute ,
ShellExecute riconosce la sottostringa ".htm" come estensione. In questo modo
ShellExecute visualizzare
HKEY_CLASSES_ROOT\.htm
, che conduce a
HKEY_CLASSES_ROOT\htmlfile\shell\open
.
In genere, è preferibile completamente specifica l'URL nella stringa passata a
ShellExecute , ad esempio:
http://www.microsoft.com anziché
www.microsoft.com . Quando si specifica completamente l'URL, è assicurarsi che
ShellExecute conosca esattamente il protocollo desiderato. Per impostazione predefinita, tuttavia,
ShellExecute rileva alcuni modelli che includono
www.* e
ftp.* e quindi mappa questi modelli per il protocollo HTTP (Hypertext Transfer Protocol) e FTP (File Transfer Protocol), rispettivamente.
Come ShellExecute determina se avviare una nuova istanza
Quando
ShellExecute ricerca nel Registro di sistema, viene cercato la sottochiave
shell\open
. Se la chiave
shell\open\ddeexec
è definita, quindi un DDE (Dynamic Data Exchange) messaggi con l'applicazione specificata
IExplore e l'argomento
WWW_OpenURL viene trasmesso a tutte le finestre sul desktop di primo livello. La prima applicazione per rispondere a questo messaggio è l'applicazione che passa all'URL richiesto. Se nessuna applicazione risponde al messaggio DDE, quindi
ShellExecute utilizza le informazioni contenute nella sottochiave
shell\open\command
per avviare l'applicazione. Quindi re-broadcasts messaggio di DDE per passare all'URL richiesto.
Per ulteriori informazioni sull'impostazione predefinita browser, fare clic sul numero dell'articolo della Microsoft Knowledge Base riportato di seguito riportato:
153774
(http://support.microsoft.com/kb/153774/
)
Internet Explorer non configurato come browser predefinito
I prodotti di terze parti che in questo articolo viene descritto sono forniti da produttori indipendenti. Microsoft non rilascia alcuna garanzia, implicita o esplicita, sulle prestazioni o all'affidabilità di questi prodotti.
Identificativo articolo: 224816 - Ultima modifica: martedì 31 luglio 2007 - Revisione: 2.1
Le informazioni in questo articolo si applicano a:
- Microsoft Windows 2000 Server
- Microsoft Windows 2000 Advanced Server
- Microsoft Windows 2000 Professional Edition
- Microsoft Internet Explorer 3.01
- Microsoft Internet Explorer 3.02
- Microsoft Internet Explorer 4.0 128-Bit Edition
- Microsoft Internet Explorer 4.01 Service Pack 2
- Microsoft Internet Explorer 4.01 Service Pack 1
- Microsoft Internet Explorer 4.01 Service Pack 2
- Microsoft Internet Explorer 5.0
- Microsoft Internet Explorer 5.01
- Microsoft Internet Explorer (Programming) 5.01 SP1
- Microsoft Internet Explorer 5.5
- Microsoft Internet Explorer (Programming) 5.5 SP1
- Microsoft Internet Explorer (Programming) 5.5 SP2
- Microsoft Internet Explorer (Programming) 6 (SP1)
- Microsoft Windows NT Server 3.5
- Microsoft Windows NT Server 3.51
- Microsoft Windows NT Server 4.0 Standard Edition
- Microsoft Windows NT Workstation 3.5
- Microsoft Windows NT Workstation 3.51
- Microsoft Windows NT Workstation 4.0 Developer Edition
| kbmt kbinfo kbwebbrowser KB224816 KbMtit |
Traduzione automatica articoliIl presente articolo è stato tradotto tramite il software di traduzione automatica di Microsoft e non da una persona. Microsoft offre sia articoli tradotti da persone fisiche sia articoli tradotti automaticamente da un software, in modo da rendere disponibili tutti gli articoli presenti nella nostra Knowledge Base nella lingua madre dell?utente. Tuttavia, un articolo tradotto in modo automatico non è sempre perfetto. Potrebbe contenere errori di sintassi, di grammatica o di utilizzo dei vocaboli, più o meno allo stesso modo di come una persona straniera potrebbe commettere degli errori parlando una lingua che non è la sua. Microsoft non è responsabile di alcuna imprecisione, errore o danno cagionato da qualsiasi traduzione non corretta dei contenuti o dell?utilizzo degli stessi fatto dai propri clienti. Microsoft, inoltre, aggiorna frequentemente il software di traduzione automatica.
Clicca qui per visualizzare la versione originale in inglese dell?articolo:
224816
(http://support.microsoft.com/kb/224816/en-us/
)
LE INFORMAZIONI CONTENUTE NELLA MICROSOFT KNOWLEDGE BASE SONO FORNITE SENZA GARANZIA DI ALCUN TIPO, IMPLICITA OD ESPLICITA, COMPRESA QUELLA RIGUARDO ALLA COMMERCIALIZZAZIONE E/O COMPATIBILITA' IN IMPIEGHI PARTICOLARI. L'UTENTE SI ASSUME L'INTERA RESPONSABILITA' PER L'UTILIZZO DI QUESTE INFORMAZIONI. IN NESSUN CASO MICROSOFT CORPORATION E I SUOI FORNITORI SI RENDONO RESPONSABILI PER DANNI DIRETTI, INDIRETTI O ACCIDENTALI CHE POSSANO PROVOCARE PERDITA DI DENARO O DI DATI, ANCHE SE MICROSOFT O I SUOI FORNITORI FOSSERO STATI AVVISATI. IL DOCUMENTO PUO' ESSERE COPIATO E DISTRIBUITO ALLE SEGUENTI CONDIZIONI: 1) IL TESTO DEVE ESSERE COPIATO INTEGRALMENTE E TUTTE LE PAGINE DEVONO ESSERE INCLUSE. 2) I PROGRAMMI SE PRESENTI, DEVONO ESSERE COPIATI SENZA MODIFICHE, 3) IL DOCUMENTO DEVE ESSERE DISTRIBUITO INTERAMENTE IN OGNI SUA PARTE. 4) IL DOCUMENTO NON PUO' ESSERE DISTRIBUITO A SCOPO DI LUCRO.