Tuesday 8 October 2013

How to Install and Uninstall Windows Services manually without setup

To install your service manually


  1. On the Windows Start menu, choose Visual Studio 2010, Visual Studio Tools, Visual Studio Command Prompt (2010).
    A Visual Studiocommand prompt appears.
  2. Access the directory in which your project's compiled executable file is located.
  3. Run InstallUtil.exe from the command prompt with your project's output as a parameter. Enter the following command.
installutil yourproject.exe


To Uninstall your service manually

  1. On the Windows Start menu, choose Visual Studio 2010, Visual Studio Tools, Visual Studio Command Prompt (2010).
  2. A Visual Studiocommand prompt appears.
  3. Run InstallUtil.exe from the command prompt with your project's output as a parameter. Enter the following command:
installutil /u yourproject.exe

Saturday 5 October 2013

Monitor Printing Jobs in .Net

You may be in need of Monitoring different Print Jobs submitted to printer in our local network.

For that, PrintQueueWatch printer monitoring component is the one stop for you.

  • PrintQueueWatch is a .NET component (as class library) that facilitates monitoring one or more printers from a WinForms application and gathering information from the print system above and beyond that provided by the .NET Framework
Download dll files from there and add reference to your project.

And below is the code you need.


        public void StartWatching(string PrinterDeviceName)
        {
             PrintMonitor[] objPrint = new PrintMonitor[2];
             mPr = new PrinterMonitorComponent();
             mPr.MonitorPrinterChangeEvent = false;
             mPr.JobAdded += Addedtest;
             try
             {
                 mPr.AddPrinter(PrinterDeviceName);
             }
             catch (Exception e)
             {
                 clsErrorTrace.CreateLog("StartWatching", e);
             }
        }
        public void Addedtest(object sender, PrintJobEventArgs e)
        {
            try
            {   string str = "";
                str += "Printer Name: " + e.PrintJob.PrinterName + Environment.NewLine;
                str += "User Name: " + e.PrintJob.UserName + Environment.NewLine;
                str += "Document Name: " + e.PrintJob.Document + Environment.NewLine;
                str += "Total Pages Printed: " + e.PrintJob.TotalPages + Environment.NewLine;
                str += "Date Time: " + e.PrintJob.Submitted + Environment.NewLine;
            }
            catch (Exception ex)
            {
                clsErrorTrace.CreateLog("Addedtest", ex);
            }
        }
Here, you have to pass the Printer Name which you want to monitor for it's jobs.

Ex., I have one printer installed on my PC that is "HP Prolient 2022" then I will Monitor it by this:
StartWatching("HP Prolient 2022");

So "Addedtest" function will be called once any Job will be added and you will be able to get the details related to that job like Printer Name, Document Name, Total Pages Printed, etc.

A life saving utilities a web developer should know

  1. Fire Bug
  2. Colorzilla
  3. File Zilla
  4. ViewPure 
    • Watch a YouTube video. Just the video and not the rest of the crap or ads or other videos around it. It's readability for YouTube.
  5. StackOverflow 
    • Get your questions answered here! If you haven't heard, you better ask someone.
  6. Bit.ly 
    • All the goodness of TinyUrl with statistics, real-time tracking, accounts and much, much more. If you get a Bit.ly url, add a + to the end of it to see lots of statistics!
  7. gSkinner 
    • An amazing Flash-based online RegEx tool for writing and testing RegEx.
  8. JS-Fiddle
    • Sometimes you just want to fiddle with JavaScript. Fire up a text editor, IDE or Firebug? Naw, man. Use JSFiddle, load your framework of choice and get to work. HTML, CSS and JavaScript plus your results. Then share with a friend!
  9. Visual Studio Gallery 
    • All the world's extensions to Visual Studio in one place, and ranked by the public. Easy to search and sort.
  10. CodePaste.NET 
    • When you write code, you need to share it.
  11. LINQPad
    • Interactively query your databases with LINQ with this tool from Joseph Albahari. A fantastic learning tool for those who are just getting into LINQ or for those who want a code snippet IDE to execute any C# or VB expression.
  12. Join.me
    • when I just want to share my screen and give a URL to a bunch of people who can view it without anything other than Flash, I use Join.me
  13. DropBox
    • It's on every platform I want it on. It works great with large stores (mine is over 60gigs) and also allows selective sync for small amounts of data in just certain folders. Ultimately, though, get yourself some cloud storage because when you stuff is just "there", life is better.