SyncThingWin

Auto restart and minor bug fixes

bloones released this on 23 Dec 2014

There is now an auto-restart syncthing option in the configuration screen that allow to restart syncthing if the program stop or shutdown instead of stopping the service. A limit can be placed on the number of shutdown authorized by period of time after which the service will stop trying the start syncthing and stop instead.

A minor installation bug was also fixed that would cause a null exception if the syncthing process priority was not set in the configuration options.

To update syncthingtray, just stop the service, replace the executable, execute syncthingtray configure to change the configuration if needed (The auto-restart syncthign will be disabled by default), then start the service.

In the source code folder, I included a debug folder with the debug executable in case somebody has an issue and need troubleshooting capabilities.

Downloads

Run syncthing as a windows service

bloones released this on 20 Dec 2014 · 1 commit to master since this release

SyncThingTray allow to run syncthing (http://syncthing.net/) as a windows service.

SyncThingTray requires the .Net framework 4.5.1 and was tested under Windows 8 but should be compatible with all desktop version of windows.

SyncTray executable work both as the windows service as well as the system tray notification.

To install and configure the service, copy the executable and the dll where you want it to be installed, then execute SyncThingTray. You will be prompted for the location of the current configuration of syncthing (Will be populated if found), the new, user independent, location of the configuration and the path to the syncthing executable. Additional options are available to configure the service and allow to uninstall the service. The service will run as long as syncthing is running. If syncthing is stopped via the web GUI, the service will stop. If the service is stopped, a shutdown request will be sent to Syncthing if an API has been generated. If the shutdown request does not succeed in time, then syncthing will be closed using a ctrl+c command and finally killed if everything else fails.

When installed and running, the service can be monitored by executing SyncThingTray again (Should be added as a shortcut in the user start menu, startup folder). The SyncThingTray will display a copy of the syncthing console (Which can be safely closed), will notify you if the service is started or stopped and also provide, using a right click on the tray icon, additional functionality:

Show Console: If the console has been closed, allow to show it again
Show Gui: Open the syncthing web gui using your default browser by reading the address in the configruation file.
Restart: Request syncthing to restart itself. This functionality requires a API Key to be generated in the syncthing web GUI.
Upgrade: Request syncthing to upgrade itself if an upgrade if available. This functionality requires a API Key to be generated in the syncthing web GUI.
Shutdown: Request syncthing to shutdown. This functionality requires a API Key to be generated in the syncthing web GUI. Soon after, you will receive a notification that the service has stopped.
Stop Service and Start Service: Allow to start and stop the windows service.

SyncThingTray also support the following command lines:

SyncThingTray install: Just install the windows service with no configuration
SyncThingTray uninstall: uninstall the windows service but not the configruation
SyncThingTray start: Start the windows service
SyncThingTray stop: Stop the windows service
SyncThingTray configure: Open the configuration screen for further options
SyncThingTray shutdown: Sent a request to syncthing to shutdown. An error message will be shown if failure occure but no success message is displayed.
SyncThingTray restart: Sent a request to syncthing to restart. An error message will be shown if failure occure but no success message is displayed.
SyncThingTray upgrade: Sent a request to syncthing to upgrade itself if a new version is available. An error message will be shown if failure occure but no success message is displayed.

In the hope that this project will be helpful.

Downloads

SyncThingWin -- Run syncthing as a windows service的更多相关文章

  1. How to Run Syncthing 24/7 as a Windows Service with AlwaysUp

    http://www.coretechnologies.com/products/AlwaysUp/Apps/RunSyncthingAsAWindowsService.html Automatica ...

  2. 如何利用mono把.net windows service程序迁移到linux上

    How to migrate a .NET Windows Service application to Linux using mono? 写在最前:之所以用要把windows程序迁移到Linux上 ...

  3. 如何托管ASP.NET Core应用到Windows Service中

    (此文章同时发表在本人微信公众号"dotNET开发经验谈",欢迎右边二维码来关注.) 题记:正在构思一个中间件的设计,考虑是否既可以使用最新的技术,也可以兼顾传统的部署模式.所以有 ...

  4. 使用Windows Service Wrapper快速创建一个Windows Service

    前言 今天介绍一个小工具的使用.我们都知道Windows Service是一种特殊的应用程序,它的好处是可以一直在后台运行,相对来说,比较适合一些需要一直运行同时不需要过多用户干预的应用程序,这一类我 ...

  5. Windows Service--Write a Better Windows Service

    原文地址: http://visualstudiomagazine.com/Articles/2005/10/01/Write-a-Better-Windows-Service.aspx?Page=1 ...

  6. 使用Python写Windows Service服务程序

    1.背景 如果你想用Python开发Windows程序,并让其开机启动等,就必须写成windows的服务程序Windows Service,用Python来做这个事情必须要借助第三方模块pywin32 ...

  7. How to do code coverage test for windows service

    First, instrument the exe or dll by command vsinstr -coverage the dll/exe second, start the performa ...

  8. Windows批处理以服务的方式启动解决思路(ShadowsockR注册成Windows Service)

    我以ShadowsockR的server启动来解释: 由于这东西是python,如果要启动,可以写一个批处理(python.exe server.py)来启动,但是我观察发现启动的时候是附带pytho ...

  9. Allow windows service to "Interact with desktop"

    Typically, services are designed to run unattended without any UI with any need to interact with des ...

随机推荐

  1. WCF - Autofac IOC

    /// <summary> /// IOC实例提供者,基于AutoFac /// /// </summary> public class IocInstanceProvider ...

  2. Python_oldboy_自动化运维之路_函数,装饰器,模块,包(六)

    本节内容 上节内容回顾(函数) 装饰器 模块 包 1.上节内容回顾(函数) 函数 1.为什么要用函数? 使用函数之模块化程序设计,定义一个函数就相当于定义了一个工具,需要用的话直接拿过来调用.不使用模 ...

  3. 回归模型效果评估系列2-MAE、MSE、RMSE、MAPE(MAPD)

      MAE.MSE.RMSE.MAPE(MAPD)这些都是常见的回归预测评估指标,重温下它们的定义和区别以及优缺点吧     MAE(Mean Absolute Error) 平均绝对误差      ...

  4. 树莓派3B安装远程

    步骤1:树莓派3安装 RDP SERVER 及VNC SERVER sudo apt-get install -y tightvncserver sudo vncserver 最后才知道一定要加上VN ...

  5. PHP性能调优---php-fpm中启用慢日志配置(用于检测执行较慢的PHP脚本)

    虽然通过nginx accesslog可以记录用户访问某个接口或者网页所消耗的时间,但是不能清晰地追踪到具体哪个位置或者说函数慢,所以通过php-fpm慢日志,slowlog设置可以让我们很好的看见哪 ...

  6. 一步一步学习IdentityServer3 (15) 授权模式那些事

    总结一句话,其实很简单 在什么Clients 拿的认证权限Scope 就去 去开什么Scope限制的服务接口门 在写Clients的时候,会有Scope,看下面的代码 new Client { Cli ...

  7. HTML小工具

    一般可能用的到的符号代码: 符号 HTML 符号 HTML     & & < < > > ⁄ ⁄ " " ¸ ¸ ° ° ½ ½ ¼ ¼ ...

  8. pymongo处理正则表达式的情况

    在python里使用pymongo处理mongodb数据库,在插入或者查询的时候,我们有时需要使用操作符号,如set,in, 具体操作符的可以参考  https://docs.mongodb.com/ ...

  9. TypeScript学习笔记(一) - 环境搭建

    本篇将简单介绍一下TypeScript,并记录开发环境的搭建.使用Visual Studio Code进行一个简单的Demo开发过程. 第一部分.简介 TypeScript是一种由微软开发的自由和开源 ...

  10. 同一个IP不同端口号使用session失效

    背景 我有两个工程projectA.projectB,projectA放在TomcatA中,projectB放在TomcatB中,TomcatA.TomcatB在一台server上. 工程都映射的根路 ...