Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

open a webpage in IE using c#

Tags:

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.

like image 907
raki Avatar asked Sep 16 '09 05:09

raki


3 Answers

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();

               }    
    }
}
like image 125
Tzury Bar Yochay Avatar answered Oct 11 '22 13:10

Tzury Bar Yochay


System.Diagnostics.Process.Start("iexplore", "http://example.com");
like image 42
RaYell Avatar answered Oct 11 '22 12:10

RaYell


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.

like image 42
Maksim Vi. Avatar answered Oct 11 '22 14:10

Maksim Vi.