diff --git a/Jenkinsfile b/Jenkinsfile
index 7c8a9e9..26e1592 100644
--- a/Jenkinsfile
+++ b/Jenkinsfile
@@ -11,7 +11,7 @@ pipeline {
steps {
/* calcolo numero versione... diverso x branch MASTER/DEVELOP */
script {
- withEnv(['NEXT_BUILD_NUMBER=680']) {
+ withEnv(['NEXT_BUILD_NUMBER=681']) {
// env.versionNumber = VersionNumber(versionNumberString : '3.3.${BUILD_DATE_FORMATTED, "yyMM"}.${BUILDS_ALL_TIME}', projectStartDate : '2006-01-01', skipFailedBuilds: true)
env.versionNumber = VersionNumber(versionNumberString : '3.3.${BUILD_DATE_FORMATTED, "yyMM"}.${BUILDS_ALL_TIME}', projectStartDate : '2006-01-01', skipFailedBuilds: true, overrideBuildsAllTime: '${NEXT_BUILD_NUMBER}')
env.versionNumberBeta = VersionNumber(versionNumberString : '3.3.${BUILD_DATE_FORMATTED, "yyMM"}-beta.${BUILDS_ALL_TIME}', projectStartDate : '2006-01-01', skipFailedBuilds: true, overrideBuildsAllTime: '${NEXT_BUILD_NUMBER}')
diff --git a/TestBench/App.config b/TestBench/App.config
new file mode 100644
index 0000000..56efbc7
--- /dev/null
+++ b/TestBench/App.config
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/TestBench/MainFOrm.Designer.cs b/TestBench/MainFOrm.Designer.cs
new file mode 100644
index 0000000..aa882aa
--- /dev/null
+++ b/TestBench/MainFOrm.Designer.cs
@@ -0,0 +1,149 @@
+namespace TestBench
+{
+ partial class MainForm
+ {
+ ///
+ /// Variabile di progettazione necessaria.
+ ///
+ private System.ComponentModel.IContainer components = null;
+
+ ///
+ /// Pulire le risorse in uso.
+ ///
+ /// ha valore true se le risorse gestite devono essere eliminate, false in caso contrario.
+ protected override void Dispose(bool disposing)
+ {
+ if (disposing && (components != null))
+ {
+ components.Dispose();
+ }
+ base.Dispose(disposing);
+ }
+
+ #region Codice generato da Progettazione Windows Form
+
+ ///
+ /// Metodo necessario per il supporto della finestra di progettazione. Non modificare
+ /// il contenuto del metodo con l'editor di codice.
+ ///
+ private void InitializeComponent()
+ {
+ this.groupBox1 = new System.Windows.Forms.GroupBox();
+ this.txtSourceDir = new System.Windows.Forms.TextBox();
+ this.label1 = new System.Windows.Forms.Label();
+ this.label2 = new System.Windows.Forms.Label();
+ this.txtDestDir = new System.Windows.Forms.TextBox();
+ this.btnCopyAll = new System.Windows.Forms.Button();
+ this.chkRecursive = new System.Windows.Forms.CheckBox();
+ this.lblOutMessage = new System.Windows.Forms.Label();
+ this.groupBox1.SuspendLayout();
+ this.SuspendLayout();
+ //
+ // groupBox1
+ //
+ this.groupBox1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
+ | System.Windows.Forms.AnchorStyles.Right)));
+ this.groupBox1.AutoSize = true;
+ this.groupBox1.Controls.Add(this.lblOutMessage);
+ this.groupBox1.Controls.Add(this.chkRecursive);
+ this.groupBox1.Controls.Add(this.btnCopyAll);
+ this.groupBox1.Controls.Add(this.label2);
+ this.groupBox1.Controls.Add(this.txtDestDir);
+ this.groupBox1.Controls.Add(this.label1);
+ this.groupBox1.Controls.Add(this.txtSourceDir);
+ this.groupBox1.Location = new System.Drawing.Point(12, 12);
+ this.groupBox1.Name = "groupBox1";
+ this.groupBox1.Size = new System.Drawing.Size(776, 97);
+ this.groupBox1.TabIndex = 1;
+ this.groupBox1.TabStop = false;
+ this.groupBox1.Text = "File IO test";
+ //
+ // txtSourceDir
+ //
+ this.txtSourceDir.Location = new System.Drawing.Point(103, 21);
+ this.txtSourceDir.Name = "txtSourceDir";
+ this.txtSourceDir.Size = new System.Drawing.Size(156, 22);
+ this.txtSourceDir.TabIndex = 1;
+ //
+ // label1
+ //
+ this.label1.AutoSize = true;
+ this.label1.Location = new System.Drawing.Point(17, 24);
+ this.label1.Name = "label1";
+ this.label1.Size = new System.Drawing.Size(80, 17);
+ this.label1.TabIndex = 2;
+ this.label1.Text = "Source DIR";
+ //
+ // label2
+ //
+ this.label2.AutoSize = true;
+ this.label2.Location = new System.Drawing.Point(301, 24);
+ this.label2.Name = "label2";
+ this.label2.Size = new System.Drawing.Size(64, 17);
+ this.label2.TabIndex = 4;
+ this.label2.Text = "Dest DIR";
+ //
+ // txtDestDir
+ //
+ this.txtDestDir.Location = new System.Drawing.Point(371, 21);
+ this.txtDestDir.Name = "txtDestDir";
+ this.txtDestDir.Size = new System.Drawing.Size(156, 22);
+ this.txtDestDir.TabIndex = 3;
+ //
+ // btnCopyAll
+ //
+ this.btnCopyAll.Location = new System.Drawing.Point(695, 18);
+ this.btnCopyAll.Name = "btnCopyAll";
+ this.btnCopyAll.Size = new System.Drawing.Size(75, 23);
+ this.btnCopyAll.TabIndex = 5;
+ this.btnCopyAll.Text = "Copy All";
+ this.btnCopyAll.UseVisualStyleBackColor = true;
+ this.btnCopyAll.Click += new System.EventHandler(this.BtnCopyAll_Click);
+ //
+ // chkRecursive
+ //
+ this.chkRecursive.AutoSize = true;
+ this.chkRecursive.Location = new System.Drawing.Point(534, 21);
+ this.chkRecursive.Name = "chkRecursive";
+ this.chkRecursive.Size = new System.Drawing.Size(88, 21);
+ this.chkRecursive.TabIndex = 6;
+ this.chkRecursive.Text = "recursive";
+ this.chkRecursive.UseVisualStyleBackColor = true;
+ //
+ // lblOutMessage
+ //
+ this.lblOutMessage.AutoSize = true;
+ this.lblOutMessage.Location = new System.Drawing.Point(17, 62);
+ this.lblOutMessage.Name = "lblOutMessage";
+ this.lblOutMessage.Size = new System.Drawing.Size(20, 17);
+ this.lblOutMessage.TabIndex = 7;
+ this.lblOutMessage.Text = "...";
+ //
+ // MainForm
+ //
+ this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 16F);
+ this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+ this.ClientSize = new System.Drawing.Size(800, 450);
+ this.Controls.Add(this.groupBox1);
+ this.Name = "MainForm";
+ this.Text = "WinForm library POC";
+ this.groupBox1.ResumeLayout(false);
+ this.groupBox1.PerformLayout();
+ this.ResumeLayout(false);
+ this.PerformLayout();
+
+ }
+
+ #endregion
+
+ private System.Windows.Forms.GroupBox groupBox1;
+ private System.Windows.Forms.Button btnCopyAll;
+ private System.Windows.Forms.Label label2;
+ private System.Windows.Forms.TextBox txtDestDir;
+ private System.Windows.Forms.Label label1;
+ private System.Windows.Forms.TextBox txtSourceDir;
+ private System.Windows.Forms.CheckBox chkRecursive;
+ private System.Windows.Forms.Label lblOutMessage;
+ }
+}
+
diff --git a/TestBench/MainFOrm.cs b/TestBench/MainFOrm.cs
new file mode 100644
index 0000000..d32858f
--- /dev/null
+++ b/TestBench/MainFOrm.cs
@@ -0,0 +1,43 @@
+using SteamWare;
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using System.Windows.Forms;
+
+namespace TestBench
+{
+ public partial class MainForm : Form
+ {
+ public MainForm()
+ {
+ InitializeComponent();
+ myInitComponent();
+ }
+
+ private void myInitComponent()
+ {
+ // imposto folders
+ txtSourceDir.Text = @"C:\TMP\";
+ txtDestDir.Text = @"L:\TMP\";
+ }
+
+ private void BtnCopyAll_Click(object sender, EventArgs e)
+ {
+ // effettuo copia con steamware libs...
+ string sourceDir = txtSourceDir.Text.Trim();
+ string destDir = txtDestDir.Text.Trim();
+ if (sourceDir != "" && destDir != "")
+ {
+ lblOutMessage.Text = "inizio copia...";
+ lblOutMessage.Refresh();
+ fileMover.DirectoryCopy(sourceDir, destDir, chkRecursive.Checked);
+ lblOutMessage.Text = "Copia completata!";
+ }
+ }
+ }
+}
diff --git a/TestBench/MainFOrm.resx b/TestBench/MainFOrm.resx
new file mode 100644
index 0000000..1af7de1
--- /dev/null
+++ b/TestBench/MainFOrm.resx
@@ -0,0 +1,120 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 2.0
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
\ No newline at end of file
diff --git a/TestBench/Program.cs b/TestBench/Program.cs
new file mode 100644
index 0000000..b6c2aa8
--- /dev/null
+++ b/TestBench/Program.cs
@@ -0,0 +1,22 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Threading.Tasks;
+using System.Windows.Forms;
+
+namespace TestBench
+{
+ static class Program
+ {
+ ///
+ /// Punto di ingresso principale dell'applicazione.
+ ///
+ [STAThread]
+ static void Main()
+ {
+ Application.EnableVisualStyles();
+ Application.SetCompatibleTextRenderingDefault(false);
+ Application.Run(new MainForm());
+ }
+ }
+}
diff --git a/TestBench/Properties/AssemblyInfo.cs b/TestBench/Properties/AssemblyInfo.cs
new file mode 100644
index 0000000..8ce8368
--- /dev/null
+++ b/TestBench/Properties/AssemblyInfo.cs
@@ -0,0 +1,36 @@
+using System.Reflection;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+// Le informazioni generali relative a un assembly sono controllate dal seguente
+// set di attributi. Modificare i valori di questi attributi per modificare le informazioni
+// associate a un assembly.
+[assembly: AssemblyTitle("TestBench")]
+[assembly: AssemblyDescription("")]
+[assembly: AssemblyConfiguration("")]
+[assembly: AssemblyCompany("")]
+[assembly: AssemblyProduct("TestBench")]
+[assembly: AssemblyCopyright("Copyright © 2019")]
+[assembly: AssemblyTrademark("")]
+[assembly: AssemblyCulture("")]
+
+// Se si imposta ComVisible su false, i tipi in questo assembly non saranno visibili
+// ai componenti COM. Se è necessario accedere a un tipo in questo assembly da
+// COM, impostare su true l'attributo ComVisible per tale tipo.
+[assembly: ComVisible(false)]
+
+// Se il progetto viene esposto a COM, il GUID seguente verrà utilizzato come ID della libreria dei tipi
+[assembly: Guid("c406c4da-29d6-4b6b-a87b-f5e10f6db9da")]
+
+// Le informazioni sulla versione di un assembly sono costituite dai seguenti quattro valori:
+//
+// Versione principale
+// Versione secondaria
+// Numero di build
+// Revisione
+//
+// È possibile specificare tutti i valori oppure impostare valori predefiniti per i numeri relativi alla revisione e alla build
+// usando l'asterisco '*' come illustrato di seguito:
+// [assembly: AssemblyVersion("1.0.*")]
+[assembly: AssemblyVersion("1.0.0.0")]
+[assembly: AssemblyFileVersion("1.0.0.0")]
diff --git a/TestBench/Properties/Resources.Designer.cs b/TestBench/Properties/Resources.Designer.cs
new file mode 100644
index 0000000..51423e0
--- /dev/null
+++ b/TestBench/Properties/Resources.Designer.cs
@@ -0,0 +1,71 @@
+//------------------------------------------------------------------------------
+//
+// Codice generato da uno strumento.
+// Versione runtime:4.0.30319.42000
+//
+// Le modifiche apportate a questo file possono causare un comportamento non corretto e andranno perse se
+// il codice viene rigenerato.
+//
+//------------------------------------------------------------------------------
+
+namespace TestBench.Properties
+{
+
+
+ ///
+ /// Classe di risorse fortemente tipizzata per la ricerca di stringhe localizzate e così via.
+ ///
+ // Questa classe è stata generata automaticamente dalla classe StronglyTypedResourceBuilder
+ // tramite uno strumento quale ResGen o Visual Studio.
+ // Per aggiungere o rimuovere un membro, modificare il file .ResX, quindi eseguire di nuovo ResGen
+ // con l'opzione /str oppure ricompilare il progetto VS.
+ [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")]
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+ [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
+ internal class Resources
+ {
+
+ private static global::System.Resources.ResourceManager resourceMan;
+
+ private static global::System.Globalization.CultureInfo resourceCulture;
+
+ [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
+ internal Resources()
+ {
+ }
+
+ ///
+ /// Restituisce l'istanza di ResourceManager memorizzata nella cache e usata da questa classe.
+ ///
+ [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
+ internal static global::System.Resources.ResourceManager ResourceManager
+ {
+ get
+ {
+ if ((resourceMan == null))
+ {
+ global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("TestBench.Properties.Resources", typeof(Resources).Assembly);
+ resourceMan = temp;
+ }
+ return resourceMan;
+ }
+ }
+
+ ///
+ /// Esegue l'override della proprietà CurrentUICulture del thread corrente per tutte
+ /// le ricerche di risorse che utilizzano questa classe di risorse fortemente tipizzata.
+ ///
+ [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
+ internal static global::System.Globalization.CultureInfo Culture
+ {
+ get
+ {
+ return resourceCulture;
+ }
+ set
+ {
+ resourceCulture = value;
+ }
+ }
+ }
+}
diff --git a/TestBench/Properties/Resources.resx b/TestBench/Properties/Resources.resx
new file mode 100644
index 0000000..af7dbeb
--- /dev/null
+++ b/TestBench/Properties/Resources.resx
@@ -0,0 +1,117 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 2.0
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
\ No newline at end of file
diff --git a/TestBench/Properties/Settings.Designer.cs b/TestBench/Properties/Settings.Designer.cs
new file mode 100644
index 0000000..d47c6bf
--- /dev/null
+++ b/TestBench/Properties/Settings.Designer.cs
@@ -0,0 +1,30 @@
+//------------------------------------------------------------------------------
+//
+// This code was generated by a tool.
+// Runtime Version:4.0.30319.42000
+//
+// Changes to this file may cause incorrect behavior and will be lost if
+// the code is regenerated.
+//
+//------------------------------------------------------------------------------
+
+namespace TestBench.Properties
+{
+
+
+ [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
+ [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "11.0.0.0")]
+ internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase
+ {
+
+ private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
+
+ public static Settings Default
+ {
+ get
+ {
+ return defaultInstance;
+ }
+ }
+ }
+}
diff --git a/TestBench/Properties/Settings.settings b/TestBench/Properties/Settings.settings
new file mode 100644
index 0000000..3964565
--- /dev/null
+++ b/TestBench/Properties/Settings.settings
@@ -0,0 +1,7 @@
+
+
+
+
+
+
+
diff --git a/TestBench/TestBench.csproj b/TestBench/TestBench.csproj
new file mode 100644
index 0000000..b921006
--- /dev/null
+++ b/TestBench/TestBench.csproj
@@ -0,0 +1,89 @@
+
+
+
+
+ Debug
+ AnyCPU
+ {C406C4DA-29D6-4B6B-A87B-F5E10F6DB9DA}
+ WinExe
+ TestBench
+ TestBench
+ v4.7.2
+ 512
+ true
+ true
+
+
+ AnyCPU
+ true
+ full
+ false
+ bin\Debug\
+ DEBUG;TRACE
+ prompt
+ 4
+
+
+ AnyCPU
+ pdbonly
+ true
+ bin\Release\
+ TRACE
+ prompt
+ 4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Form
+
+
+ MainForm.cs
+
+
+
+
+ MainForm.cs
+
+
+ ResXFileCodeGenerator
+ Resources.Designer.cs
+ Designer
+
+
+ True
+ Resources.resx
+
+
+ SettingsSingleFileGenerator
+ Settings.Designer.cs
+
+
+ True
+ Settings.settings
+ True
+
+
+
+
+
+
+
+ {2872dcfe-8b46-43b2-baa0-842a816a2dd5}
+ SteamWare
+
+
+
+
\ No newline at end of file