Varsayılan İnternet tarayıcısını program aracılığıyla başlatmak için Visual C# kullanma

Bu makalede, Visual C# kullanarak varsayılan İnternet tarayıcısını başlatma gösterilmektedir.

Özgün ürün sürümü: Visual Studio
Özgün KB numarası: 305703

Not

Açılacak URL' yi, FTP'yi veya dosyayı belirtin

URL, dosya veya Dosya Aktarım Protokolü (FTP) adresi belirtebilirsiniz. Bu atamaların üçü de geçerlidir:

string target= "http://www.microsoft.com";
string target = "ftp://ftp.microsoft.com";
string target = "C:\\Program Files\\Microsoft Visual Studio\\INSTALL.HTM";

Tarayıcıyı başlatmak için İşlem sınıfı Başlangıç yöntemini kullanın

Process sınıfı statik Start bir yöntem içerir. Statik bir yöntem olduğundan, sınıfın Process bir örneğine sahip olmadan çağırabilirsinizStart.

System.Diagnostics.Process.Start(target);

Sınıfı hakkında Process daha fazla bilgi için bkz . İşlem Sınıfı.

Özel durum işleme sağlayın

yöntemini çağırdığınızda varsayılan özelliğinden yararlandığınızdanStart, hangi tarayıcının varsayılan UseShellExecute olduğunu belirlemek için kayıt defterini açıkça sorgulamanız gerekmez. Ancak, tarayıcı yüklü olmayan bir bilgisayarda bu yaklaşımı kullanırsanız, bir özel durum oluşur. Uygun eylemin yapılabilmesi için bu özel durumun yakalanması gerekir.

Bu örnek, gerekli kayıt defteri anahtarı bulunamadığında oluşturulan bir hata için açıkça tuzak kurar ve tarayıcının yüklenmediğini gösterir. Ayrıca, oluşabilecek diğer hatalar için genel bir özel durum işleyicisi sağlanır. Blok try...catch , tam kod listesinde gösterilmiştir.

Tam kod örneği

string target= "http://www.microsoft.com";
//Use no more than one assignment when you test this code.
//string target = "ftp://ftp.microsoft.com";
//string target = "C:\\Program Files\\Microsoft Visual Studio\\INSTALL.HTM";
try
{
    System.Diagnostics.Process.Start(target);
}
catch (System.ComponentModel.Win32Exception noBrowser)
{
    if (noBrowser.ErrorCode==-2147467259)
    MessageBox.Show(noBrowser.Message);
}
catch (System.Exception other)
{
    MessageBox.Show(other.Message);
}

Sorun giderme

Bu kod, kayıt defterinin HKEY_CLASSES_ROOT (HKCR) kovanındaki uygulama dosyası türü ilişkilendirmelerine son derece bağımlıdır. Kayıt defteri zarar görürse beklenmeyen sonuçlara ve özel durumlara yol açabilir. Ayrıca, dosya türleri ve uzantılar tarayıcı dışındaki uygulamalarla ilişkilendirilebilir. Örneğin, HTM veya HTML dosyaları tarayıcı yerine Web geliştirme yazılımıyla ilişkilendirilebilir.