diff --git a/ClosedXML/ClosedXML/ClosedXML.sln b/ClosedXML/ClosedXML/ClosedXML.sln index 1a34dee..347e093 100644 --- a/ClosedXML/ClosedXML/ClosedXML.sln +++ b/ClosedXML/ClosedXML/ClosedXML.sln @@ -7,6 +7,7 @@ ProjectSection(SolutionItems) = preProject ClosedXML.vsmdi = ClosedXML.vsmdi DocumentFormat.OpenXml.dll = DocumentFormat.OpenXml.dll + Ionic.Zip.dll = Ionic.Zip.dll Local.testsettings = Local.testsettings TraceAndTestImpact.testsettings = TraceAndTestImpact.testsettings EndProjectSection @@ -19,9 +20,11 @@ EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ClosedXML_Tests", "ClosedXML_Tests\ClosedXML_Tests.csproj", "{09B066ED-E4A7-4545-A1A4-FF03DD524BDF}" EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ClosedXML_Package", "ClosedXML_Package\ClosedXML_Package.csproj", "{69B3BDDF-C359-447C-AEB7-EBD8867DE528}" +EndProject Global GlobalSection(TeamFoundationVersionControl) = preSolution - SccNumberOfProjects = 6 + SccNumberOfProjects = 7 SccEnterpriseProvider = {4CA58AB2-18FA-4F8D-95D4-32DDF27D184C} SccTeamFoundationServer = https://tfs.codeplex.com/tfs/tfs09 SccLocalPath0 = . @@ -40,6 +43,9 @@ SccProjectUniqueName5 = ClosedXML_Tests\\ClosedXML_Tests.csproj SccProjectName5 = ClosedXML_Tests SccLocalPath5 = ClosedXML_Tests + SccProjectUniqueName6 = ClosedXML_Package\\ClosedXML_Package.csproj + SccProjectName6 = ClosedXML_Package + SccLocalPath6 = ClosedXML_Package EndGlobalSection GlobalSection(TestCaseManagementSettings) = postSolution CategoryFile = ClosedXML.vsmdi @@ -131,6 +137,18 @@ {09B066ED-E4A7-4545-A1A4-FF03DD524BDF}.Release|Mixed Platforms.Build.0 = Release|Any CPU {09B066ED-E4A7-4545-A1A4-FF03DD524BDF}.Release|x64.ActiveCfg = Release|Any CPU {09B066ED-E4A7-4545-A1A4-FF03DD524BDF}.Release|x86.ActiveCfg = Release|Any CPU + {69B3BDDF-C359-447C-AEB7-EBD8867DE528}.Debug|Any CPU.ActiveCfg = Debug|x86 + {69B3BDDF-C359-447C-AEB7-EBD8867DE528}.Debug|Mixed Platforms.ActiveCfg = Debug|x86 + {69B3BDDF-C359-447C-AEB7-EBD8867DE528}.Debug|Mixed Platforms.Build.0 = Debug|x86 + {69B3BDDF-C359-447C-AEB7-EBD8867DE528}.Debug|x64.ActiveCfg = Debug|x86 + {69B3BDDF-C359-447C-AEB7-EBD8867DE528}.Debug|x86.ActiveCfg = Debug|x86 + {69B3BDDF-C359-447C-AEB7-EBD8867DE528}.Debug|x86.Build.0 = Debug|x86 + {69B3BDDF-C359-447C-AEB7-EBD8867DE528}.Release|Any CPU.ActiveCfg = Release|x86 + {69B3BDDF-C359-447C-AEB7-EBD8867DE528}.Release|Mixed Platforms.ActiveCfg = Release|x86 + {69B3BDDF-C359-447C-AEB7-EBD8867DE528}.Release|Mixed Platforms.Build.0 = Release|x86 + {69B3BDDF-C359-447C-AEB7-EBD8867DE528}.Release|x64.ActiveCfg = Release|x86 + {69B3BDDF-C359-447C-AEB7-EBD8867DE528}.Release|x86.ActiveCfg = Release|x86 + {69B3BDDF-C359-447C-AEB7-EBD8867DE528}.Release|x86.Build.0 = Release|x86 EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/ClosedXML/ClosedXML/ClosedXML/ClosedXML.csproj b/ClosedXML/ClosedXML/ClosedXML/ClosedXML.csproj index e2fcf0a..fc22997 100644 --- a/ClosedXML/ClosedXML/ClosedXML/ClosedXML.csproj +++ b/ClosedXML/ClosedXML/ClosedXML/ClosedXML.csproj @@ -382,6 +382,9 @@ + + IF EXIST $(SolutionDir)ClosedXML_Package\bin\Release\ClosedXML_Package.exe $(SolutionDir)ClosedXML_Package\bin\Release\ClosedXML_Package.exe $(TargetDir) + + \ No newline at end of file diff --git a/ClosedXML/ClosedXML/ClosedXML_Package/ClosedXML_Package.csproj.vspscc b/ClosedXML/ClosedXML/ClosedXML_Package/ClosedXML_Package.csproj.vspscc new file mode 100644 index 0000000..feffdec --- /dev/null +++ b/ClosedXML/ClosedXML/ClosedXML_Package/ClosedXML_Package.csproj.vspscc @@ -0,0 +1,10 @@ +"" +{ +"FILE_VERSION" = "9237" +"ENLISTMENT_CHOICE" = "NEVER" +"PROJECT_FILE_RELATIVE_PATH" = "" +"NUMBER_OF_EXCLUDED_FILES" = "0" +"ORIGINAL_PROJECT_FILE_PATH" = "" +"NUMBER_OF_NESTED_PROJECTS" = "0" +"SOURCE_CONTROL_SETTINGS_PROVIDER" = "PROVIDER" +} diff --git a/ClosedXML/ClosedXML/ClosedXML_Package/Program.cs b/ClosedXML/ClosedXML/ClosedXML_Package/Program.cs new file mode 100644 index 0000000..14bde5b --- /dev/null +++ b/ClosedXML/ClosedXML/ClosedXML_Package/Program.cs @@ -0,0 +1,59 @@ +using System; +using System.Collections.Generic; +using System.Diagnostics; +using System.IO; +using System.Linq; +using System.Reflection; +using System.Text; +using System.Windows.Forms; +using Ionic.Zip; + +namespace ClosedXML_Package +{ + class Program + { + static void Main(string[] args) + { + try + { + var targetPath = args[0]; //@"E:\MyFiles\Projects\ClosedXML\ClosedXML\bin\Release"; + if (!targetPath.EndsWith("Release")) return; + + var targetDll = String.Format(@"{0}\ClosedXML.dll", targetPath); + var targetXml = String.Format(@"{0}\ClosedXML.XML", targetPath); + + if (!File.Exists(targetDll)) + { + MessageBox.Show("Missing: " + targetDll); + return; + } + if (!File.Exists(targetXml)) + { + MessageBox.Show("Missing: " + targetXml); + return; + } + + Assembly assembly = Assembly.LoadFrom(targetDll); + Version ver = assembly.GetName().Version; + var targetZipPath = String.Format(@"{0}\ClosedXML_v{1}.zip", targetPath, ver); + var targetZipInfo = new FileInfo(targetZipPath); + if (targetZipInfo.Exists) targetZipInfo.Delete(); + + using (ZipFile zip = new ZipFile()) + { + zip.AddFile(targetDll, ""); + zip.AddFile(targetXml, ""); + zip.Save(targetZipPath); + } + } + catch (Exception ex) + { + var strMsg = "->" + ex.Message; + if (ex.InnerException != null) + strMsg += Environment.NewLine + "=>" + ex.InnerException.Message; + MessageBox.Show(strMsg); + } + + } + } +} diff --git a/ClosedXML/ClosedXML/ClosedXML_Package/Properties/AssemblyInfo.cs b/ClosedXML/ClosedXML/ClosedXML_Package/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..a7e306e --- /dev/null +++ b/ClosedXML/ClosedXML/ClosedXML_Package/Properties/AssemblyInfo.cs @@ -0,0 +1,36 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[assembly: AssemblyTitle("ClosedXML_Package")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("eCollege")] +[assembly: AssemblyProduct("ClosedXML_Package")] +[assembly: AssemblyCopyright("Copyright © eCollege 2012")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. +[assembly: ComVisible(false)] + +// The following GUID is for the ID of the typelib if this project is exposed to COM +[assembly: Guid("0005e3ad-3c3f-4446-a3ab-89fc837fb20f")] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// +// You can specify all the values or you can default the Build and Revision Numbers +// by using the '*' as shown below: +// [assembly: AssemblyVersion("1.0.*")] +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/ClosedXML/ClosedXML/ClosedXML_Package/app.config b/ClosedXML/ClosedXML/ClosedXML_Package/app.config new file mode 100644 index 0000000..cb2586b --- /dev/null +++ b/ClosedXML/ClosedXML/ClosedXML_Package/app.config @@ -0,0 +1,3 @@ + + + diff --git a/ClosedXML/ClosedXML/Ionic.Zip.dll b/ClosedXML/ClosedXML/Ionic.Zip.dll new file mode 100644 index 0000000..95fa928 --- /dev/null +++ b/ClosedXML/ClosedXML/Ionic.Zip.dll Binary files differ