raki
raki

Reputation: 2293

open a webpage in IE using c#

How to open a webpage in IE while clicking a button in a c# application. My intention is to create a web login for a c# application which need to be opened in IE , in specified width and height, and needs to call a function in the application program.

Upvotes: 25

Views: 87300

Answers (3)

Maksim Vi.
Maksim Vi.

Reputation: 9235

There is a way to open a page in default browser System.Diagnostics.Process.Start(url);

If you want specifically to open it in IE you will probably need to create a new IE process with URL as an argument.

UPD: If you want to run a function, insert GET parameters into your url string (ie. http://stackoverflow.com/page?runFunction=1) and in your application code check for runFunction parameter and based on its value decide if your application needs to run the function.

I don't think is possible to specify new IE window width and height values, you may need to use javascript for that.

Upvotes: 5

Tzury Bar Yochay
Tzury Bar Yochay

Reputation: 9004

from http://msdn.microsoft.com/en-us/library/system.diagnostics.process(VS.71).aspx

using System;
using System.Diagnostics;
using System.ComponentModel;

namespace MyProcessSample
{
    /// <summary>
    /// Shell for the sample.
    /// </summary>
    public class MyProcess
    {

        /// <summary>
        /// Opens the Internet Explorer application.
        /// </summary>
        public void OpenApplication(string myFavoritesPath)
        {
            // Start Internet Explorer. Defaults to the home page.
            Process.Start("IExplore.exe");

            // Display the contents of the favorites folder in the browser.
            Process.Start(myFavoritesPath);

        }

        /// <summary>
        /// Opens urls and .html documents using Internet Explorer.
        /// </summary>
        public void OpenWithArguments()
        {
            // url's are not considered documents. They can only be opened
            // by passing them as arguments.
            Process.Start("IExplore.exe", "www.northwindtraders.com");

            // Start a Web page using a browser associated with .html and .asp files.
            Process.Start("IExplore.exe", "C:\\myPath\\myFile.htm");
            Process.Start("IExplore.exe", "C:\\myPath\\myFile.asp");
        }

        /// <summary>
        /// Uses the ProcessStartInfo class to start new processes, both in a minimized 
        /// mode.
        /// </summary>
        public void OpenWithStartInfo()
        {

            ProcessStartInfo startInfo = new ProcessStartInfo("IExplore.exe");
            startInfo.WindowStyle = ProcessWindowStyle.Minimized;

            Process.Start(startInfo);

            startInfo.Arguments = "www.northwindtraders.com";

            Process.Start(startInfo);

        }

        public static void Main()
        {
                    // Get the path that stores favorite links.
                    string myFavoritesPath = 
                    Environment.GetFolderPath(Environment.SpecialFolder.Favorites);

                    MyProcess myProcess = new MyProcess();

            myProcess.OpenApplication(myFavoritesPath);
            myProcess.OpenWithArguments();
            myProcess.OpenWithStartInfo();

               }    
    }
}

Upvotes: 44

RaYell
RaYell

Reputation: 70494

System.Diagnostics.Process.Start("iexplore", "http://example.com");

Upvotes: 19

Related Questions