您的位置:首页 > 编程语言 > C#

C# 使用windows服务发送邮件

2017-05-09 02:29 260 查看
最近做了一个使用 C# 写了一个发送邮件的 windows 服务,在这里记录一下。

首先使用 Visual Studio 2015 创建一个 windows 服务项目。

@echo 启动安装服务中....
@Set installPath=C:\Windows\Microsoft.NET\Framework\v4.0.30319\InstallUtil.exe
@Set serversName=SendMailService
@goto checkFile
:checkFile
@echo 检测Framework安装路径: %installPath%
@IF NOT EXIST "%installPath%" GOTO filed
@IF EXIST "%installPath%" GOTO success
:run
@rem
@set /p type=请选择服务操作模式,安装(1),卸载(2),退出(3)...
@IF "%type%"==""  goto run
@IF "%type%"=="1" goto runInstall
@IF "%type%"=="2" goto runUnInstall
@IF "%type%"=="3" exit
:success
@echo 地址检测完成
@rem
@goto run
:filed
@echo 检测失败,当前路径文件不存在...
@set /p installPath=请重新指定物理路径:
@goto checkFile
:runInstall
%installPath% SendMail.exe
@rem
@net start %serversName%
@pause

@goto run
:runUnInstall
@rem
@net stop %serversName%
@sc delete %serversName%
@pause
@rem
@goto run


代码
把上面这一段代码复制到新建的文本文件(txt)中,然后把后缀改为 bat,然后把它和 bin\ Debug 或者 Release 文件夹下编译好的文件放到同一个文件夹下。然后执行这个后缀为 bat 的文件,根据提示的步骤就可以很简单的安装和卸载服务了。

启动服务命令: net start SendMailService(服务的名称)

停止服务命令: net stop SendMailService(服务的名称)

PS:如果安装的服务的文件进行了修改,但是路径没有变化的话是不需要重新注册服务的,直接停止服务,然后用新的文件覆盖原来的文件即可,如果路径发生变化,应该先卸载这个服务,然后重新安装这个服务。

最后一步,因为这个服务依赖于 sql server ,所以需要把服务设置为延迟启动。



选中服务右击,选择属性。把启动类型设置为:自动(延迟启动)。



这样一个使用 windows 服务发送邮件的功能就完成了。现在可以把服务开启,然后向数据库插入一条邮件信息的数据,试试看效果。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: