Revision: 60
Author: tmyroadctfig
Date: 2006-07-19 06:14:39 -0700 (Wed, 19 Jul 2006)
ViewCVS: http://svn.sourceforge.net/nmailserver/?rev=60&view=rev
Log Message:
-----------
Further work on website and setup related projects.
Modified Paths:
--------------
NMail/branches/luke-dev/Installer/NMail-Installer.wxs
NMail/branches/luke-dev/NMail.Administration.Web/App_Themes/Default/Default.skin
NMail/branches/luke-dev/NMail.Administration.Web/App_Themes/Default/StyleSheet.css
NMail/branches/luke-dev/NMail.Administration.Web/Login.aspx.cs
NMail/branches/luke-dev/NMail.Administration.Web/ViewFolders.aspx
NMail/branches/luke-dev/NMail.Administration.Web/ViewMailDomains.aspx
NMail/branches/luke-dev/NMail.PostInstall/PostInstallForm.Designer.cs
NMail/branches/luke-dev/NMail.PostInstall/PostInstallForm.cs
NMail/branches/luke-dev/NMail.SetupWizard/FinalConfigPanel.cs
NMail/branches/luke-dev/NMail.SetupWizard/NMail.SetupWizard.csproj
NMail/branches/luke-dev/NMail.SetupWizard/SmtpSubSysConfigPanel.cs
NMail/branches/luke-dev/NMail.build
Added Paths:
-----------
NMail/branches/luke-dev/NMail.PostInstall/NMail.PostInstall.build
NMail/branches/luke-dev/NMail.SetupWizard/NMail.SetupWizard.build
NMail/branches/luke-dev/NMail.SetupWizard/ServiceConfigPanel.Designer.cs
NMail/branches/luke-dev/NMail.SetupWizard/ServiceConfigPanel.cs
NMail/branches/luke-dev/NMail.SetupWizard/ServiceConfigPanel.resx
Modified: NMail/branches/luke-dev/Installer/NMail-Installer.wxs
===================================================================
--- NMail/branches/luke-dev/Installer/NMail-Installer.wxs 2006-07-15 12:15:25 UTC (rev 59)
+++ NMail/branches/luke-dev/Installer/NMail-Installer.wxs 2006-07-19 13:14:39 UTC (rev 60)
@@ -19,6 +19,7 @@
<UpgradeVersion />
</Upgrade> -->
+
<!--
==
== Conditions
@@ -72,7 +73,13 @@
<!-- Account="NetworkService" -->
</Component>
+ <Component Id="C_NMail.SetupWizard.exe" Guid="EFAD461E-6D96-4b5b-B56C-77D39DF6B233">
+ <File Id="NMail.SetupWizard.exe" Name="SetupWiz.exe" LongName="NMail.SetupWizard.exe" DiskId="1" Source="obj\NMail.SetupWizard.exe" Vital="yes">
+ <Shortcut Id="startmenuNMailSetup" Directory="ProgramMenuDir" Name="SetupWiz" LongName="NMail Setup Wizard" WorkingDirectory="INSTALLDIR" />
+ </File>
+ </Component>
+
<!--
==
== Webpage
@@ -192,12 +199,16 @@
</Directory>
</Directory>
</Directory>
-
- <Component Id="C_VirtualWebDir" Guid="45A1A00F-7CAB-462f-A361-18566149FEBF">
+
+ <!-- <Component Id="C_VirtualWebDir" Guid="45A1A00F-7CAB-462f-A361-18566149FEBF">
<WebVirtualDir Id="WebVirtualDir" Alias="NMailAdmin" Directory="D_NMail.Administration.Web" WebSite="DefaultWebSite">
<WebApplication Id="WebApplication" Name="NMailAdmin" />
</WebVirtualDir>
- </Component>
+
+ <WebSite Id="DefaultWebSite" Description="Default Web Site" >
+ <WebAddress Id="AllUnassigned" Port="443" Secure="yes"/>
+ </WebSite>
+ </Component> -->
<!--
==
@@ -336,12 +347,32 @@
</Directory>
<Directory Id="DesktopFolder" Name="Desktop" />
+
</Directory>
- <WebSite Id="DefaultWebSite" Description="Default Web Site">
- <WebAddress Id="AllUnassigned" Port="443" Secure="yes"/>
- </WebSite>
+
+ <!--
+ ==
+ == Custom actions and related
+ ==
+ -->
+
+ <Binary Id="B_NMail.PostInstall.exe" SourceFile="obj\NMail.PostInstall.exe" />
+ <CustomAction Id="CA_PostInstall" BinaryKey="B_NMail.PostInstall.exe" ExeCommand="" />
+ <CustomAction Id="CA_SetupWizard" FileKey="NMail.SetupWizard.exe" ExeCommand="" Return="asyncNoWait"/>
+
+ <InstallExecuteSequence>
+ <Custom Action="CA_PostInstall" After="InstallFinalize" />
+ <Custom Action="CA_SetupWizard" After="InstallFinalize" />
+ </InstallExecuteSequence>
+
+ <!--
+ ==
+ == Feature tree
+ ==
+ -->
+
<Feature Id="F_Base" Absent="disallow" Title="NMail" Level="1"
ConfigurableDirectory="INSTALLDIR" Display="expand"
Description="The components required in a NMail installation.">
@@ -360,6 +391,7 @@
<ComponentRef Id="C_NMail.Server.Console.exe" />
<ComponentRef Id="C_NMail.Administration.Console.exe" />
<ComponentRef Id="C_NMail.Server.Service.exe" />
+ <ComponentRef Id="C_NMail.SetupWizard.exe" />
<!-- NMail Server DLLs -->
<ComponentRef Id="C_MonoPrivileges.dll" />
@@ -391,7 +423,10 @@
<Feature Id="F_AdminWebsite" Display="expand" Title="Administration Website" Level="1"
Description="NMail's ASP.net administration website.">
- <ComponentRef Id="C_VirtualWebDir"/>
+ <!-- <Feature Id="F_SetupIIS" Display="expand" Title="Setup IIS Virtual Directory" Level="1"
+ Description="Setups IIS to have a virtual directory for NMail's administration website. Requires IIS.">
+ <ComponentRef Id="C_VirtualWebDir"/>
+ </Feature> -->
<!-- Admin website files -->
<ComponentRef Id="component0"/>
Modified: NMail/branches/luke-dev/NMail.Administration.Web/App_Themes/Default/Default.skin
===================================================================
--- NMail/branches/luke-dev/NMail.Administration.Web/App_Themes/Default/Default.skin 2006-07-15 12:15:25 UTC (rev 59)
+++ NMail/branches/luke-dev/NMail.Administration.Web/App_Themes/Default/Default.skin 2006-07-19 13:14:39 UTC (rev 60)
@@ -3,23 +3,23 @@
<asp:LoginStatus runat="server" Font-Size="smaller" />
<asp:DetailsView runat="server" CellPadding="4" ForeColor="#333333" GridLines="None">
- <CommandRowStyle BackColor="#D1DDF1" Font-Bold="True" />
- <EditRowStyle BackColor="#2461BF" />
- <RowStyle BackColor="#EFF3FB" />
+ <CommandRowStyle BackColor="#aaaaaa" Font-Bold="True" />
+ <EditRowStyle BackColor="#bbbbbb" />
+ <RowStyle BackColor="#dddddd" />
<PagerStyle BackColor="#2461BF" ForeColor="White" HorizontalAlign="Center" />
<FooterStyle BackColor="#507CD1" Font-Bold="True" ForeColor="White" />
<PagerStyle BackColor="#2461BF" ForeColor="White" HorizontalAlign="Center" />
- <HeaderStyle BackColor="#507CD1" Font-Bold="True" ForeColor="White" />
+ <HeaderStyle BackColor="#666666" Font-Bold="True" ForeColor="Black" />
<AlternatingRowStyle BackColor="White" />
</asp:DetailsView>
<asp:GridView runat="server" CellPadding="4" ForeColor="#333333" GridLines="None">
- <EditRowStyle BackColor="#2461BF" />
- <RowStyle BackColor="#EFF3FB" />
+ <EditRowStyle BackColor="#bbbbbbb" />
+ <RowStyle BackColor="#dddddd" />
<PagerStyle BackColor="#2461BF" ForeColor="White" HorizontalAlign="Center" />
<FooterStyle BackColor="#507CD1" Font-Bold="True" ForeColor="White" />
<SelectedRowStyle BackColor="#D1DDF1" Font-Bold="True" ForeColor="#333333" />
<PagerStyle BackColor="#2461BF" ForeColor="White" HorizontalAlign="Center" />
- <HeaderStyle BackColor="#507CD1" Font-Bold="True" ForeColor="White" />
+ <HeaderStyle BackColor="#666666" Font-Bold="True" ForeColor="Black" />
<AlternatingRowStyle BackColor="White" />
</asp:GridView>
\ No newline at end of file
Modified: NMail/branches/luke-dev/NMail.Administration.Web/App_Themes/Default/StyleSheet.css
===================================================================
--- NMail/branches/luke-dev/NMail.Administration.Web/App_Themes/Default/StyleSheet.css 2006-07-15 12:15:25 UTC (rev 59)
+++ NMail/branches/luke-dev/NMail.Administration.Web/App_Themes/Default/StyleSheet.css 2006-07-19 13:14:39 UTC (rev 60)
@@ -3,6 +3,16 @@
font-family: Sans-Serif;
}
+A:link
+{
+ color: Blue;
+}
+
+A:visited
+{
+ color: #101070;
+}
+
.title
{
font-size: 24pt;
@@ -41,7 +51,7 @@
.side-bar
{
- background-color: #999999;
+ background-color: #cccccc;
border-right: black thin solid;
vertical-align: top;
height: 100%;
@@ -50,15 +60,15 @@
.header-style
{
- background-color: #507CD1;
+ background-color: #666666;
font-weight: bold;
- color: white;
+ color: black;
padding: 4px;
}
.row-style
{
- background-color: #EFF3FB;
+ background-color: #dddddd;
padding: 4px;
}
Modified: NMail/branches/luke-dev/NMail.Administration.Web/Login.aspx.cs
===================================================================
--- NMail/branches/luke-dev/NMail.Administration.Web/Login.aspx.cs 2006-07-15 12:15:25 UTC (rev 59)
+++ NMail/branches/luke-dev/NMail.Administration.Web/Login.aspx.cs 2006-07-19 13:14:39 UTC (rev 60)
@@ -5,6 +5,7 @@
using System.Net.Security;
using System.Runtime.Remoting;
using System.Runtime.Remoting.Channels;
+using System.Runtime.Remoting.Lifetime;
using System.Security.Cryptography.X509Certificates;
using System.Threading;
using System.Web;
@@ -38,6 +39,8 @@
Session["RemoteAdministration"] = ra;
Session["LocalStore"] = ra.NMailServer.LocalStore;
+ SetupSponsorship(ra);
+
foreach (ServiceStartInfo service in ra.NMailServer.Services)
{
if (service.Service is ISpoolService)
@@ -48,5 +51,17 @@
}
}
}
+
+ protected void SetupSponsorship(MarshalByRefObject o)
+ {
+ ILease lease = o.InitializeLifetimeService() as ILease;
+
+ if (lease != null && lease.CurrentState == LeaseState.Initial)
+ {
+ lease.InitialLeaseTime = TimeSpan.FromMinutes(Session.Timeout);
+ lease.SponsorshipTimeout = TimeSpan.FromMinutes(Session.Timeout);
+ lease.RenewOnCallTime = TimeSpan.FromMinutes(Session.Timeout);
+ }
+ }
}
}
\ No newline at end of file
Modified: NMail/branches/luke-dev/NMail.Administration.Web/ViewFolders.aspx
===================================================================
--- NMail/branches/luke-dev/NMail.Administration.Web/ViewFolders.aspx 2006-07-15 12:15:25 UTC (rev 59)
+++ NMail/branches/luke-dev/NMail.Administration.Web/ViewFolders.aspx 2006-07-19 13:14:39 UTC (rev 60)
@@ -1,4 +1,5 @@
<%@ Page Language="C#" MasterPageFile="~/MasterPage.master" AutoEventWireup="true" CodeFile="ViewFolders.aspx.cs" Inherits="ViewFolders" Title="NMail Administration - Folders" %>
+<%@ Reference Control="~/TaskList.ascx" %>
<asp:Content ID="MainContent" ContentPlaceHolderID="ContentPlaceHolder" Runat="Server">
<h1>Folders</h1>
<asp:GridView ID="FoldersGridView" runat="server" AutoGenerateColumns="False" DataSourceID="FoldersDataSource">
Modified: NMail/branches/luke-dev/NMail.Administration.Web/ViewMailDomains.aspx
===================================================================
--- NMail/branches/luke-dev/NMail.Administration.Web/ViewMailDomains.aspx 2006-07-15 12:15:25 UTC (rev 59)
+++ NMail/branches/luke-dev/NMail.Administration.Web/ViewMailDomains.aspx 2006-07-19 13:14:39 UTC (rev 60)
@@ -1,4 +1,5 @@
<%@ Page Language="C#" MasterPageFile="~/MasterPage.master" AutoEventWireup="true" CodeFile="ViewMailDomains.aspx.cs" Inherits="ViewMailDomains" Title="NMail Administration -Mail Domains" %>
+<%@ Reference Control="~/TaskList.ascx" %>
<asp:Content ID="MainContent" ContentPlaceHolderID="ContentPlaceHolder" Runat="Server">
<h1>Mail Domains</h1>
<asp:ObjectDataSource ID="MailDomainDataSource" runat="server" SelectMethod="GetMailDomains" TypeName="NMail.Administration.Web.MailDomainDataSource">
Added: NMail/branches/luke-dev/NMail.PostInstall/NMail.PostInstall.build
===================================================================
--- NMail/branches/luke-dev/NMail.PostInstall/NMail.PostInstall.build (rev 0)
+++ NMail/branches/luke-dev/NMail.PostInstall/NMail.PostInstall.build 2006-07-19 13:14:39 UTC (rev 60)
@@ -0,0 +1,82 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<project name="nant" default="build">
+ <!-- default configuration -->
+ <property name="project.config" value="Debug" />
+ <property name="current.build.defines" value="" />
+
+ <target name="Debug" description="Perform a 'debug' build">
+ <property name="project.config" value="Debug" />
+ <property name="build.debug" value="true" />
+ <property name="build.dir" value="obj/${project.config}" />
+ <property name="output.dir" value="bin/${project.config}" />
+ </target>
+
+ <target name="Release" description="Perform a 'release' build">
+ <property name="project.config" value="Release" />
+ <property name="build.debug" value="false" />
+ <property name="build.dir" value="obj/${project.config}" />
+ <property name="output.dir" value="bin/${project.config}" />
+ </target>
+
+ <target name="init" description="Initializes build properties">
+ <call target="${project.config}" />
+ </target>
+
+ <target name="build" depends="init" description="Builds current configuration">
+ <echo message="Build Directory is [${build.dir}]" />
+ <echo message="Output Directory is [${output.dir}]" />
+ <!-- prepare directories -->
+ <mkdir dir="${build.dir}" />
+ <mkdir dir="${output.dir}" />
+
+ <!-- copy framework-neutral libraries -->
+ <copy todir="${build.dir}">
+ <fileset basedir="../References/NMail/${project.config}">
+ <include name="NMail.dll" />
+ <include name="NMail.SmtpService.dll"/>
+ </fileset>
+ </copy>
+
+ <!-- build main assembly -->
+ <csc target="exe" define="${current.build.defines}" debug="${build.debug}" output="${output.dir}/NMail.PostInstall.exe" doc="${build.dir}/NMail.PostInstall.xml">
+ <sources>
+ <include name="**.cs"/>
+ </sources>
+ <references basedir="${build.dir}">
+ <include name="NMail.dll" />
+ <include name="NMail.SmtpService.dll"/>
+ </references>
+ </csc>
+
+ <!-- copy completed build to output -->
+ <copy todir="${output.dir}">
+ <fileset basedir="${build.dir}">
+ <include name="*.dll" />
+ <include name="*.xml" />
+ <include name="*.pdb" />
+ </fileset>
+ </copy>
+ </target>
+
+ <target name="clean" depends="init" description="Deletes temporary files created in the build process">
+ <echo message="Deleting files in build directory: ${build.dir}" />
+ <delete failonerror="false">
+ <fileset>
+ <include name="${build.dir}/*.dll" />
+ <include name="${build.dir}/*.xml" />
+ <include name="${build.dir}/*.pdb" />
+ </fileset>
+ </delete>
+ </target>
+
+ <target name="cleanall" depends="init,clean" description="Deletes all files created in the build process">
+ <echo message="Deleting files in build directory: ${output.dir}" />
+ <delete failonerror="false">
+ <fileset>
+ <include name="${output.dir}/*.dll" />
+ <include name="${output.dir}/*.xml" />
+ <include name="${output.dir}/*.pdb" />
+ </fileset>
+ </delete>
+ </target>
+</project>
Modified: NMail/branches/luke-dev/NMail.PostInstall/PostInstallForm.Designer.cs
===================================================================
--- NMail/branches/luke-dev/NMail.PostInstall/PostInstallForm.Designer.cs 2006-07-15 12:15:25 UTC (rev 59)
+++ NMail/branches/luke-dev/NMail.PostInstall/PostInstallForm.Designer.cs 2006-07-19 13:14:39 UTC (rev 60)
@@ -29,7 +29,8 @@
// label1
//
this.label1.AutoSize = true;
- this.label1.Location = new System.Drawing.Point(12, 9);
+ this.label1.Dock = System.Windows.Forms.DockStyle.Top;
+ this.label1.Location = new System.Drawing.Point(0, 0);
this.label1.Name = "label1";
this.label1.Size = new System.Drawing.Size(141, 13);
this.label1.TabIndex = 0;
@@ -39,12 +40,13 @@
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
- this.ClientSize = new System.Drawing.Size(251, 32);
+ this.ClientSize = new System.Drawing.Size(251, 17);
this.Controls.Add(this.label1);
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
this.MaximizeBox = false;
this.MinimizeBox = false;
this.Name = "PostInstallForm";
+ this.ShowInTaskbar = false;
this.Text = "NMail Setup";
this.ResumeLayout(false);
this.PerformLayout();
Modified: NMail/branches/luke-dev/NMail.PostInstall/PostInstallForm.cs
===================================================================
--- NMail/branches/luke-dev/NMail.PostInstall/PostInstallForm.cs 2006-07-15 12:15:25 UTC (rev 59)
+++ NMail/branches/luke-dev/NMail.PostInstall/PostInstallForm.cs 2006-07-19 13:14:39 UTC (rev 60)
@@ -32,7 +32,7 @@
public PostInstallForm() {
InitializeComponent();
- ThreadPool.QueueUserWorkItem(new WaitCallback(SetupSmtpServiceCounters()));
+ ThreadPool.QueueUserWorkItem(new WaitCallback(SetupSmtpServiceCounters), null);
}
private void SetupSmtpServiceCounters(object unused) {
@@ -56,6 +56,12 @@
"Performance counters for NMail's SMTP service.",
PerformanceCounterCategoryType.SingleInstance,
ccdc);
+
+ Application.Exit();
}
+
+ protected override void OnClosing(CancelEventArgs e) {
+ e.Cancel = true;
+ }
}
}
\ No newline at end of file
Modified: NMail/branches/luke-dev/NMail.SetupWizard/FinalConfigPanel.cs
===================================================================
--- NMail/branches/luke-dev/NMail.SetupWizard/FinalConfigPanel.cs 2006-07-15 12:15:25 UTC (rev 59)
+++ NMail/branches/luke-dev/NMail.SetupWizard/FinalConfigPanel.cs 2006-07-19 13:14:39 UTC (rev 60)
@@ -43,6 +43,7 @@
protected override void OnPanelDisplayed() {
this.taskMap.Clear();
+ this.taskListView.Items.Clear();
// Re-populate the task list
foreach (Task task in this.BaseForm.Tasks) {
Added: NMail/branches/luke-dev/NMail.SetupWizard/NMail.SetupWizard.build
===================================================================
--- NMail/branches/luke-dev/NMail.SetupWizard/NMail.SetupWizard.build (rev 0)
+++ NMail/branches/luke-dev/NMail.SetupWizard/NMail.SetupWizard.build 2006-07-19 13:14:39 UTC (rev 60)
@@ -0,0 +1,100 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<project name="nant" default="build">
+ <!-- default configuration -->
+ <property name="project.config" value="Debug" />
+ <property name="current.build.defines" value="" />
+
+ <target name="Debug" description="Perform a 'debug' build">
+ <property name="project.config" value="Debug" />
+ <property name="build.debug" value="true" />
+ <property name="build.dir" value="obj/${project.config}" />
+ <property name="output.dir" value="bin/${project.config}" />
+ </target>
+
+ <target name="Release" description="Perform a 'release' build">
+ <property name="project.config" value="Release" />
+ <property name="build.debug" value="false" />
+ <property name="build.dir" value="obj/${project.config}" />
+ <property name="output.dir" value="bin/${project.config}" />
+ </target>
+
+ <target name="init" description="Initializes build properties">
+ <call target="${project.config}" />
+ </target>
+
+ <target name="build" depends="init" description="Builds current configuration">
+ <echo message="Build Directory is [${build.dir}]" />
+ <echo message="Output Directory is [${output.dir}]" />
+ <!-- prepare directories -->
+ <mkdir dir="${build.dir}" />
+ <mkdir dir="${output.dir}" />
+
+ <!-- copy framework-neutral libraries -->
+ <copy todir="${build.dir}">
+ <fileset basedir="../References/">
+ <include name="MySql.Data.dll"/>
+ </fileset>
+ </copy>
+ <copy todir="${build.dir}">
+ <fileset basedir="../References/NMail/${project.config}">
+ <include name="NMail.dll" />
+ <include name="NMail.DnsClient.dll"/>
+ <include name="NMail.MessageRouter.dll"/>
+ <include name="NMail.SmtpClient.dll"/>
+ <include name="NMail.SmtpService.dll"/>
+ <include name="NMail.SpoolData.MySql.dll"/>
+ <include name="NMail.SpoolFilter.dll"/>
+ <include name="NMail.SpoolService.dll"/>
+ </fileset>
+ </copy>
+
+ <!-- build main assembly -->
+ <csc target="exe" define="${current.build.defines}" debug="${build.debug}" output="${output.dir}/NMail.SetupWizard.exe" doc="${build.dir}/NMail.SetupWizard.xml">
+ <sources>
+ <include name="**.cs"/>
+ </sources>
+ <references basedir="${build.dir}">
+ <include name="MySql.Data.dll"/>
+ <include name="NMail.dll"/>
+ <include name="NMail.DnsClient.dll"/>
+ <include name="NMail.MessageRouter.dll"/>
+ <include name="NMail.SmtpClient.dll"/>
+ <include name="NMail.SmtpService.dll"/>
+ <include name="NMail.SpoolData.MySql.dll"/>
+ <include name="NMail.SpoolFilter.dll"/>
+ <include name="NMail.SpoolService.dll"/>
+ </references>
+ </csc>
+
+ <!-- copy completed build to output -->
+ <copy todir="${output.dir}">
+ <fileset basedir="${build.dir}">
+ <include name="*.dll" />
+ <include name="*.xml" />
+ <include name="*.pdb" />
+ </fileset>
+ </copy>
+ </target>
+
+ <target name="clean" depends="init" description="Deletes temporary files created in the build process">
+ <echo message="Deleting files in build directory: ${build.dir}" />
+ <delete failonerror="false">
+ <fileset>
+ <include name="${build.dir}/*.dll" />
+ <include name="${build.dir}/*.xml" />
+ <include name="${build.dir}/*.pdb" />
+ </fileset>
+ </delete>
+ </target>
+
+ <target name="cleanall" depends="init,clean" description="Deletes all files created in the build process">
+ <echo message="Deleting files in build directory: ${output.dir}" />
+ <delete failonerror="false">
+ <fileset>
+ <include name="${output.dir}/*.dll" />
+ <include name="${output.dir}/*.xml" />
+ <include name="${output.dir}/*.pdb" />
+ </fileset>
+ </delete>
+ </target>
+</project>
Modified: NMail/branches/luke-dev/NMail.SetupWizard/NMail.SetupWizard.csproj
===================================================================
--- NMail/branches/luke-dev/NMail.SetupWizard/NMail.SetupWizard.csproj 2006-07-15 12:15:25 UTC (rev 59)
+++ NMail/branches/luke-dev/NMail.SetupWizard/NMail.SetupWizard.csproj 2006-07-19 13:14:39 UTC (rev 60)
@@ -28,11 +28,16 @@
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<ItemGroup>
+ <Reference Include="MySql.Data, Version=1.0.7.30072, Culture=neutral, PublicKeyToken=c5687fc88969c44d, processorArchitecture=MSIL">
+ <SpecificVersion>False</SpecificVersion>
+ <HintPath>..\References\MySql.Data.dll</HintPath>
+ </Reference>
<Reference Include="System" />
<Reference Include="System.configuration" />
<Reference Include="System.Data" />
<Reference Include="System.Deployment" />
<Reference Include="System.Drawing" />
+ <Reference Include="System.ServiceProcess" />
<Reference Include="System.Windows.Forms" />
<Reference Include="System.Xml" />
</ItemGroup>
@@ -61,6 +66,12 @@
<Compile Include="FinalConfigPanel.Designer.cs">
<DependentUpon>FinalConfigPanel.cs</DependentUpon>
</Compile>
+ <Compile Include="ServiceConfigPanel.cs">
+ <SubType>UserControl</SubType>
+ </Compile>
+ <Compile Include="ServiceConfigPanel.Designer.cs">
+ <DependentUpon>ServiceConfigPanel.cs</DependentUpon>
+ </Compile>
<Compile Include="SmtpSubSysConfigPanel.cs">
<SubType>UserControl</SubType>
</Compile>
@@ -90,6 +101,10 @@
<LastGenOutput>Resources.Designer.cs</LastGenOutput>
<SubType>Designer</SubType>
</EmbeddedResource>
+ <EmbeddedResource Include="ServiceConfigPanel.resx">
+ <SubType>Designer</SubType>
+ <DependentUpon>ServiceConfigPanel.cs</DependentUpon>
+ </EmbeddedResource>
<EmbeddedResource Include="SmtpSubSysConfigPanel.resx">
<SubType>Designer</SubType>
<DependentUpon>SmtpSubSysConfigPanel.cs</DependentUpon>
Added: NMail/branches/luke-dev/NMail.SetupWizard/ServiceConfigPanel.Designer.cs
===================================================================
--- NMail/branches/luke-dev/NMail.SetupWizard/ServiceConfigPanel.Designer.cs (rev 0)
+++ NMail/branches/luke-dev/NMail.SetupWizard/ServiceConfigPanel.Designer.cs 2006-07-19 13:14:39 UTC (rev 60)
@@ -0,0 +1,94 @@
+namespace NMail.SetupWizard {
+ partial class ServiceConfigPanel {
+ /// <summary>
+ /// Required designer variable.
+ /// </summary>
+ private System.ComponentModel.IContainer components = null;
+
+ /// <summary>
+ /// Clean up any resources being used.
+ /// </summary>
+ /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
+ protected override void Dispose(bool disposing) {
+ if (disposing && (components != null)) {
+ components.Dispose();
+ }
+ base.Dispose(disposing);
+ }
+
+ #region Component Designer generated code
+
+ /// <summary>
+ /// Required method for Designer support - do not modify
+ /// the contents of this method with the code editor.
+ /// </summary>
+ private void InitializeComponent() {
+ this.systemStartCheckBox = new System.Windows.Forms.CheckBox();
+ this.descriptionTextBox = new System.Windows.Forms.TextBox();
+ this.startNowCheckBox = new System.Windows.Forms.CheckBox();
+ this.mainPanel.SuspendLayout();
+ this.SuspendLayout();
+ //
+ // titleLabel
+ //
+ this.titleLabel.Size = new System.Drawing.Size(176, 29);
+ this.titleLabel.Text = "NMail Service";
+ //
+ // mainPanel
+ //
+ this.mainPanel.Controls.Add(this.startNowCheckBox);
+ this.mainPanel.Controls.Add(this.descriptionTextBox);
+ this.mainPanel.Controls.Add(this.systemStartCheckBox);
+ //
+ // systemStartCheckBox
+ //
+ this.systemStartCheckBox.AutoSize = true;
+ this.systemStartCheckBox.Location = new System.Drawing.Point(35, 68);
+ this.systemStartCheckBox.Name = "systemStartCheckBox";
+ this.systemStartCheckBox.Size = new System.Drawing.Size(200, 17);
+ this.systemStartCheckBox.TabIndex = 0;
+ this.systemStartCheckBox.Text = "Start NMail service at system startup.";
+ this.systemStartCheckBox.UseVisualStyleBackColor = true;
+ //
+ // descriptionTextBox
+ //
+ this.descriptionTextBox.BackColor = System.Drawing.Color.White;
+ this.descriptionTextBox.BorderStyle = System.Windows.Forms.BorderStyle.None;
+ this.descriptionTextBox.Location = new System.Drawing.Point(8, 8);
+ this.descriptionTextBox.Multiline = true;
+ this.descriptionTextBox.Name = "descriptionTextBox";
+ this.descriptionTextBox.ReadOnly = true;
+ this.descriptionTextBox.Size = new System.Drawing.Size(343, 40);
+ this.descriptionTextBox.TabIndex = 2;
+ this.descriptionTextBox.TabStop = false;
+ this.descriptionTextBox.Text = "NMail has a Windows service that it runs in. Please configure the startup options" +
+ " for that service below.";
+ //
+ // startNowCheckBox
+ //
+ this.startNowCheckBox.AutoSize = true;
+ this.startNowCheckBox.Location = new System.Drawing.Point(35, 91);
+ this.startNowCheckBox.Name = "startNowCheckBox";
+ this.startNowCheckBox.Size = new System.Drawing.Size(141, 17);
+ this.startNowCheckBox.TabIndex = 3;
+ this.startNowCheckBox.Text = "Start NMail service now.";
+ this.startNowCheckBox.UseVisualStyleBackColor = true;
+ //
+ // ServiceConfigPanel
+ //
+ this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
+ this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+ this.Name = "ServiceConfigPanel";
+ this.mainPanel.ResumeLayout(false);
+ this.mainPanel.PerformLayout();
+ this.ResumeLayout(false);
+
+ }
+
+ #endregion
+
+ private System.Windows.Forms.CheckBox systemStartCheckBox;
+ private System.Windows.Forms.TextBox descriptionTextBox;
+ private System.Windows.Forms.CheckBox startNowCheckBox;
+ }
+}
Added: NMail/branches/luke-dev/NMail.SetupWizard/ServiceConfigPanel.cs
===================================================================
--- NMail/branches/luke-dev/NMail.SetupWizard/ServiceConfigPanel.cs (rev 0)
+++ NMail/branches/luke-dev/NMail.SetupWizard/ServiceConfigPanel.cs 2006-07-19 13:14:39 UTC (rev 60)
@@ -0,0 +1,107 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Drawing;
+using System.Data;
+using System.Text;
+using System.ServiceProcess;
+using System.Windows.Forms;
+
+using Microsoft.Win32;
+
+namespace NMail.SetupWizard {
+ public partial class ServiceConfigPanel : BasePanel {
+ public ServiceConfigPanel(BaseForm baseForm, BasePanel previous) : base(baseForm) {
+ InitializeComponent();
+
+ this.PreviousPanel = previous;
+ this.NextPanel = new FinalConfigPanel(this.BaseForm, this);
+
+ // Setup the tasks for this panel
+ this.configServiceTask = new Task("Configure NMail service startup.", new TaskDelegate(configureServiceStartup));
+ this.startNMailTask = new Task("Start the NMail service.", new TaskDelegate(startNMailNow));
+
+ // Find the NMail service controller
+ ServiceController[] services = ServiceController.GetServices();
+
+ foreach (ServiceController service in services) {
+ if (service.DisplayName == "NMail Server") {
+ this.nmailServiceController = service;
+ break;
+ }
+ }
+ }
+
+ private ServiceController nmailServiceController;
+
+ private Task startNMailTask;
+
+ /// <summary>
+ /// The task delegate used to start the NMail service.
+ /// </summary>
+ /// <param name="message">An error message if any problems occur.</param>
+ /// <returns>The result of hte start attempt.</returns>
+ private TaskResult startNMailNow(out string message) {
+ try {
+ if (this.nmailServiceController.Status == ServiceControllerStatus.Stopped) {
+ this.nmailServiceController.Start();
+ }
+
+ message = null;
+ return TaskResult.Ok;
+
+ } catch (Exception e) {
+ message = "Error starting NMail service: " + e.Message;
+ return TaskResult.Error;
+ }
+ }
+
+ private Task configServiceTask;
+
+ private TaskResult configureServiceStartup(out string message) {
+ try {
+ RegistryKey serviceKey = Registry.LocalMachine.OpenSubKey(@"System\CurrentControlSet\Services\NMail.Server.Service.exe", true);
+
+ if (serviceKey == null) {
+ message = "Can't find NMail service configured on this system.";
+ return TaskResult.Error;
+ }
+
+ if (this.systemStartCheckBox.Checked) {
+ // Start at startup
+ serviceKey.SetValue("Start", 2);
+
+ } else {
+ // Don't start at startup
+ serviceKey.SetValue("Start", 3);
+ }
+
+ message = null;
+ return TaskResult.Ok;
+
+ } catch (Exception e) {
+ message = "Error configuring NMail service: " + e.Message;
+ return TaskResult.Error;
+ }
+ }
+
+ protected override void OnNextButtonClick() {
+ if (!this.BaseForm.Tasks.Contains(this.configServiceTask)) {
+ this.BaseForm.Tasks.Add(this.configServiceTask);
+ }
+
+ if (this.startNowCheckBox.Checked && !this.BaseForm.Tasks.Contains(this.startNMailTask)) {
+ this.BaseForm.Tasks.Add(this.startNMailTask);
+ }
+
+ base.OnNextButtonClick();
+ }
+
+ protected override void OnBackButtonClick() {
+ this.BaseForm.Tasks.Remove(this.startNMailTask);
+ this.BaseForm.Tasks.Remove(this.configServiceTask);
+
+ base.OnBackButtonClick();
+ }
+ }
+}
Added: NMail/branches/luke-dev/NMail.SetupWizard/ServiceConfigPanel.resx
===================================================================
--- NMail/branches/luke-dev/NMail.SetupWizard/ServiceConfigPanel.resx (rev 0)
+++ NMail/branches/luke-dev/NMail.SetupWizard/ServiceConfigPanel.resx 2006-07-19 13:14:39 UTC (rev 60)
@@ -0,0 +1,120 @@
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+ <!--
+ Microsoft ResX Schema
+
+ Version 2.0
+
+ The primary goals of this format is to allow a simple XML format
+ that is mostly human readable. The generation and parsing of the
+ various data types are done through the TypeConverter classes
+ associated with the data types.
+
+ Example:
+
+ ... ado.net/XML headers & schema ...
+ <resheader name="resmimetype">text/microsoft-resx</resheader>
+ <resheader name="version">2.0</resheader>
+ <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+ <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+ <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+ <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+ <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+ <value>[base64 mime encoded serialized .NET Framework object]</value>
+ </data>
+ <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+ <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+ <comment>This is a comment</comment>
+ </data>
+
+ There are any number of "resheader" rows that contain simple
+ name/value pairs.
+
+ Each data row contains a name, and value. The row also contains a
+ type or mimetype. Type corresponds to a .NET class that support
+ text/value conversion through the TypeConverter architecture.
+ Classes that don't support this are serialized and stored with the
+ mimetype set.
+
+ The mimetype is used for serialized objects, and tells the
+ ResXResourceReader how to depersist the object. This is currently not
+ extensible. For a given mimetype the value must be set accordingly:
+
+ Note - application/x-microsoft.net.object.binary.base64 is the format
+ that the ResXResourceWriter will generate, however the reader can
+ read any of the formats listed below.
+
+ mimetype: application/x-microsoft.net.object.binary.base64
+ value : The object must be serialized with
+ : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+ : and then encoded with base64 encoding.
+
+ mimetype: application/x-microsoft.net.object.soap.base64
+ value : The object must be serialized with
+ : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+ : and then encoded with base64 encoding.
+
+ mimetype: application/x-microsoft.net.object.bytearray.base64
+ value : The object must be serialized into a byte array
+ : using a System.ComponentModel.TypeConverter
+ : and then encoded with base64 encoding.
+ -->
+ <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+ <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+ <xsd:element name="root" msdata:IsDataSet="true">
+ <xsd:complexType>
+ <xsd:choice maxOccurs="unbounded">
+ <xsd:element name="metadata">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element name="value" type="xsd:string" minOccurs="0" />
+ </xsd:sequence>
+ <xsd:attribute name="name" use="required" type="xsd:string" />
+ <xsd:attribute name="type" type="xsd:string" />
+ <xsd:attribute name="mimetype" type="xsd:string" />
+ <xsd:attribute ref="xml:space" />
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="assembly">
+ <xsd:complexType>
+ <xsd:attribute name="alias" type="xsd:string" />
+ <xsd:attribute name="name" type="xsd:string" />
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="data">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+ <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+ </xsd:sequence>
+ <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+ <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+ <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+ <xsd:attribute ref="xml:space" />
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="resheader">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+ </xsd:sequence>
+ <xsd:attribute name="name" type="xsd:string" use="required" />
+ </xsd:complexType>
+ </xsd:element>
+ </xsd:choice>
+ </xsd:complexType>
+ </xsd:element>
+ </xsd:schema>
+ <resheader name="resmimetype">
+ <value>text/microsoft-resx</value>
+ </resheader>
+ <resheader name="version">
+ <value>2.0</value>
+ </resheader>
+ <resheader name="reader">
+ <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+ </resheader>
+ <resheader name="writer">
+ <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+ </resheader>
+</root>
\ No newline at end of file
Modified: NMail/branches/luke-dev/NMail.SetupWizard/SmtpSubSysConfigPanel.cs
===================================================================
--- NMail/branches/luke-dev/NMail.SetupWizard/SmtpSubSysConfigPanel.cs 2006-07-15 12:15:25 UTC (rev 59)
+++ NMail/branches/luke-dev/NMail.SetupWizard/SmtpSubSysConfigPanel.cs 2006-07-19 13:14:39 UTC (rev 60)
@@ -23,6 +23,8 @@
using System.Text;
using System.Windows.Forms;
+using MySql.Data.MySqlClient;
+
using NMail.Configuration;
using NMail.DataTypes;
using NMail.MessageRouter.Configuration;
@@ -38,7 +40,7 @@
InitializeComponent();
this.PreviousPanel = previous;
- this.NextPanel = new FinalConfigPanel(this.BaseForm, this);
+ this.NextPanel = new ServiceConfigPanel(this.BaseForm, this);
// If any of these are present consider it all enabled
if (SmtpClientConfiguration.ConfigurationPresent
@@ -63,9 +65,41 @@
} else {
this.relayList.Items.Add(new WildcardHost("localhost"));
}
+
+ this.makeTablesTask = new Task("Create tables for SMTP spool.", new TaskDelegate(makeSpoolTables));
}
+ private Task makeTablesTask;
+
/// <summary>
+ /// The code that attempts to create the tables needed for the SMTP spool.
+ /// </summary>
+ /// <param name="message">A message if an error occurs.</param>
+ /// <returns>The result of the attempt to create the tables.</returns>
+ private TaskResult makeSpoolTables(out string message) {
+ try {
+ MySqlConnection cnn = new MySqlConnection();
+ cnn.ConnectionString = this.mySqlCnnStrTextBox.Text;
+
+ while (cnn.State == ConnectionState.Closed) {
+ try {
+ cnn.Open();
+ } catch (MySqlException ex) {
+ //if (ex.Number
+ message = ex.Number.ToString();
+ }
+ }
+
+ message = "Not implemented yet...";
+ return TaskResult.Warning;
+
+ } catch (Exception e) {
+ message = "Error creating SMTP spool tables: " + e.Message;
+ return TaskResult.Error;
+ }
+ }
+
+ /// <summary>
/// Stores the settings into the configuration objects.
/// </summary>
private void storeConfiguration() {
@@ -93,9 +127,9 @@
// Save the relay hosts
ssc.RelaySubnets.Clear();
- foreach (WildcardHost host in this.relayList.Items) {
+ foreach (string host in this.relayList.Items) {
WildcardHostConfigurationElement element = new WildcardHostConfigurationElement();
- element.Match = host.ToString();
+ element.Match = host;
ssc.RelaySubnets.Add(element);
}
@@ -118,8 +152,8 @@
this.visibleHostTextBox.Text = ssc.VisibleHost.ToString();
this.mySqlCnnStrTextBox.Text = msdc.ConnectionString;
- foreach (WildcardHostElementCollection host in ssc.RelaySubnets) {
- this.relayList.Items.Add(host);
+ for (int i = 0; i < ssc.RelaySubnets.Count; i++) {
+ this.relayList.Items.Add(ssc.RelaySubnets[i].Match);
}
}
@@ -159,7 +193,17 @@
return;
}
+ if (this.regenDbCheckBox.Checked && !this.BaseForm.Tasks.Contains(this.makeTablesTask)) {
+ this.BaseForm.Tasks.Add(this.makeTablesTask);
+ }
+
base.OnNextButtonClick();
}
+
+ protected override void OnBackButtonClick() {
+ this.BaseForm.Tasks.Remove(this.makeTablesTask);
+
+ base.OnBackButtonClick();
+ }
}
}
\ No newline at end of file
Modified: NMail/branches/luke-dev/NMail.build
===================================================================
--- NMail/branches/luke-dev/NMail.build 2006-07-15 12:15:25 UTC (rev 59)
+++ NMail/branches/luke-dev/NMail.build 2006-07-19 13:14:39 UTC (rev 60)
@@ -22,6 +22,8 @@
build-NMail.ImapService,
build-NMail.DnsClient,
build-NMail.Server.Service,
+ build-NMail.SetupWizard,
+ build-NMail.PostInstall,
build-NMail.Administration.Console" />
<target name="init-build" description="Prepares the build directory">
@@ -40,7 +42,7 @@
</target>
<target name="build-NMail.Server.Console" depends="init-build,build-MonoPrivileges,build-NMail,build-NMail.Server" description="Builds the NMail Console Server executable">
- <!-- build NMail.Server Server.Console -->
+ <!-- build NMail.Server.Console -->
<nant buildfile="NMail.Server.Console/NMail.Server.Console.build" target="build" />
<copy todir="References/NMail/${project.config}">
<fileset basedir="NMail.Server.Console/bin/${project.config}">
@@ -50,7 +52,7 @@
</target>
<target name="build-MonoPrivileges" depends="init-build" description="Builds the Mono Privileges library">
- <!-- build NMail.Server MessageRouter -->
+ <!-- build NMail.MonoPrivileges-->
<nant buildfile="MonoPrivileges/MonoPrivileges.build" target="build" />
<copy todir="References/NMail/${project.config}">
<fileset basedir="MonoPrivileges/bin/${project.config}">
@@ -60,7 +62,7 @@
</target>
<target name="build-NMail.MessageRouter" depends="init-build,build-NMail,build-NMail.SmtpClient,build-NMail.SmtpService" description="Builds the NMail Message Router library">
- <!-- build NMail.Server MessageRouter -->
+ <!-- build NMail.MessageRouter -->
<nant buildfile="NMail.MessageRouter/NMail.MessageRouter.build" target="build" />
<copy todir="References/NMail/${project.config}">
<fileset basedir="NMail.MessageRouter/bin/${project.config}">
@@ -130,7 +132,7 @@
</target>
<target name="build-NMail.LocalStoreData.MySql" depends="init-build,build-NMail" description="Builds the NMail Local Store-data Mysql library">
- <!-- build NMail.LocalStore assembly -->
+ <!-- build NMail.LocalStoreData.MySql assembly -->
<nant buildfile="NMail.LocalStoreData.MySql/NMail.LocalStoreData.MySql.build" target="build" />
<copy todir="References/NMail/${project.config}">
<fileset basedir="NMail.LocalStoreData.MySql/bin/${project.config}">
@@ -190,7 +192,7 @@
</target>
<target name="build-NMail.Server.Service" depends="init-build,build-NMail,build-NMail.Server" description="Builds the NMail Windows Service executable.">
- <!-- build NMail Server Service assembly -->
+ <!-- build NMail.Server.Service assembly -->
<nant buildfile="NMail.Server.Service/NMail.Server.Service.build" target="build" />
<copy todir="References/NMail/${project.config}">
<fileset basedir="NMail.Server.Service/bin/${project.config}">
@@ -199,8 +201,39 @@
</copy>
</target>
+ <target name="build-NMail.PostInstall" depends="init-build,build-NMail,build-NMail.SmtpService" description="Builds the NMail post install executable.">
+ <!-- build NMail.PostInstall assembly -->
+ <nant buildfile="NMail.PostInstall/NMail.PostInstall.build" target="build" />
+ <copy todir="References/NMail/${project.config}">
+ <fileset basedir="NMail.PostInstall/bin/${project.config}">
+ <include name="NMail.PostInstall.exe" />
+ </fileset>
+ </copy>
+ </target>
+
+ <target name="build-NMail.SetupWizard"
+ description="Builds the NMail setup wizard executable."
+ depends="build-NMail.MessageRouter,
+ build-NMail.SmtpClient,
+ build-NMail.SmtpService,
+ build-NMail.SpoolData.MySql,
+ build-NMail.SpoolFilter,
+ build-NMail.SpoolService,
+ build-NMail.LocalStoreData.MySql,
+ build-NMail.LocalStore,
+ build-NMail.ImapService,
+ build-NMail.DnsClient">
+ <!-- build NMail.SetupWizard assembly -->
+ <nant buildfile="NMail.SetupWizard/NMail.SetupWizard.build" target="build" />
+ <copy todir="References/NMail/${project.config}">
+ <fileset basedir="NMail.SetupWizard/bin/${project.config}">
+ <include name="NMail.SetupWizard.exe" />
+ </fileset>
+ </copy>
+ </target>
+
<target name="build-NMail.Administration.Console" depends="init-build,build-NMail,build-NMail.Server" description="Builds the NMail administration console executable.">
- <!-- build NMail Administration Console assembly -->
+ <!-- build NMail.Administration.Console assembly -->
<nant buildfile="NMail.Administration.Console/NMail.Administration.Console.build" target="build" />
<copy todir="References/NMail/${project.config}">
<fileset basedir="NMail.Administration.Console/bin/${project.config}">
@@ -212,7 +245,7 @@
<target name="build-NMail.Administration.Web" depends="init-build,build-NMail,build-NMail.Server" description="Builds the NMail administration web site.">
<mkdir dir="NMail.Administration.Web.Compiled" />
- <!-- build NMail Administration Web site-->
+ <!-- build NMail.Administration.Web site-->
<exec program="aspnet_compiler" verbose="true">
<arg value="-v" />
<arg value="/NMailAdmin" />
@@ -227,7 +260,7 @@
</target>
<target name="build-Installer" depends="assemblies, build-NMail.Administration.Web" description="Builds the NMail Server installer.">
- <!-- build NMail installer -->
+ <!-- build NMail.installer -->
<nant buildfile="Installer/NMail-installer.build" target="package" />
</target>
@@ -246,6 +279,8 @@
<nant buildfile="NMail.ImapService/NMail.ImapService.build" target="clean" />
<nant buildfile="NMail.DnsClient/NMail.DnsClient.build" target="clean" />
<nant buildfile="NMail.Server.Service/NMail.Server.Service.build" target="clean" />
+ <nant buildfile="NMail.PostInstall/NMail.PostInstall.build" target="clean" />
+ <nant buildfile="NMail.SetupWizard/NMail.SetupWizard.build" target="clean" />
<nant buildfile="NMail.Administration.Console/NMail.Administration.Console.build" target="clean" />
<delete dir="NMail.Administration.Web.Compiled" />
</target>
@@ -264,6 +299,8 @@
<nant buildfile="NMail.LocalStore/NMail.LocalStore.build" target="cleanall" />
<nant buildfile="NMail.ImapService/NMail.ImapService.build" target="cleanall" />
<nant buildfile="NMail.DnsClient/NMail.DnsClient.build" target="cleanall" />
+ <nant buildfile="NMail.PostInstall/NMail.PostInstall.build" target="cleanall" />
+ <nant buildfile="NMail.SetupWizard/NMail.SetupWizard.build" target="cleanall" />
<nant buildfile="NMail.Server.Service/NMail.Server.Service.build" target="cleanall" />
<nant buildfile="NMail.Administration.Console/NMail.Administration.Console.build" target="cleanall" />
<delete dir="NMail.Administration.Web.Compiled" />
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|