Backup and Sync will show excessive “remove item” confirmations when a file is deleted
Fortunately these notifications are easily disabled via Preferences but the setting is all or nothing. Ideally, we would like to omit confirmations on active development folders but that is not possible.
None of these is a major headache, but little day-to-day annoyances add up. What to do?
Eventually a key realization dawned on us…
We don’t need real-time file synchronization
Backup and Sync’s mission is to keep your files synchronized. As soon as a document is changed, it is copied up to the cloud.
Though a live copy is ideal, it is not essential for our situation. We will be satisfied with a periodic backup — a recent copy of key files in case of a catastrophe. Heck, a single snapshot every 24 hours would meet our modest needs.
With that understanding, our first adjustment was manual. We would simply exit Backup and Sync at the start of the work day and restart it when we were done for the evening. Doing so eliminated the daily annoyances, and gave Backup and Sync the whole night to catch up.
But some evenings we would forget to restart Backup and Sync, leaving our files unprotected. It was time for a robust, automated solution…
How to run Backup and Sync off-hours as a Windows Service
Step 1: Install Backup and Sync as a Windows Service with AlwaysUp
This first step will enable backups to run in the background — even when you’re not logged in to your computer.
Step 2: Create a Scheduled Task to stop Backup and Sync every morning at 9 AM
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:
Once the Task Scheduler window comes up, click Create Basic Task on the right:
In the Create Basic Task Wizard window, enter a suitable name for the task. We suggest “Stop Google Backup Service at 9 AM Daily”. Click Next when you are done.
We want to run daily, so make sure that option is selected and move on:
Next, enter 9 AM in the Start controls:
Running this command will stop the Backup and Sync Windows Service created by AlwaysUp:
NET.EXE STOP "Googledrivesync (managed by AlwaysUpService)"
Enter that command on this screen, placing NET.EXE in the Program/script field and the rest in the Add arguments section:
Don’t forget the quotes!
The next screen summarizes the task we’ve created. There is still a bit of work to do so check the Open the properties dialog box before clicking the Finish button:
And finally, in the Properties window, ensure that the task will (1) run even if no one is logged on and (2) will run with highest privileges:
Click OK to finalize your new scheduled task.
Step 3: Create a Scheduled Task to start Backup and Sync every evening at 7 PM
To create the second task that restarts Backup and Sync in the evening, simply repeat the process you followed in Step 2 with the following adjustments:
Enter 7 PM instead of 9 AM
Replace STOP with START when entering the program to run:
NET.EXE START "Googledrivesync (managed by AlwaysUpService)"
Less timely backups, but less interruptions too
With these changes in place, our Backup and Sync only runs “off hours”. While our files aren’t synchronized with the cloud during the work day, the annoying interruptions have been eliminated. It has been a reasonable trade-off for our team.
Like you, the majority of our work day is spent in front of a computer.
Indeed, most of the time you will find us wrestling with popular Windows applications — like Microsoft Word, Google Chrome and Acrobat Reader. But there are a few lesser-known programs that we have grown to depend on as well.
Here are three of the best free tools we use all the time — and can heartily recommend:
1. FileMenu Tools: Turbocharge your right-click menu with common file operations
Many of our daily tasks revolve around files. We’re constantly opening documents, copying images and composing command lines that require file paths.
This Windows Explorer extension includes over 35 file operations that you can add to Explorer’s right-click menu:
Our favorites include:
Copy Path: Copies the full path to the selected file(s) into the Windows clipboard. Saves time when we have to open the file in another application or add it to a command line. Just paste and go!
Command Line From Here: Launches the command prompt window, already set to the current folder. Much faster than running CMD and CD’ing.
Open with Notepad: Automatically send a file to Notepad, instead of having to start Notepad, click File > Open and browse to the file.
FileMenu Tools is integrated with Windows File Explorer and is very easy to use. Here you can see us copying the full path of the Dropbox executable (C:\Program Files (x86)\Dropbox\Client\Dropbox.exe) to the Windows clipboard — with just a couple of clicks:
2. AbstractSpoon ToDoList: Increase productivity by tracking & organizing important tasks
For our day-to-day planning — and to make sure that we don’t forget our brilliant but ambitious ideas — we turn to AbstractSpoon’s ToDoList.
This attractive Windows application uses a time-tested tree structure to organize your body of work. You start with one or more top level goals and break them down into actionable steps.
Each step/task can have over 20 properties that provide relevant context, including “priority”, “due date”, “percent complete” and “cost”.
ToDoList helps us keep track of:
Topics for upcoming blog articles
What to put in each new release (and when to make it available)
Standard email templates, that we can copy & paste into Gmail
Useful but difficult-to-remember commands for managing our UNIX servers
And much more!
And to top it off, ToDoList is actively maintained by a passionate and engaged developer. You will not be disappointed by his responsiveness and attention to detail.
3. Pure Text: Easily paste simple text from the clipboard
I really hate it when I copy text from one application, paste it into another and it comes over with all its formatting. Most times I just want the simple text — with zero decoration.
To get my desired result, I would perform the following dance:
Paste into Notepad (to produce plain text)
Select all the text
Copy the text
Paste the plain text into my target application
Easy to do but definitely a waste of time.
Enter PureText, a ridiculously simple program that strips all formatting from the clipboard so that we can paste plain text in a single keystroke. What a lifesaver!
PureText runs as an icon in the task tray area. You assign it a “hotkey” and whenever that key is pressed, it will paste plain text. Here you can see that we have assigned Ctrl-Shift-V (which is close to Ctrl-V, the key combination that performs a “regular” paste):
Once you have installed PureText, it will be difficult to use a computer without it. It’s one of the first apps we install on a new PC.
So those are three Windows utilities that make a difference in our day-to-day. Download, install and enjoy!
What free applications do you recommend?
We would love to hear your advice and opinions! Please let us know in the comments section.
When I look in Services.msc, some of the Windows Services have a startup type of “Automatic (Trigger Start)” and “Manual (Trigger Start)”. What do those mean?
Hi Liam. Those trigger start types are indeed mysterious. And the Services application makes no attempt to explain what they are.
For example, even though the phrase “Trigger Start” appears in the “Startup type” column in the list of services, that designation is absent when you dig into an individual service.
Here we see the User Manager service showing a startup type of “Automatic (Trigger Start)” in the list but simply “Automatic” in the same field in the service’s properties window:
Baffling, to say the least.
Let’s break down each of the start type names into their two components, to understand what the Services application is trying to communicate.
What do “Automatic” and “Manual” mean?
The first component tells Windows what to do with the service when the computer boots.
Automatic says “start this service when the computer boots”.
Manual means “don’t start the service at boot; it may be started at some other time”.
There are other startup types too but those will be explained in a future article.
What does the “Trigger Start” part mean?
While the first component focuses on what happens at boot, the “Trigger Start” wording indicates if the service can be started or stopped by various operating system events.
For example, some services are configured to start when a USB drive is inserted. Other services may stop when your computer signs out of a domain or leaves the network.
Services that respond to these events are using windows service triggers — a powerful feature designed to conserve your computer’s precious resources. Service triggers were introduced in Windows 7 and Server 2008 R2.
And here is the point of this journey into triggers: A service that has at least one trigger will show up with the “Trigger Start” designation in the Services application.
(Note that the treatment of triggers in the Services application stops there. Despite indicating when a service contains a trigger, triggers cannot be changed in the Services application. You must use the SC command line utility or our free Service Trigger Editor GUI to add or remove triggers from a service.)
Putting it all together…
Automatic (Trigger Start) means:
This service will start automatically at boot. It may also start or stop in response to specific operating system events.
Manual (Trigger Start) means:
This service will NOT start automatically at boot. It may start or stop in response to specific operating system events.
Hope this makes sense! Please be sure to get in touch if you have any other questions about the wonderful world of Windows Services.
The Remote Procedure Call (RPC) service supports communication between Windows applications.
Specifically, the service implements the RPC protocol — a low-level form of inter-process communication where a client process can make requests of a server process. Microsoft’s foundational COM and DCOM technologies are built on top of RPC.
The service’s name is RpcSs and it runs inside the shared services host process, svchost.exe:
Should I stop the RPC service?
The answer is no — you should definitely not stop the service. It is far too important.
Indeed, if you examine the list of services that depend on the RPC service for smooth operation — by running the SC ENUMDEPEND command — you will notice that there are a whopping 103 services that need RpcSs on Windows Server 2019!
If the RPC service stops, those 103 would have to stop as well — surely crippling your computer.
Afterwards, restart Dropbox as a service. The OpenGL prompt should be gone — a relic of an unpleasant past.
Huge thanks go to Dropbox forum user Wilson7777, who alerted the community of this remedy. His original solution is here.
Why does the fix work?
The explanation is a bit technical, but here goes…
Dropbox uses Qt — a popular cross-platform development framework.
In turn, Qt requires OpenGL — a cross-platform API for rendering 2D and 3D vector graphics.
So when you run Dropbox, both Qt and OpenGL will be started.
But for some unknown reason, when Dropbox is started as a Windows Service in Session 0, Qt and OpenGL fail to initialize. That failure causes Dropbox to throw up the “Failed to create OpenGL context for format QSurfaceFormat” error, which suggests that there is a problem with the computer’s graphics card/hardware.
Fortunately there is a way to instruct Qt: “Instead of using the computer’s graphics hardware for OpenGL, use software libraries”. Setting the QT_OPENGL environment variable to “software” is the way to do that.
And with the change to use software instead of hardware, Qt, OpenGL and Dropbox all start properly.
Note that when you ran the SETX command in step 2, it added the QT_OPENGL value to your environment. You can see it listed in your system environment variables (available from the Control Panel):
Will this fix work for future versions of Dropbox?
We certainly hope so! But like you, we’re not sure what magic the next automatic update of Dropbox will bring…
Dropbox says to make sure that your display drivers are up to date. This has resolved the problem for some customers. Please let Dropbox know if it doesn’t work for you.
Beyond that, there are a couple other workarounds but neither is a long term solution.
If you start Dropbox in the current session (by selecting Start “Dropbox” in this session from the Application menu), Dropbox will start and your files will be synchronized. However, once you log off, Dropbox will return to Session 0 and it will cease to function again.
Another option is to run Dropbox outside of AlwaysUp, normally on your desktop. Of course, you will have to remain logged in, which is less than ideal.
Please check in the “Updates” section below for additional workarounds as they are developed.
When will this be fixed?
We’re not sure when Dropbox will fix the problem.
They seem to create new desktop client builds regularly so we have our fingers crossed that they deliver a resolution very soon.
Please let Dropbox know that you are affected
We encourage you to “nudge” the Dropbox team into action by:
I deny all access to the executable via NTFS permissions for that account. Then install the older 80.4.127 over the top of the current install (it kills the running version automagically). This seems to break the ability for the updater to do its magic so it will skip this version.
We can only hope the next version is up and running with a fix, if not, rinse and repeat.
This has worked for at least 3 of our customers running Dropbox.
September 18 @ 9:20 PM Pacific: So far we have thoroughly tested Dropbox version version 81.4.195 running in Session 0 on the following operating systems:
Windows Server 2019
Windows Server 2012 R2
Windows 10 (Build 1903)
None have exhibited the problem.
Here is the basic test we perform using two computers linked to the same Dropbox account:
Copy a new file into machine’s A’s Dropbox folder
Check that the file shows up on dropbox.com
Check that the file shows up in machine B’s Dropbox folder
We will continue to test other versions of Windows over the next few days.
September 19 @ 6:15 AM Pacific: The Dropbox support team suggests that the problem may be with old display drivers.
Perform the steps outlined in this post to make sure that your PC is up-to-date.
I setup AlwaysUp to run JRiver Media Center as a Windows Service but it’s simply not working. I reboot the server every week and every time AlwaysUp says it can’t log on. These errors come up, over and over:
Hi — sorry to hear that the service isn’t starting for you!
From the logs you sent, the key error appears to be this one:
The service did not start due to a logon failure
Windows is saying that it cannot authenticate your account (the one you specified on the Logon tab in AlwaysUp) so it cannot start the service.
The failure is probably due to one of three problems. Answer the following questions to find a solution.
Has your Windows password expired/changed?
If you recently set a new password on your Windows account, the service may be stuck using the old one.
To update the service’s password:
Edit your JRiver service in AlwaysUp
Switch to the Logon tab
Enter your new password:
Save your settings.
Reboot your PC and see if JRiver starts automatically. If not, read on to keep troubleshooting.
Have you specified a domain account on the AlwaysUp Logon tab?
If your service is running in a domain account, it’s possible that the service is starting too soon — before the primary domain controller is ready to accept requests.
Indeed, this can easily happen when your computer is the slow-starting domain controller!
The fix is to delay the start of the JRiver service, to allow the domain controller enough time to launch and initialize. To do so:
Edit your JRiver service in AlwaysUp
Set the Start the application field to Automatically, but shortly after the computer boots:
Save your settings.
Reboot and see if that does the trick!
Is your Active Directory Group Policy overwriting the Local Policy setting for the “Log on as a service” right?
This last scenario applies if your system uses Active Directory and you have specified a domain account on the AlwaysUp Logon tab.
Your Windows account may be losing the right to run as a service when an incomplete group policy overwrites the local policy. Basically, your account is “out of sync” with the Active Directory server.
Python is fast becoming the world’s most popular coding language. It’s no surprise that more and more administrators are turning to the simple, efficient, and ubiquitous platform for a variety of day-to-day tasks.
One question that frequently comes up on Internet forums deals with scheduling:
How do I schedule my Python script to run every hour on my Windows computer?
The Windows Task Scheduler seems like it should do the job, but unfortunately it falls short because it has no ability to restart an application at a fixed time. You would have to set up 24 tasks, one for each hour of the day. That’s too much busy work.
You could also create a batch file that runs the script in an infinite loop and launch the batch file with Task Scheduler. That would be easier, but the lack of a fixed schedule means that you wouldn’t know the time when the script would be run. And with zero monitoring and error reporting, you would be left in the dark if the script somehow stopped running — for example, if someone accidentally terminated it. Not a very robust approach.
Instead, we recommend using AlwaysUp. Simply setup your Python script to run as a background Windows Service, then configure AlwaysUp to launch your script each hour on the hour. Here’s how to do that.
1. Install your Python script as a Windows Service with AlwaysUp
First, follow our step-by-step tutorial showing how to run any Python script as a Windows Service with AlwaysUp.
Your Python script will be configured to run once per day but don’t worry — we’ll adjust that in the next section.
2. Restart your Python script every hour, on the hour
Instead of running only once per day, let’s run your script hourly. To make that change:
Edit your Python script in AlwaysUp.
Switch to the Restart tab.
Check the Not immediately and the On the next hour options:
Click the Save button to record your changes.
3. Minimize logging as your script stops and restarts in the background
By default, AlwaysUp will record detailed information (in the Windows Event Logs) whenever the application it is monitoring starts and stops. This is fine for programs designed to operate 24/7, but that logging can be overwhelming for a script that starts and stops frequently.
To reduce the writing to the Event Logs:
Edit your Python script in AlwaysUp.
Switch to the Restart tab.
Check the Minimize event logging as the application stops & starts option:
Click the Save button to record your changes.
And that’s it. From now on, your Python script will run predictably — every hour, on the hour.
Please be sure to get in touch if you have any questions about running your script as a service (or anything else).
After more than a decade in the trenches, Windows 7 and Windows Server 2008 R2 will no longer be supported. Microsoft will stop issuing updates for those operating systems on Tuesday January 14, 2020.
I’m still running Windows 7/Server 2008: What does this mean for me?
After the deadline, your computer will no longer receive Windows updates/patches. This is probably fine for new features and capabilities (who needs those anyway?), but it is potentially lethal for safety and security.
This is because any serious security flaw discovered after January 2020 will not be fixed. Attackers will have all the time they need to break into your computer.
We recommend upgrading ASAP — especially if you are working in a commercial environment. Why put you and your company at risk for a ransomware or other cyber-attack?
Will your software (AlwaysUp, Service Protector, etc.) continue to work on Windows 7/2008?
Yes. For now, all our current software will continue to work with the soon-to-be-retired versions of Windows. We will not be disabling those operating systems in any versions of our Windows Services software that you can download today.
However, at some point we will drop support for 7/2008. For example, AlwaysUp version 13 (expected in 2021) may no longer run on 7/2008. Of course, you will be able to stick with version 12 (or earlier) for as long as you like.
Will you provide support if I’m running Windows 7/2008?
Yes — up to a point. We’ll happily investigate problems on those systems, but realize that our hands will be tied if the flaw is due to a problem in the underlying (now obsolete) operating system.
Ideally I would see the output of the python program as if it were run in command line, to see the traceback if there is an error. For example:
Traceback (most recent call last):
File "", line 1, in
NameError: name 'r' is not defined
Hi Liam. I see your problem. It’s important to know when Python runs into a problem, but errors can be difficult to spot when the service’s console — alive and well in the isolated Session 0 — isn’t visible on your desktop.
You have a couple of options:
1. Capture the output of your Python program in a text file
AlwaysUp can capture Python’s command line output to a file of your choosing. That option is available on the Extras tab:
Check the Capture output to this log file box and enter the full path to a (new) text file.
If your script generates lots of text, you may want to prevent the file from growing too large. Check the Automatically trim box and specify the maximum size in megabytes. When the file grows to the maximum size, the oldest 10% will be discarded to make room for new entries. Be sure to tune the max size so that you don’t lose useful data.
With those settings in place, your Python service will write all console/traceback output to the file. Both the standard output and standard error streams will be captured.
Open the file to see what’s going on with your script. Or even better, use the free WinTail to “track” the file. New lines will appear in real-time — just if you were looking at the Python console.
To confirm our advice, we ran a Python script with a deliberate error (borrowed from this page) and captured the output. Here is the result (with WinTail monitoring the output file):
2. Run your Python script in the current session, where you will see the console
If you don’t want to configure logging — or you just want to see the console temporarily while debugging a problem — you can instruct AlwaysUp to run the Python console on your desktop.
Simply select Application > Restart in this session and AlwaysUp will temporarily stop Python and “re-parent” it onto your screen:
Your program will run visibly while you are logged in. When you logout, AlwaysUp will automatically return your application to the background (i.e. Session 0).
One final bit of advice…
We recommend that you do your best to thoroughly debug your Python script before running it as a set-it-and-forget-it Windows Service. Dynamic languages like Python need extra attention in that area.
The fewer surprises in production the better, right?