Learn Windows Service programming on Microsoft Windows in C# .Net, service debugging techniques in Visual Studio
Created by: Naeem Akram
Produced in 2022
What you will learn
- Create new Windows Services in C# .Net which run in background
- Debug & Maintain Existing Windows Services in C#
- Use Apache Log4Net logging library in a C# Project
- Use InnoSetup to create setup installer for installing Windows Services on non production machines
Overall Score : 88 / 100
Live Chat with CourseDuck's Co-Founder for Help
The course is divided in various sections.
Introduction to Windows Service Programming in C#
You will learn the definition and anatomy of a Windows Service application. In the past NT service was the term used for a WIndows Service. You will also understand the difference between a Windows Service and other application types like console application. This section is not dependent on any programming language like C#.Net or C++. You will learn what is Windows Service Control Manager(SCM) and how to run it from the run prompt. SCM shows a Windows Services List.
Windows Service Programming in C# .Net Primer
In section two you will create a new Windows Service project in Visual Studio, and utilize installutil to install or uninstall a Windows Service. InstallUtil comes bundled with .Net framework. I'll show you what is Windows Service Control Manager. What are Windows Service statuses, login types, and service startup types. A Windows server service is same like a Windows NT service.
After this you will open the Windows Event Viewer to see the events generated by your newly born service.
Windows Service Debugging Techniques in Visual Studio and C# .Net
In section three you will learn how to debug a C# .Net based Windows Service program in Visual Studio.
Techniques for setting breakpoints and getting inside the C# .Net code to add watches for debugging purposes will be shown.
You will also see how to integrate Apache Log4Net logging library into your C# .Net Windows Service project. Apache Log4Net is a free & open source library and it lets you generate rolling log file, it is based on Log4J library.
Practical usages of Windows Service
In the next section you will look into a few real world scenarios like a file synchronization Windows service with FileSystemWatcher and a periodic data update service(similar to an ETL) with System.Threading.Timer. File sync type services were once very popular among password synchronization applications for updating domain passwords into online portals based on password filter related events.
Advanced Windows Service Programming
Next section is about topics like changing values in Windows Service configuration(app.config) and using .Net framework ServiceController class. In this section we are going to create an admin application for a Windows Service. This application will have the ability to start/stop a service and get service status as well. We will use C# .Net and WinForms for this purpose. The concepts shown herein will be applicable to WPF applications as well.
Installing a Windows Service with Inno Setup
Last section was added on student demand. It is about creating an installer to install Windows Service on a client machine. We will use free software InnoSetup for this purpose. I'll show you how to use SC.exe to perform various Windows Service control related operations from the command line. It is mandatory to know how to create windows service command line using SC command. I also show you how to install a windows service without installutil.
Creating & maintaining Windows Services in C# .Net is very easy as compared to C++ based services. Windows Services are run not only on Windows Servers, but on desktop machines as well. Their usefulness is universal.
Windows Services are an advanced C# and OS concept. I learned Windows Service programming the hard way, on my own. You sir! can take advantage of my experience and learn it quickly by joining this course. Sign up and I will see you inside!Who this course is for:
- Fresh or experienced programmers with little to no experience in C# .Net Windows Service programming
- Programming students who want to learn how background services work
I am A person with many talents and interests, ranging from gardening to programming and poetry to cooking.
I've been writing computer software code(C++, C# .Net) since 2006, creating awesome Android apps since 2012. I've been working as a freelance software developer since Nov. 2012.
I've extensively worked on network communications, computer telephony integration(CTI) using Microsoft TAPI 2.x and 3.x, and LDAP server programming(Active Directory). Android app development has been my focus as a freelancer, I've created and published several apps for clients and a couple for myself on Google Play store.
I've been sharing my knowledge through my blogs, and I am confident its time share more things that I've experienced with the world in a comprehensive video format.