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. netstat-ll-grep-nohup-df-supervisord

    ============http://man.linuxde.net/=========== 0 vi / n是查找下一个,alt+n是上一个  u撤销上一步,回到上一步 1. 根据进程号(4974) ...

  2. python网络编程--线程锁(互斥锁Mutex)

    一:为什么需要线程锁 一个进程下可以启动多个线程,多个线程共享父进程的内存空间,也就意味着每个线程可以访问同一份数据,此时,如果2个线程同时要修改同一份数据,会出现什么状况? 很简单,假设你有A,B两 ...

  3. Java字符串拼接效率对比

    1.来自:http://blog.csdn.net/Zen99T/article/details/51255418 2.来自:http://blog.csdn.net/kimsoft/article/ ...

  4. Effective STL 学习笔记 32 ~ 33

    Effective STL 学习笔记 32 ~ 33 */--> div.org-src-container { font-size: 85%; font-family: monospace; ...

  5. OSI & TCP/IP 参考模型

    OSI参考模型的结构 OSI划分七层结构的基本原则 网中各结点都具有相同的层次: 不同结点的同等层具有相同的功能: 同一结点内相邻层之间通过接口通信: 每一层可以使用下层提供的服务,并向其上层提供服务 ...

  6. FlumeNG介绍及安装部署

    本节内容: Flume简介 Flume NG核心组件 Flume部署种类 Flume单机安装 一.Flume简介 Flume是一个分布式.可靠.高可用的海量日志聚合系统,支持在系统中定制各类数据发送方 ...

  7. jenkins定时构建

    打开job的配置界面,在构建触发器栏下有Poll SCM(定时检查源码变更并构建)和Build periodically(周期进行项目构建,不关心源码是否变更) 定时构建语法: * * * * *(和 ...

  8. Python 笔记(一)字典与json使用及注意点

    个人笔记系列,随便参考 1.python 中字典与json的差别 字典的生成 >>> a = dict(one=1, two=2, three=3) >>> b = ...

  9. react篇章-事件处理

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8" /> <title&g ...

  10. IDEA导入eclipse项目并部署运行完整步骤(转发)

    首先说明一下:idea里的project相当于eclipse里的workspace,而idea里的modules相当于eclipse里的project 1.File-->Import Proje ...