Laden...

Firefox Utilities

Erstellt von jan223 vor 16 Jahren Letzter Beitrag vor 16 Jahren 5.693 Views
jan223 Themenstarter:in
460 Beiträge seit 2004
vor 16 Jahren
Firefox Utilities

Beschreibung:

Die Klasse stellt einige Methoden bereit die den Umgang mit dem Firefox aus der eigenen Anwendung erleichtern sollen.
Eine genaue Beschreibung der Methoden entnehmen Sie bitte den XML Kommentaren.
Folgende Methoden sind implementiert:

IsFirefoxAvailable()
OpenFirefox()
OpenFirefox(string url)
OpenFirefoxInSaveMode()
OpenFirefoxInNewWindow(string url)
OpenFirefoxInNewTab(string url)
OpenMozillaWebsite()

getestet wurde die Klasse mit Firefox V 2.0.0.4

class FirefoxUtilities
{
    private string firefoxPath;

    /// <summary>
    /// Initializes a new instance of the <see cref="FirefoxUtilities"/> class.
    /// </summary>
    public FirefoxUtilities()
    {
        firefoxPath =
            string.Format(@"{0}\Mozilla Firefox\firefox.exe",
                          Environment.GetFolderPath(Environment.SpecialFolder.ProgramFiles));
    }

    /// <summary>
    /// Open Firefox if Firefox is available
    /// </summary>
    /// <param name="arguments">the url</param>
    private void Open(string arguments)
    {
        if (!IsFirefoxAvailable())
            throw new Exception("Firefox is not installed.");
        else
            Process.Start(firefoxPath, arguments);
    }

    /// <summary>
    /// Determines whether [is firefox available].
    /// </summary>
    /// <returns>
    /// 	<c>true</c> if [is firefox available]; otherwise, <c>false</c>.
    /// </returns>
    public bool IsFirefoxAvailable()
    {
        FileInfo fiFirefox = new FileInfo(firefoxPath);
        return fiFirefox.Exists;
    }

    /// <summary>
    /// Opens the firefox.
    /// </summary>
    public void OpenFirefox()
    {
        Open(string.Empty);
    }

    /// <summary>
    /// Opens the firefox with a specific url.
    /// </summary>
    /// <param name="url">the url</param>
    public void OpenFirefox(string url)
    {
        Open(url);
    }

    /// <summary>
    /// Opens the firefox in save mode.
    /// </summary>
    public void OpenFirefoxInSaveMode()
    {
        Open("-safe-mode");
    }

    /// <summary>
    /// Opens the firefox in a new window.
    /// </summary>
    /// <param name="url">the url</param>
    public void OpenFirefoxInNewWindow(string url)
    {
        Open(string.Format("-new-window {0}", url));
    }

    /// <summary>
    /// Opens the firefox in a new tab.
    /// </summary>
    /// <param name="url">the url</param>
    public void OpenFirefoxInNewTab(string url)
    {
        Open(string.Format("-new-tab {0}", url));
    }

    /// <summary>
    /// Opens the mozilla website.
    /// </summary>
    public void OpenMozillaWebsite()
    {
        Process.Start("http://www.mozilla-europe.org");
    }
}

Schlagwörter: Firefox

Quelle: .NET-Snippets

1.665 Beiträge seit 2006
vor 16 Jahren

Hallo jan223,

feine Sache, aber du hast die Funktionalität so generell gehalten, dass sich theoretisch auch der IE oder sogar andere Anwendungen starten lassen. Also könntest du es vllt sogar noch ein wenig so umstellen, dass es für den IE, Opera, usw.. funzt.

Noch was: Du kannst nicht davon ausgehen, dass ein Programm in Environment.SpecialFolder.ProgramFiles installiert ist. Wenn ich Firefox "irgendwo" installiere, würde ich die Meldung von deiner Klasse bekommen, dass Firefox nicht installiert ist.

Ich würde einen ganz anderen Ansatz deswegen angehen..
Und zwar den Standardbrowser ermitteln (Registry), diesen auf der Festplatte lokalisieren (steht auch in der Registry) und die entsprechende Funktionalität bereitstellen.

🙂

L
333 Beiträge seit 2007
vor 16 Jahren

Ich suche Dateien auch bevorzugt an einer Stelle, auf die der Benutzer möglichst keinen Einfluss hat. Hier bietet sich der Registry-Schlüssel HKCR/FirefoxURL oder FirefoxHTML an, oder sowas wie HKLM/Software/Mozilla/Mozilla Firefox/{@CurrentVersion}/Main/PathToExe.

Außerdem heißt es "Safe Mode", nicht "Save Mode". Da wird niemand gerettet (a.k.a. gespeichert), sondern etwas sicher (abgesichert) ausgeführt. Oft hilft ein Wörterbuch, hier reicht schon richtig lesen. 😉