The Core Technologies Blog

Our Software // Windows Services // 24×7 Operation


Need an Official Sales Quote? Create a PDF in 1-2 Minutes

Do you work for a corporation looking to purchase our software?

Do you need an official sales quote — with letterhead, logo, etc. — to get the ball rolling?

If so, our new self-service quote-generator is here to help!

So how do I generate my quote?

Click this button to open the “Create a quote” form:

Create a quote now

The form will look like this (click to enlarge):

Create a quote

Please provide the following information:

  1. Your name, or your company’s name. This will appear in the “FOR” section on the quote.

  2. The physical/postal address to place in the “FOR” section on the quote.

    You can specify up to 3 lines, with up to 40 characters in each line. Or you can specify nothing at all (the value is optional).

  3. Your email address, for sending the quote. The email will also appear as the last line in the “FOR” section.

    Rest assured that we will not use your email address for anything other than sending you the quote! And as per our online privacy policy, we never, ever share your information with anyone.

  4. The software you would like to purchase. All our products are listed in the drop-down; please select.

  5. The number of licenses you wish to purchase.

  6. Indicate if you will be paying by an international bank transfer.

    Unfortunately our bank charges us a fee to receive an international (or wire) transfer, and we must pass that cost on to you. Please pay by credit card if you can, to avoid the extra charge!

  7. Check the I’m not a robot box, to prove that you’re not a bot snooping around our website.

All done? Click the Create button to generate the quote.

In a second or two, the PDF quote will be available for download and a copy will be sent to you via email.

What will the quote look like?

It will be very professional — really!

This image shows a quote for 3 licenses of AlwaysUp (click to enlarge):

Create Quote

Or click here to open/download a sample PDF.

But my quote is too complex for your online tool. Help!

If you’re looking for a quote for multiple products or with non-standard pricing, please get in touch and we’ll be happy to help.

Be sure to let us know exactly what you need. We’ll get back to you within 1 business day.

Looking forward to doing business with you… 8-)

Posted in Sales | Tagged , , , | Leave a comment

Bulletproof your Windows Services with Service Protector Version 6

Service Protector Software Update

Version 6 of Service Protector — our professional utility that babysits any Windows Service — was released a few days ago. Here is a quick look at what’s new:

Easily restart service protection from the toolbar

Customers who occasionally restart protection will notice the new “Restart” icon on the toolbar:

Easily restart protection from the toolbar

The convenient button performs the same operation as the similar entry under the “Protector” menu, but with one click instead of two.

Updates for Session 0

Unfortunately Microsoft has officially killed access to Session 0 — the isolated desktop hosting all Windows Services. You can no longer visit Session 0 from Windows Server 2019 and Windows 10 build 1803 (April 2018).

But access to Session 0 is alive and well on earlier versions of Windows. Switching to Session 0 continues to work on Windows Server 2012, 2008 and 2016 (though you can’t use the keyboard and mouse in 2016).

Service Protector 6 understands where Session 0 is no longer accessible and will adjust accordingly. For example, you will no longer see the “Switch to Session 0″ entry under the Tools menu when running on Server 2019:

Session 0 on Windows Server

Under-the-hood tweaks for Windows Server 2019 & 2016

While recent versions of Windows have not introduced major changes to the Windows Services architecture, each release has brought its own quirks and gotchas. There has been no shortage of thorny, real-world problems for us to tackle!

The latest low-level code supporting Service Protector incorporates all our latest solutions and workarounds — to ensure smooth operation on whatever operating system you are running.

Other fixes & improvements

  • Service Protector regularly reads from the Windows Event Logs as it monitors each Windows Service. Those interactions now occur much faster.

  • The latest builds of Windows 10 are fully supported. Each major, bi-annual Windows update was thoroughly tested and no issues were found.

  • The registration window now displays the version number — to help customers complete registration on the correct version of the software.

  • The registration process provides additional labels and informative pop-up messages to help customers complete the process without incident.

As usual, please review the release notes for the full list of features, fixes and improvements included in this release.

Upgrading to Service Protector 6

If you purchased Service Protector version 5 (after April 2016) you can upgrade to version 6 for free. Simply download and install “over the top” to preserve your existing services and all settings. Your registration code will continue to work.

If you bought version 4 or earlier (before April 2016), you will need to upgrade to use version 6. Please purchase upgrades here — at a 50% discount.

See the full upgrade policy for additional details.

Enjoy!

Posted in Service Protector | Tagged , , , , | Leave a comment

Q & A: How do I Make AlwaysUp Babysit my “Leaky” VB6 Program?

Q & A - Memory leak

Our old VB6 program leaks memory on every request and it can fail or crash multiple times a day. We need to re-write it but we don’t have budget right now so I’m looking at AlwaysUp to run it all the time. What settings should I use to keep it running?

— Anonymous

Hi. We have many customers who have turned to AlwaysUp to keep legacy applications going. Here is what we recommend for your situation:

Restart your VB6 program on high memory use

AlwaysUp is designed to launch your application as a Windows Service when your computer boots, but it can perform several “monitoring tasks” after that initial event.

One such task is to watch how much memory your application is using. You can setup AlwaysUp to stop and restart your application when its memory usage crosses a specific threshold.

The setting is available on AlwaysUp’s Monitor tab:

AlwaysUp Monitor tab - Memory setting

The default threshold is 512 MB. Is that too much (or too little) for your VB6 application?

We suggest using the Task Manager to get an idea of how much memory your application typically consumes. Use that information to set the threshold appropriately.

Note: Because AlwaysUp is a 32-bit application, the maximum memory threshold you can set is 4 GB. You will have to configure the CheckMemorySize64 sanity check plugin to exceed that limit. Please get in touch if you need help doing that.

Preempt memory problems by restarting VB6 (or rebooting the PC) once per day

While restarting on high memory is a good safety net, it is unpredictable. Your customers may notice a brief interruption if a restart occurs at a busy time.

Consider instead, a proactive daily restart — to flush the accumulated memory leaks and start your VB6 program afresh. With a clean slate, your application should run reliably for some time before the excessive leaks bog it down again.

You can configure a daily restart on the Monitor tab as well. Here we have asked AlwaysUp to stop and restart the application every day at 2 AM:

AlwaysUp Monitor tab - Daily restart

Note that you can:

  • Reboot the entire machine. This may be necessary if you find that restarting the application alone doesn’t clear the problems.
  • Restart/reboot only when certain conditions are met. For example, you can skip the restart if the application is busy (i.e. using CPU), or if it hasn’t used much memory yet.

Whatever works for your situation!

Want to restart your Visual Basic program more than once per day? This article reviews some alternatives.

Those two settings should help. Best of luck with your application!

Posted in AlwaysUp | Tagged , , , , | Leave a comment

Essential Windows Services: Schedule / Task Scheduler

Schedule

What is the Schedule service?

The Schedule service implements part of the Windows Task Scheduler — an important operating system component. The service’s display name is Task Scheduler and it runs inside the service host process, svchost.exe:

Schedule Windows Service

The Schedule service is responsible for automatically launching executables, batch files and scripts (i.e. tasks) on your PC, without human intervention. It can start each task:

  • At a fixed day and time (e.g. “every night at 11 PM”)
  • When someone logs on to the computer
  • When the system is booted
  • When the machine becomes idle
  • When a specific system event occurs

The pool of tasks to be run by the service is managed by the Task Scheduler application. Find it in the Control Panel (it may be called “Scheduled Tasks”), or launch the program directly by running taskschd.msc.

From the main window, navigate into the Task Scheduler Library to see all the tasks that the Schedule service will run. Here we see a task that updates the Dropbox cloud storage software — set to run every day at 12:48 PM:

Task Scheduler - Dropbox Update Task

What happens if I stop the Schedule service?

No scheduled tasks will run when the service is stopped.

This may be of little consequence on a machine with a handful of optional jobs, but it will be a catastrophe on a server that relies on scheduled tasks to perform mission-critical maintenance.

Be sure to understand which camp you are in before stopping the Schedule service!

The “Stop” button is disabled. How can I stop the Schedule service?

If you look closely at the service’s screenshot, you will notice that the Stop button is disabled — indicating that the service cannot be stopped.

And even the versatile NET STOP command run as an administrator will fail, citing insufficient rights (“Access is denied”):

Net stop Schedule fails

Evidently Microsoft is telling us, ever so gently, that we shouldn’t stop the service. :)

However — if you are hell-bent on ignoring Microsoft’s advice — there is a way forward. You can use our free Service Security Editor tool to rejigger permissions and grant yourself the ability to stop the service.

To do so:

  1. Download the free Service Security Editor utility from our website.

  2. Start Service Security Editor.

  3. Select Task Scheduler from the drop-down list:

    Select Task Scheduler Service
  4. Click the Open button to bring up the service’s security settings panel.

  5. In the top panel, highlight the user (or group) that should be able to stop the service. Check the Stop box in the lower panel.

    In this screenshot, we are allowing all administrators to stop the service:

    Schedule service - Add Stop permission
  6. Click OK to record your settings. Close Service Security Editor.

The service’s Stop button will be enabled next time you open Services.msc:

Schedule Windows Service: Stop button enabled

Caveat emptor!

Is it safe to disable the Schedule service?

In their guidance on disabling system services on Windows Server 2016, Microsoft does not classify the Task Scheduler service as “Do Not Disable”. Indeed, they punt on guidance altogether, commenting that “the impact of disabling the service has not been fully evaluated”. However, they do recommend that the Schedule service remains enabled.

In contrast, Windows guru Raymond Chen proclaims that disabling the Task Scheduler service is a bad idea. You should probably heed his advice.

The Schedule service isn’t starting. Help!

We suggest the following:

  1. Reboot your computer. Hopefully you have fallen victim to a temporary glitch and sanity will be restored when the operating system next starts.

  2. Manually run Windows Update. If you’re lucky, the Microsoft Windows engineers have already found and fixed the problem with their software.

  3. Seek expert help. Start with a google search for a quick fix; move on to your local administrator if no resolution is forthcoming.

  4. Reinstall Windows. You may have to start over from scratch if nothing else works… :(

Questions? Problems?

If you would like to know more about the Windows Schedule service, or you have a specific problem, please feel free to get in touch. We will do our best to help you!

Posted in Windows Services | Tagged , , , | Leave a comment

Q & A: Why Doesn’t AlwaysUp Send Email When My Server Boots?

Q & A - AlwaysUp Not Sending Email

I’m using AlwaysUp to run Google Backup and Sync. I only receive emails when I manually stop and start the service — NOT WHEN my server restarts. I’m positive that all the settings are correct after double checking with one of my other installations that works fine (I have 2 licenses). What is the problem?

— Hassan Asif


Hi Hassan, sorry to hear of the trouble! We have seen this with one customer before, so we have a potential fix.

The problem: AlwaysUp is starting before important Windows Services are ready

Ever been to a Black Friday sale? It’s like that when your PC starts — controlled chaos.

The eager shoppers are the Windows Services configured to start automatically at boot. Windows launches them as soon as possible, in well-defined waves, but as new processes fight for your computer’s precious resources (CPU, RAM, etc.) it is impossible to predict when any one service will actually be ready.

For example, let’s look at the DHCP Client service. It registers an IP address for your computer — an important step that must be completed before any network operations can succeed. But since the DHCP service is launched along with several other (equally important) services, it may be available after 10 seconds today while tomorrow it may take 12 seconds to be ready. Each boot is different, and you cannot know precisely when the service will be primed.

Since you followed our tutorial, the AlwaysUp service running your Backup and Sync is configured to participate in the “mad rush” at boot. This is usually fine, but in your case I suspect that AlwaysUp is starting up too soon — before one of the important services required for sending email is fully prepared.

We have seen this before, on a beefy machine with 16 processors and 32 GB of RAM. Is the computer experiencing the problem much faster than the one that sends email properly?

Fortunately we were able to come up with a remedy…

The solution: Delay AlwaysUp, to give email-related Windows Services more time to get ready

If our diagnosis is correct, then the fix is to make the AlwaysUp service start only after all important networking and email services are ready.

But since there is no way to know exactly when all those services will be ready, the best we can do is to remove AlwaysUp from the “mad rush” and have it start a couple of minutes later. Luckily Microsoft (and AlwaysUp) has already provided a setting that does exactly that!

To delay the launching of your AlwaysUp Backup and Sync service:

  1. Start AlwaysUp.

  2. Edit your application (by selecting Application > Edit/View).

  3. On the General tab, change the Start the application setting to Automatically, but shortly after the computer boots:

    Delay Googledrivesync service
  4. Click Save to record your change.

With that setting in place, Windows will fire up the Backup and Sync service 1-2 minutes after boot — well after the mad rush. That should be enough time for the critical services to start.

And the delay shouldn’t be a problem for Backup and Sync since it isn’t required the “instant” that your machine starts. No rush there.

Please try that and let us know how you get on!

Posted in AlwaysUp | Tagged , , , , | Leave a comment

Watch out for Dropbox Prompts when Running as a Service!

Dropbox prompts

Are you running Dropbox as a Windows Service? Do you rely on Dropbox to operate unattended in the background, synchronizing your important files 24×7?

If so, then be on the lookout for the new Selective sync warning dialog — a popup window that requires your confirmation whenever a file is deleted. Left unanswered, it will stop Dropbox dead in its tracks and prevent all future synchronization!

Delete from your account and all devices?

The warning was introduced in Dropbox version 51.4.66 (June 2018). It looks like this:

Dropbox selective sync confirmation popup

Checking the Don’t ask me this again box will eliminate the warning going forward — a welcome capability. It’s certainly an improvement over having to dismiss the window on each delete! Thanks you, Dropbox developers, for providing the checkbox.

But having the only control in the warning itself means that we can only make the “don’t ask” selection when the warning is triggered. And who knows if we’ll be around then?

Unfortunately Dropbox (and AlwaysUp) user howeboards has fallen victim to the prompt. He describes the situation in this support forum post:

On the server, the Dropbox account “A” as configured under AlwaysUp in “service” mode is configured to run under the same Windows administrator account as what it would be if one was to log in to the server. It is still the same user account that it is “running as” in either case with the same configuration and the same Dropbox directory location.

Because this server is hosted in Azure, is taken off-line overnight and/or might reboot, it is not ideal to have to log in to the server to make sure Dropbox is running. So the permission issue I mentioned is because an automated process deleted a file or moved a file, and no one was there to click a dialog regardless if it was running in the foreground or the background. To work around this, I have had to manually restart Dropbox in that user’s foreground session to click the dialog to make it remember it. That is just plain crazy.

Crazy indeed! We can surely do better.

Any Dropbox developers reading? Please implement one of these alternatives for future warnings

In addition to the graphical controls in the warnings, can you please include viable options for those of us running Dropbox unattended?

Here are some suggestions to avoid those unwelcome prompts:

  1. Add a specific option to the settings window

    Add a new checkbox labeled “Don’t warn me when deleting files”. Checking it would eliminate the warning without having to interact with Dropbox at some obscure time.

  2. Add a general “Don’t warn me” option to the settings window

    This broad setting would apply to all current and future warnings — not just the specific one raised in this article.

    Such a powerful control may seem reckless, but I can assure you: Many of your customers would happily avoid any confirmation that has the power to cripple synchronization for several hours!

  3. Introduce (and document) a registry value that governs the warning

    This approach puts technical folks in the driver’s seat, but with zero impact (and complexity) on the user interface.

Posted in Software | Tagged , , , | Leave a comment

How to Make AlwaysUp Restart your Program Multiple Times per Day (without using the Task Scheduler)

Restart your application multiple times per day

Earlier this month, we presented a couple of options for periodically restarting a temperamental legacy application with AlwaysUp. You can either restart once per day (via a setting on the AlwaysUp Monitor tab) or multiple times per day (using the Windows Task Scheduler).

Well, today we can offer you a third option — one that doesn’t rely on additional software, like the Task Scheduler.

By leveraging the powerful Sanity Check feature — which allows you to plug in your own failure detection system — we can get AlwaysUp to close and restart your program every few hours.

Here is an example of how to set that up:

Example: Restart OneDrive every 4 hours

For this example, we’ll work with Microsoft OneDrive — already installed as a Windows Service on our Windows 10 machine.

  1. First, create a simple batch file with these two commands:

    @echo off
    exit 1

    Save the file in your AlwaysUp installation folder, C:\Program Files (x86)\AlwaysUp. We have named our batch file “SignalRestartSanityCheck.bat”.

  2. Start AlwaysUp.

  3. Select Application > Edit/View to open OneDrive in AlwaysUp.

  4. Switch to the Monitor tab.

  5. Check the Whenever it fails a “sanity check” box mid-way down the page, and click the triple-dots button on the right:

    Setup Sanity Check
  6. In the window that comes up, enter the full path to the batch file you created in the Run field.

    And set the Every controls to 240 minutes (i.e. 4 hours):

    Configure Sanity Check
  7. Confirm and save all your changes.

Now whenever we start OneDrive as a service with AlwaysUp button (or the computer is rebooted), this sequence will play out:

  1. AlwaysUp starts OneDrive.

  2. After 4 hours have passed, AlwaysUp runs the batch file (sanity check).

  3. The batch file exits with 1, signaling to AlwaysUp that OneDrive should be stopped.

  4. AlwaysUp stops OneDrive.

  5. AlwaysUp restarts OneDrive (as specified on the Restart tab).

  6. And the cycle repeats… (go to step 2)

Enjoy!

Posted in AlwaysUp | Tagged , , | Leave a comment

OneDrive Slow? Try Disabling Files On-Demand

Speed up OneDrive

In recent months, several customers running OneDrive as a service have complained of torturously slow uploads. Files created on a PC take a very long time to appear in the cloud. In one case, it took more than 3 days for a small Word document to show up on OneDrive’s website!

The first instinct was to suspect AlwaysUp. Perhaps running as a Windows Service had somehow crippled OneDrive. But a few tests quickly disproved that theory. The performance problem showed up even when OneDrive was started normally on the desktop, outside of AlwaysUp.

The mystery has persisted for several months but recent feedback on various forums suggest that there may be a workaround. Apparently disabling the new Files On-Demand feature often restores sanity.

What is OneDrive Files On-Demand?

Files On-Demand is Microsoft’s attempt at making more efficient use of your hard drive. Instead of automatically transferring each file in the cloud onto your PC as soon as possible, OneDrive will delay the transfer of each file until you explicitly open it.

You can turn Files On-Demand on or off from your OneDrive Settings window. Right-click on the OneDrive tray, select Settings from the menu and move to the Settings tab in the window that comes up. The Files On-Demand option appears at the bottom of the form. It appears to be on by default:

OneDrive Files On-Demand

Files On-Demand trades space for speed of access. For example, let’s say you have a 10 MB PowerPoint presentation in the cloud. Without Files On-Demand, that document will be automatically copied to your computer, immediately consuming 10 MB on your hard drive. With Files On-Demand, OneDrive will “know about” the file but will not automatically transfer it. Your hard drive stores 10 MB less — great.

But the downside of Files On-Demand becomes evident when you need to use the file. Without Files On-Demand, you simply double-click the file and away you go. The document loads quickly because it is already on your computer.

With Files On-Demand enabled, double-clicking the PowerPoint issues a command to the cloud to dynamically download the file. At best you wait a few seconds for the download to complete and the file to open; at worst you can’t retrieve the document because you are not connected to the Internet.

As contributor Craig Long points out, “Files On-Demand is for those who have limited space available or for those who only occasionally need to open a file”. It’s a fine choice for individuals/hobbyists looking to conserve precious resources.

However, please be cautious when considering Files On-Demand in a professional setting. It would be a disaster in an office where OneDrive is mapped to a shared folder because the files not downloaded would never fully show up on the shared drive!

And furthermore, as Microsoft mentions, “you cannot search the contents within online-only files because they aren’t stored on the device” — a potential deal-breaker in a commercial environment.

Complaints of slow uploads with Files On-Demand

Several folks experiencing slowness were able to speed things up by disabling Files On-Demand. Here is one data point from the popular OneDrive forum hosted by UserVoice:

I have been waiting a week for the sync to complete, speeds is about 0,2kb/sec. My internet speed is 1GB/1GB. Then I turned off “sync on demand”. BOOM!!! Speed up to 15mb/sec. A factor 75.000 faster.

“John S” had a similar comment:

I had this same issue with large upload batches from my Mac (uploading about 13GB worth of data from a prior DropBox repository into a SharePoint location on Office 365 tenant) and figured out resolution myself after unsuccessful calls to MS Support: SOLUTION: turn OFF “Files on Demand”. Once off, I got normal upload speeds.

Apparently there may be problems with the new feature.

How to disable Files On-Demand

You can easily turn off Files On-Demand by un-checking the box on OneDrive’s settings page (available by right-clicking on the tray icon). Click OK on the conformation window to commit your changes:

Disable OneDrive Files On-Demand

Hopefully this simple change will put the spring back in OneDrive’s step!

Posted in Software | Tagged , , , , | Leave a comment

Essential Windows Services: Spooler

Print Spooler

What is the Spooler service?

The Windows Print Spooler is a key operating system component that manages all printing on your computer. It is started when your PC boots and runs unattended, 24×7 as a Windows Service.

The Windows Service is named Spooler and its display name is Print Spooler. The service runs inside a process called spoolsv.exe:

Spooler Windows Service

The Spooler:

  • Runs silently in the background

  • The Spooler does not show any windows or tray icons. It is an invisible technical component that presents an Application Programming Interface (API) to programs looking to manage printing.

  • Accepts files to be printed, from all applications

  • The Spooler is always listening for print requests. It accepts documents from any application running on your computer.

    The process of handing off a document to the Spooler is called Spooling. Once an application is done spooling a document, the Spooler is responsible for the actual printing. The application can go back to its normal tasks.

    For example, let’s say you’re printing a spreadsheet from Microsoft Excel. You will notice a brief period as Excel prepares the document and hands off the print request to the Spooler. And during that time, a helpful window will announce that Excel is printing. However Excel is really sending the spreadsheet to the Spooler (i.e. spooling):

    Excel printing/spooling

    After the window has disappeared (i.e. Excel is done spooling), you will be free to edit your spreadsheet while the actual printing proceeds simultaneously. You can even close Excel! None of that matters to the Spooler, which will ensure that your spreadsheet makes it to the printer — independent of Excel.

  • Facilitates concurrent printing

  • Ever printed several, lengthy documents at the same time? The Spooler makes that possible — without overwhelming your printers.

    The Spooler maintains a queue of requests (a print queue) for each printer on your computer. When you print a document, the Spooler:

    • Adds a new item (a print job) to the print queue.
    • Sends the print job to the printer (when the printer is ready).
    • Monitors the printer as it produces pages.
    • Removes the job from the queue once the printer has produced all pages.

    Windows allows you to see (and manage) each printer’s queue. To open a print queue:

    1. Open the Control Panel (available from the Start menu).

    2. Type the word printers into the search box and click the View devices and printers link on the left:

      Find printers in Control Panel
    3. Find your printer in the list. Right click the printer and select See what’s printing from the menu:

      Select see what's printing
    4. A window showing all pending print jobs will come up. Here we see one item for Administrator — a text file printed from the Notepad application:

      The print queue window

      From there, you can cancel all print jobs (“clear the queue”), pause a specific job or stop printing altogether.

  • Will do everything in its power to ensure that documents are printed

  • The Spooler’s mission is to make sure that all your documents are printed — even if there is a brief outage or interruption.

    For example, if your printer temporarily disappears from the network, the Spooler will wait a reasonable time for the device to come back before declaring a failure.

    And if your request to print a single page is stuck behind a 200-page behemoth, the Spooler will ensure that your document gets its turn, eventually.

What happens if I stop the Spooler service?

Nothing can be printed when the Spooler service is stopped. And if you try to print without the service running, Windows will insist that no printers are installed:

No printers when Spooler is stopped

Indeed, when the service is running, printers show up as ready and waiting. Printing works fine:

Spooler service running, printers connected

But all printers become inaccessible the instant the service is stopped:

Spooler service stopped, printers not connected

Is it safe to disable the Spooler service?

If you don’t have any physical printers attached to your computer and you and never plan to do any printing, you can safely disable the Spooler service.

However, watch out for applications that silently use the printing API. They will also fail when the service is disabled.

What should I do if the Spooler service isn’t working?

If the Spooler is misbehaving, you should restart it. You can do so from the Services Control Panel application, or by running a couple of NET commands:

NET STOP Spooler
NET START Spooler

Be sure to run those commands from an elevated command prompt, otherwise they will fail with permissions errors.

I made a mistake. How do I cancel all printing?

To clear all printing, open the printer queue (see above) and select Cancel All Documents from the Printer menu:.

Select Cancel All Documents

Give the Spooler (and your printer) a few seconds to respond to the request.

Canceling didn’t work. Is there another way to clear out all pending documents?

Try running this sequence of commands to stop the Spooler, remove all files from the print queue, and restart the service. You will need to have admin rights:

NET STOP Spooler
DEL /Q /F /S C:\Windows\System32\spool\PRINTERS\*
NET START Spooler

The Spooler service won’t start (Error 1053)

As reported in Microsoft’s technical forum, the problem may be with “desktop interaction” — an obscure windows service setting.

To fix the issue:

  1. Open the Spooler service (from the Services Control Panel application)
  2. Switch to the Log On tab
  3. Un-check the Allow service to interact with desktop box:
    Un-check interact with desktop
  4. Click OK to save your change.

Afterwards, you should be able to start the service.

The Spooler service is stuck in the “Stopping” state — Help!

In that unusual situation, find and terminate the spoolsv.exe process from the Task Manager (admin rights required):

Task Manager: Terminate spoolsv.exe

The service should transition to the stopped state.

The Spooler service keeps stopping for no reason. How do I keep it running?

Our Service Protector utility may be able to help. Please follow this step-by-step tutorial showing how to protect the Spooler service.

Questions? Problems?

If you would like to know more about the Windows Print Spooler service, or you have a specific problem, please feel free to get in touch. We will do our best to help you!

Posted in Windows Services | Tagged , , , , , | Leave a comment

Q & A: How do I Restart my Application/Service Regularly from AlwaysUp?

Q & A - Restart Application

We are currently using AlwaysUp with several executable instances. We need to have these restarted daily due to memory leaks from the application.

I don’t see a scheduling restart option in AlwaysUp. I think this could be done through a windows task but I see that these are being run as windows services. Would you recommend doing this as a windows task or would the Service Protector be a better option?

— Kevan Hauver, AAA Northeast

Hi Kevan. Sorry to hear of the awful memory leaks!

Yes, Service Protector could help your situation but there is no need to purchase that additional software. Here are a couple of options to restart your application periodically:

Restart once daily (via the Monitor tab)

AlwaysUp makes it very easy to restart your application once per day, at a time of your choosing. Edit your application in AlwaysUp and look for the Every setting on the Monitor tab.

Here is what the Monitor tab looks like when configured to restart the program every day at 2 AM (a time when the software/server is likely to be “quiet”):

Restart every day at 2 AM

Note that AlwaysUp can restart conditionally — only when one or more conditions are met. For example, to avoid restarting when the software is busy, check the It has been idle for at least box and fill in an appropriate duration.

And if you find that simply restarting the application doesn’t clear the problem, you can try rebooting the entire machine. That option is available at the bottom of the form.

Restart multiple times per day (using the Windows Task Scheduler)

If restarting once per day is not enough, you have my sympathies!

For that situation, we recommend creating a simple script that will restart your service and then enlisting the Windows Task Scheduler to restart the service as often as you like. Follow these steps, which you should be able to complete in 10 minutes or less:

Step 1: Create a batch file to restart your AlwaysUp service

First, please create a batch file that restarts your AlwaysUp service. It will contain two lines — one to stop the service and another to start it.

For example, if your AlwaysUp application is named “Dropbox”, your batch file should contain the following calls to the Windows NET command:

  NET STOP "Dropbox (Managed by AlwaysUpService)"
  NET START "Dropbox (Managed by AlwaysUpService)"

The ” (Managed by AlwaysUpService)” portion is a necessary part of the service’s name. All services created by AlwaysUp feature that suffix.

Note: The batch file may not work as expected if it takes your application longer than 30 seconds to shut down. This is because NET STOP will only wait for 30 seconds before giving up. And if it does give up, the subsequent call to NET START will fail too. So after running the batch file, the AlwaysUp service may end up in the “Stopped” state — not what you want for your 24/7 application!

For slow applications, we recommend using our free ServicePilot utility instead of NET. ServicePilot can be configured to wait much longer than 30 seconds for the service to stop.

Assuming that you have downloaded and saved ServicePilot to your AlwaysUp folder, here is what the batch file looks like with ServicePilot instead:

  "C:\Program Files (x86)\AlwaysUp\ServicePilot.exe" -restart -wait 300 "Dropbox (Managed by AlwaysUpService)"

That command will wait for up to 300 seconds (5 minutes) for the service to restart.

Give the batch file a meaningful name and save it to your AlwaysUp folder (C:\Program Files (x86)\AlwaysUp). We’ll need its full path in the next step.

Step 2: Setup the Task Scheduler to run the batch file

Here’s how to run the batch file (and restart your application) every day at noon.

  1. Start Task Scheduler. This is best done by running taskschd.msc from a command prompt, or by opening the Control Panel, searching for “schedule” and clicking the Schedule tasks link:

    Start Task Scheduler
  2. Once the Task Scheduler window appears, select Create Basic Task on the left:

    Task Scheduler: Create Basic Task
  3. In the Create Basic Task Wizard window, enter a suitable name. You can leave the description blank.

    Enter a name for the task

    Click Next to proceed.

  4. The Daily option (which we want) should already be selected, so click Next to move to the next screen:

    Run the task daily
  5. Here you specify the time to restart the service/application. We have selected today at noon but you should select whatever time works for you.

    Leave Recur every at 1 day and click Next when you are ready to proceed.

    Specify the time to restart the application
  6. We want to start a program (the default), so click Next to move on:

    Start a program
  7. Click the Browse button and choose the batch file you created in the previous step. Recall that we placed ours in the AlwaysUp folder (C:\Program Files (x86)\AlwaysUp):

    Select the batch file you created

    Click Next to proceed.

  8. The basic configuration is now complete and you will see a summary of the scheduled task to be created.

    Check the Open the Properties dialog… box and click the Finish button:

    Task summary
  9. And on this final screen, select the Run whether user is logged in or not option and check the Run with highest privileges box. These are required by Windows to manipulate the service on your behalf.

    Set task security

    Click OK to wrap up. (On some versions of Windows, you will have to enter the password for your account on the way out.)

  10. Your task is now fully configured. Navigate into the Task Scheduler Library on the left and confirm that all is well:

    Daily restart task configured

With this new task in place, Windows will automatically restart the AlwaysUp service every day at noon.

Step 3: Repeat the process to configure additional restarts

Want to restart again at 2 PM? Simply repeat the process to create another task but select 2 PM instead of noon.

Advanced users can save a few clicks by exporting the task to a XML file, updating the file to specify a different time, and importing the modified XML to create a new task.

Hopefully you don’t have to create too many tasks…

Best of luck with your application!

Posted in AlwaysUp | Tagged , , , , | Leave a comment