Archive

Posts Tagged ‘windows application’

Print html page in .net windows application

You can use the WebBrowser control to do so. It will allow you to show HTML inside your WinForms.

The DocumentText proprety will allow you to set a String that represent the HTML you want to show.

For example:

webBrowser.DocumentText = "<html><body><p>I like StackOverflow</p><body></html>";

Afterward if you want to print the page, you’ll have to wait until the Document is completed and call the Print method of the WebBrowser. MSDN shows an easy way to do it:

 private void PrintHelpPage()
{
    // Create a WebBrowser instance. 
    WebBrowser webBrowserForPrinting = new WebBrowser();

    // Add an event handler that prints the document after it loads.
    webBrowserForPrinting.DocumentCompleted +=
        new WebBrowserDocumentCompletedEventHandler(PrintDocument);

    // Set the Url property to load the document.
    webBrowserForPrinting.Url = new Uri(@"\\myshare\help.html");
}

private void PrintDocument(object sender,
    WebBrowserDocumentCompletedEventArgs e)
{
    // Print the document now that it is fully loaded.
    ((WebBrowser)sender).Print();

    // Dispose the WebBrowser now that the task is complete. 
    ((WebBrowser)sender).Dispose();
}

REINSTALLMODE=amus

November 12, 2010 Leave a comment

When you are working on a windows application and deploying your solution every now and then, you should be aware on not deleting all files on reinstall like the database file and some files generated by the user.

But when changing you application setup project version number you will notice that the EXE file will not be updated in most of the times, to ensure that the EXE file will be reinstalled you will have to add a property to the MSI file called REINSTALLMODE and give it a value “amus”, I know for now this will make no sense for you so I will explain a little bit more about this issue.

The REINSTALLMODE property is a property added to the MSI file by editing it using a software called orca (just Google it ”download orca for MSI”), this property have many values and many options that can be given to it.

The one value that is important here is the amus, so what is amus and how to add all the REINSTALLMODE property:

After installing orca, open it and drag your msi file after building the solution off course.

You will notice a set of records added at the left under the title Tables, scroll down the records until you find a record called “Property” click on it, then its properties will open in the right panel, right click then click add row:, in the Property field write REINSTALLMODE and in the value field add amus, then click OK and save your MSI file.

By doing so your EXE file and all files installed from the setup and not using custom installation will be deleted.

Small note amus stands for:

  • a – Force all files to be reinstalled, regardless of version.
  • m – Rewrite all registry keys that go to HKEY_LOCAL_MACHINE or HKEY_CLASSES_ROOT.
  • u – Rewrite all registry keys that go to HKEY_CURRENT_USER or HKEY_USERS.
  • s – Reinstall shortcuts and icons.