Giter Site home page Giter Site logo

jongha / clickoncedm Goto Github PK

View Code? Open in Web Editor NEW
1.0 3.0 2.0 2.09 MB

ClickOnceDM is a mass email sending system. This program is written by C# on Microsoft.NET framework. It supports history, HTML preview and multiple SMTP server binding for fast sending. This program also supports retrieving a recipients list on remote databases (MySQL, SQL Server, etc..). Currently only support data source from MySQL and manual text.

License: MIT License

CSS 13.22% JavaScript 71.57% C# 12.75% ASP 2.46%
smtp-server microsoft mysql workspace recipients email javascript

clickoncedm's Introduction

ClickOnceDM

ClickOnceDM is a mass email sending system. This program is written by C# on Microsoft.NET framework. It supports history, HTML preview and multiple SMTP server binding for fast sending. This program also supports retrieving a recipients list on remote databases (MySQL, SQL Server, etc..). Currently only support data source from MySQL and manual text.

Requirements

Microsoft Enterprise Library

Microsoft Enterprise Library 5.0 Download

System.Data.SQLite

System.Data.SQLite Download

or Use NuGet Package.

Composition

This project has two sub-projects. These two projects based on Microsoft .NET Framework and written using C#. It is ClickOnceDMAdmin and ClickOnceDMService. ClickOnceDMAdmin is web application that can manage mail sending, log and status. ClickOnceDMService is service application that can install in Windows OS. You can install this service using Installutil.exe. (see more http://msdn.microsoft.com/en-us/library/50614e95(v=vs.110).aspx)

Configuration

App.config in ClickOnceDMService

AppSettings

<appSettings>
  <add key="SMTPServer" value="smtp.server.com:25"/>
  <add key="Workspace" value="C:\Workspace\"/>
  <add key="BlockCount" value="200"/>
  <add key="BlockSleep" value="3000"/>
  <add key="StatisticsDatabase" value="C:\ClickOnceDM\db\Statistics.db" />
</appSettings>
  • SMTPServer: SMTP Server and Post list. It can be multiple SMTP Servers separated by semicolon(;).
  • Workspace: Workspace is managed directory by this application. It can be contained queue file, success and error logs.
  • BlockCount: Sending count per one program loop.
  • BlockSleep: Delay time after sending. (Millisecond)

Web.config in ClickOnceDMAdmin

Plugins

<plugins>
  <add name="None" source="Liternal" value="" />
  <add name="Test User" source="Liternal" value="[email protected]" />
  <add name="Total User" source="Member" value="select userName as name, userEmail as address from Member'" />
</plugins>

AppSettings

<appSettings>
  <add key="Workspace" value="C:\Workspace\" />
  <add key="Database" value="C:\ClickOnceDM\db\ClickOnceDM.db" />
  <add key="StatisticsDatabase" value="C:\ClickOnceDM\db\Statistics.db" />
</appSettings>
  • Workspace: Workspace is managed directory by this application. It can be contained queue file, success and error logs. It must be same with App.config setting.
  • Database: SQLite log database file path.

ConnectionStrings

ConnectionString is related to Plugin section. The source value of Plugin section reference this setting.

<connectionStrings>
  <add name="Member"
       providerName="System.Data.SqlClient"
       connectionString="Data Source=db;Initial Catalog=db;Integrated Security=False;User Id=user;Password=passwd;MultipleActiveResultSets=True" />
  <add name="Liternal"
       providerName="System.String[]"
       connectionString="NODATA" />
</connectionStrings>

License

ClickOnceDM is available under the terms of the MIT License.

clickoncedm's People

Contributors

jongha avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar

clickoncedm's Issues

Zero size ticket file problem.

Application: ClickOnceDMService.exe
Framework Version: v4.0.30319
Description: The process was terminated due to an unhandled exception.
Exception Info: System.Runtime.Serialization.SerializationException
Stack:
at System.Runtime.Serialization.Json.DataContractJsonSerializer.InternalReadObject(System.Runtime.Serialization.XmlReaderDelegator, Boolean)
at System.Runtime.Serialization.XmlObjectSerializer.InternalReadObject(System.Runtime.Serialization.XmlReaderDelegator, Boolean, System.Runtime.Serialization.DataContractResolver)
at System.Runtime.Serialization.XmlObjectSerializer.ReadObjectHandleExceptions(System.Runtime.Serialization.XmlReaderDelegator, Boolean, System.Runtime.Serialization.DataContractResolver)
at System.Runtime.Serialization.Json.DataContractJsonSerializer.ReadObject(System.Xml.XmlDictionaryReader)
at System.Runtime.Serialization.Json.DataContractJsonSerializer.ReadObject(System.IO.Stream)
at ClickOnceDMLib.Process.TicketProcess.GetTickets()
at ClickOnceDMLib.Process.QueueProcess.BuildQueueFromTicket(ClickOnceDMLib.Process.TicketProcess, Int32)
at ClickOnceDMService.QueueService.Process()
at System.Threading.ThreadHelper.ThreadStart_Context(System.Object)
at System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean)
at System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object)
at System.Threading.ThreadHelper.ThreadStart()

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.