The complete folder structure has been changed or updated
This commit is contained in:
BIN
current/DD-Core/Backup-xwiki/Backup-xwiki.ps1
Normal file
BIN
current/DD-Core/Backup-xwiki/Backup-xwiki.ps1
Normal file
Binary file not shown.
45
current/DD-Core/Backup-xwiki/Backup-xwiki_Caller.cmd
Normal file
45
current/DD-Core/Backup-xwiki/Backup-xwiki_Caller.cmd
Normal file
@@ -0,0 +1,45 @@
|
||||
@ECHO OFF
|
||||
TITLE DIGITAL DATA - Run all files in directory with current permissions
|
||||
ECHO -
|
||||
ECHO Batch Script
|
||||
ECHO Run all files in directory with current permissions
|
||||
ECHO -
|
||||
ECHO Digital Data
|
||||
ECHO Ludwig-Rinn-Strasse 16
|
||||
ECHO 35452 Heuchelheim
|
||||
ECHO Tel.: 0641 / 202360
|
||||
ECHO E-Mail: info@didalog.de
|
||||
ECHO -
|
||||
ECHO Version 1.0.0.0
|
||||
ECHO Date: 13.08.2015
|
||||
ECHO -
|
||||
ECHO Program Startup %date% at %time:~0,8% oclock, on %computername%.
|
||||
|
||||
REM --------------------------------------------------------------
|
||||
REM ------------------------set variables-------------------------
|
||||
REM --------------------------------------------------------------
|
||||
|
||||
setlocal enableextensions
|
||||
|
||||
SET DIRECTORY="%cd%"
|
||||
SET FILEEXTENSION=*.ps1
|
||||
SET COUNT=0
|
||||
|
||||
REM --------------------------------------------------------------
|
||||
REM ---------------------Program 1 / Script 1---------------------
|
||||
REM --------------------------------------------------------------
|
||||
|
||||
FOR /F "tokens=*" %%f in ('dir /S /b %FILEEXTENSION%') do (ECHO %%f && set /a count+=1)
|
||||
ECHO -
|
||||
ECHO Found %count% File(s) with File Extension %FILEEXTENSION% in Directory:
|
||||
ECHO %DIRECTORY%.
|
||||
|
||||
ECHO -
|
||||
ECHO Running this/them now, with your permissions!
|
||||
FOR /F "tokens=*" %%f in ('dir /S /b %FILEEXTENSION%') do (PowerShell.exe -Command "& {Start-Process PowerShell.exe -WindowStyle hidden '-ExecutionPolicy Bypass -File "%%f"'}")
|
||||
|
||||
ECHO -
|
||||
ECHO This Window will close in:
|
||||
timeout /T 10
|
||||
endlocal
|
||||
exit
|
||||
21
current/DD-Core/Backup-xwiki/Backup-xwiki_History.txt
Normal file
21
current/DD-Core/Backup-xwiki/Backup-xwiki_History.txt
Normal file
@@ -0,0 +1,21 @@
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
Version 1.0.0.1 - 18.08.2025
|
||||
NEW: -
|
||||
FIX: -
|
||||
CHG: - Script accepts only one config file now
|
||||
REM: -
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
Version 1.0.0.0 - 09.07.2021
|
||||
NEW: -
|
||||
FIX: -
|
||||
CHG: -
|
||||
REM: -
|
||||
|
||||
-------------------------------------legend------------------------------------
|
||||
NEW: = Added a new functionality
|
||||
FIX: = Fixed a Issue with existing functionality
|
||||
CHG: = Changed a existing functionality
|
||||
REM: = Removed a functionality
|
||||
-------------------------------------------------------------------------------
|
||||
Binary file not shown.
BIN
current/DD-Core/Backup-xwiki/DEFAULT/Backup-xwiki_Settings.ini
Normal file
BIN
current/DD-Core/Backup-xwiki/DEFAULT/Backup-xwiki_Settings.ini
Normal file
Binary file not shown.
@@ -0,0 +1,91 @@
|
||||
@ECHO OFF
|
||||
TITLE DIGITAL DATA - create Documentprocessing
|
||||
|
||||
ECHO Stapelverarbeitungsprogramm
|
||||
ECHO create Documentprocessing
|
||||
ECHO -
|
||||
ECHO Digital Data
|
||||
ECHO Ludwig-Rinn-Strasse 16
|
||||
ECHO 35452 Heuchelheim
|
||||
ECHO Tel.: 0641 / 202360
|
||||
ECHO E-Mail: info@didalog.de
|
||||
ECHO -
|
||||
ECHO Version 1.0.0.1
|
||||
ECHO Letzte Aktualisierung: 12.01.2016
|
||||
|
||||
REM --------------------------------------------------------------
|
||||
|
||||
ECHO -
|
||||
ECHO Im aktuellen Verzeichnis (ACHTUNG: keine UNC Pfad Unterstuetzung!) wird nun die Ordnerstruktur fuer die Dokumentverarbeitung angelegt!
|
||||
ECHO -
|
||||
|
||||
SET /P ProcessingServername=Bitte bestimmen Sie nun den Namen des Servers, der die Verarbeitung durchfuehren soll (Wenn Sie nichts eingeben wird %computername% verwendet!):
|
||||
|
||||
IF NOT "%ProcessingServername%"=="" (
|
||||
ECHO Ihre Eingabe lautete: %ProcessingServername% )
|
||||
|
||||
REM --------------------------------------------------------------
|
||||
|
||||
IF "%ProcessingServername%"=="" (
|
||||
SET ProcessingServername=%computername%
|
||||
ECHO Aufgrund der fehlenden Angabe wird nun: %computername% verwendet )
|
||||
|
||||
mkdir Documentprocessing
|
||||
mkdir Documentprocessing\"%ProcessingServername%"
|
||||
|
||||
mkdir Documentprocessing\"%ProcessingServername%"\Archive
|
||||
mkdir Documentprocessing\"%ProcessingServername%"\Archive\File
|
||||
mkdir Documentprocessing\"%ProcessingServername%"\Archive\File\BatchBarcodeSeperator
|
||||
mkdir Documentprocessing\"%ProcessingServername%"\Archive\File\BatchBlankSheetSeperator
|
||||
mkdir Documentprocessing\"%ProcessingServername%"\Archive\File\BatchCoverSheetSeperator
|
||||
mkdir Documentprocessing\"%ProcessingServername%"\Archive\File\BatchFixedPageNumber
|
||||
mkdir Documentprocessing\"%ProcessingServername%"\Archive\File\BatchWithoutSeperator
|
||||
mkdir Documentprocessing\"%ProcessingServername%"\Archive\File\DocumentKindAssigned
|
||||
mkdir Documentprocessing\"%ProcessingServername%"\Archive\File\DocumentKindUnassigned
|
||||
mkdir Documentprocessing\"%ProcessingServername%"\Archive\Folder
|
||||
mkdir Documentprocessing\"%ProcessingServername%"\Archive\Folder\DocumentKindAssigned
|
||||
mkdir Documentprocessing\"%ProcessingServername%"\Archive\Folder\DocumentKindUnassigned
|
||||
|
||||
mkdir Documentprocessing\"%ProcessingServername%"\Input
|
||||
mkdir Documentprocessing\"%ProcessingServername%"\Input\File
|
||||
mkdir Documentprocessing\"%ProcessingServername%"\Input\File\BatchBarcodeSeperator
|
||||
mkdir Documentprocessing\"%ProcessingServername%"\Input\File\BatchBlankSheetSeperator
|
||||
mkdir Documentprocessing\"%ProcessingServername%"\Input\File\BatchCoverSheetSeperator
|
||||
mkdir Documentprocessing\"%ProcessingServername%"\Input\File\BatchFixedPageNumber
|
||||
mkdir Documentprocessing\"%ProcessingServername%"\Input\File\BatchWithoutSeperator
|
||||
mkdir Documentprocessing\"%ProcessingServername%"\Input\File\DocumentKindAssigned
|
||||
mkdir Documentprocessing\"%ProcessingServername%"\Input\File\DocumentKindUnassigned
|
||||
mkdir Documentprocessing\"%ProcessingServername%"\Input\Folder
|
||||
mkdir Documentprocessing\"%ProcessingServername%"\Input\Folder\DocumentKindAssigned
|
||||
mkdir Documentprocessing\"%ProcessingServername%"\Input\Folder\DocumentKindUnassigned
|
||||
|
||||
mkdir Documentprocessing\"%ProcessingServername%"\Job
|
||||
|
||||
mkdir Documentprocessing\"%ProcessingServername%"\Output
|
||||
mkdir Documentprocessing\"%ProcessingServername%"\Output\File
|
||||
mkdir Documentprocessing\"%ProcessingServername%"\Output\File\BatchBarcodeSeperator
|
||||
mkdir Documentprocessing\"%ProcessingServername%"\Output\File\BatchBlankSheetSeperator
|
||||
mkdir Documentprocessing\"%ProcessingServername%"\Output\File\BatchCoverSheetSeperator
|
||||
mkdir Documentprocessing\"%ProcessingServername%"\Output\File\BatchFixedPageNumber
|
||||
mkdir Documentprocessing\"%ProcessingServername%"\Output\File\BatchWithoutSeperator
|
||||
mkdir Documentprocessing\"%ProcessingServername%"\Output\File\DocumentKindAssigned
|
||||
mkdir Documentprocessing\"%ProcessingServername%"\Output\File\DocumentKindUnassigned
|
||||
mkdir Documentprocessing\"%ProcessingServername%"\Output\Folder
|
||||
mkdir Documentprocessing\"%ProcessingServername%"\Output\Folder\DocumentKindAssigned
|
||||
mkdir Documentprocessing\"%ProcessingServername%"\Output\Folder\DocumentKindUnassigned
|
||||
|
||||
mkdir Documentprocessing\"%ProcessingServername%"\Temp
|
||||
mkdir Documentprocessing\"%ProcessingServername%"\Temp\File
|
||||
mkdir Documentprocessing\"%ProcessingServername%"\Temp\File\BatchBarcodeSeperator
|
||||
mkdir Documentprocessing\"%ProcessingServername%"\Temp\File\BatchBlankSheetSeperator
|
||||
mkdir Documentprocessing\"%ProcessingServername%"\Temp\File\BatchCoverSheetSeperator
|
||||
mkdir Documentprocessing\"%ProcessingServername%"\Temp\File\BatchFixedPageNumber
|
||||
mkdir Documentprocessing\"%ProcessingServername%"\Temp\File\BatchWithoutSeperator
|
||||
mkdir Documentprocessing\"%ProcessingServername%"\Temp\File\DocumentKindAssigned
|
||||
mkdir Documentprocessing\"%ProcessingServername%"\Temp\File\DocumentKindUnassigned
|
||||
mkdir Documentprocessing\"%ProcessingServername%"\Temp\Folder
|
||||
mkdir Documentprocessing\"%ProcessingServername%"\Temp\Folder\DocumentKindAssigned
|
||||
mkdir Documentprocessing\"%ProcessingServername%"\Temp\Folder\DocumentKindUnassigned
|
||||
|
||||
pause
|
||||
|
||||
@@ -0,0 +1,21 @@
|
||||
Version 1.0.0.1 - 12.01.2016
|
||||
NEW: -
|
||||
FIX: -
|
||||
CHG: - Änderung der Ordnernamen (Beispiel: batch_barcode_seperator -> BatchBarcodeSeperator)
|
||||
REM: -
|
||||
|
||||
-----------------------------------------------------------
|
||||
|
||||
Version 1.0.0.0 - 07.01.2015
|
||||
- Erste funktionierende Version!
|
||||
NEW: -
|
||||
FIX: -
|
||||
CHG: -
|
||||
REM: -
|
||||
|
||||
--------------------------Legende--------------------------
|
||||
NEW: = Hinzufügen einer neuen Funktion
|
||||
FIX: = Korrektur einer vorhandenen Funktion
|
||||
CHG: = Änderung oder Erweiterung einer vorhandenen Funktion
|
||||
REM: = Entfernen einer Funktion
|
||||
-----------------------------------------------------------
|
||||
@@ -0,0 +1,79 @@
|
||||
@ECHO OFF
|
||||
TITLE DIGITAL DATA - create DocumentProcessing
|
||||
|
||||
ECHO Stapelverarbeitungsprogramm
|
||||
ECHO create DocumentProcessing
|
||||
ECHO -
|
||||
ECHO Digital Data
|
||||
ECHO Ludwig-Rinn-Strasse 16
|
||||
ECHO 35452 Heuchelheim
|
||||
ECHO Tel.: 0641 / 202360
|
||||
ECHO E-Mail: info@didalog.de
|
||||
ECHO -
|
||||
ECHO Version 1.0.1.1
|
||||
ECHO Letzte Aktualisierung: 28.01.2016
|
||||
|
||||
REM --------------------------------------------------------------
|
||||
|
||||
ECHO -
|
||||
ECHO Im aktuellen Verzeichnis (ACHTUNG: keine UNC Pfad Unterstuetzung!) wird nun die Ordnerstruktur fuer die Dokumentverarbeitung angelegt!
|
||||
ECHO -
|
||||
|
||||
mkdir DocumentProcessing
|
||||
|
||||
mkdir DocumentProcessing\Archive
|
||||
mkdir DocumentProcessing\Archive\File
|
||||
mkdir DocumentProcessing\Archive\File\BatchBarcodeSeperator
|
||||
mkdir DocumentProcessing\Archive\File\BatchBlankSheetSeperator
|
||||
mkdir DocumentProcessing\Archive\File\BatchCoverSheetSeperator
|
||||
mkdir DocumentProcessing\Archive\File\BatchFixedPageNumber
|
||||
mkdir DocumentProcessing\Archive\File\BatchWithoutSeperator
|
||||
mkdir DocumentProcessing\Archive\File\DocumentKindAssigned
|
||||
mkdir DocumentProcessing\Archive\File\DocumentKindUnassigned
|
||||
mkdir DocumentProcessing\Archive\Folder
|
||||
mkdir DocumentProcessing\Archive\Folder\DocumentKindAssigned
|
||||
mkdir DocumentProcessing\Archive\Folder\DocumentKindUnassigned
|
||||
|
||||
mkdir DocumentProcessing\Input
|
||||
mkdir DocumentProcessing\Input\File
|
||||
mkdir DocumentProcessing\Input\File\BatchBarcodeSeperator
|
||||
mkdir DocumentProcessing\Input\File\BatchBlankSheetSeperator
|
||||
mkdir DocumentProcessing\Input\File\BatchCoverSheetSeperator
|
||||
mkdir DocumentProcessing\Input\File\BatchFixedPageNumber
|
||||
mkdir DocumentProcessing\Input\File\BatchWithoutSeperator
|
||||
mkdir DocumentProcessing\Input\File\DocumentKindAssigned
|
||||
mkdir DocumentProcessing\Input\File\DocumentKindUnassigned
|
||||
mkdir DocumentProcessing\Input\Folder
|
||||
mkdir DocumentProcessing\Input\Folder\DocumentKindAssigned
|
||||
mkdir DocumentProcessing\Input\Folder\DocumentKindUnassigned
|
||||
|
||||
mkdir DocumentProcessing\Job
|
||||
|
||||
mkdir DocumentProcessing\Output
|
||||
mkdir DocumentProcessing\Output\File
|
||||
mkdir DocumentProcessing\Output\File\BatchBarcodeSeperator
|
||||
mkdir DocumentProcessing\Output\File\BatchBlankSheetSeperator
|
||||
mkdir DocumentProcessing\Output\File\BatchCoverSheetSeperator
|
||||
mkdir DocumentProcessing\Output\File\BatchFixedPageNumber
|
||||
mkdir DocumentProcessing\Output\File\BatchWithoutSeperator
|
||||
mkdir DocumentProcessing\Output\File\DocumentKindAssigned
|
||||
mkdir DocumentProcessing\Output\File\DocumentKindUnassigned
|
||||
mkdir DocumentProcessing\Output\Folder
|
||||
mkdir DocumentProcessing\Output\Folder\DocumentKindAssigned
|
||||
mkdir DocumentProcessing\Output\Folder\DocumentKindUnassigned
|
||||
|
||||
mkdir DocumentProcessing\Temp
|
||||
mkdir DocumentProcessing\Temp\File
|
||||
mkdir DocumentProcessing\Temp\File\BatchBarcodeSeperator
|
||||
mkdir DocumentProcessing\Temp\File\BatchBlankSheetSeperator
|
||||
mkdir DocumentProcessing\Temp\File\BatchCoverSheetSeperator
|
||||
mkdir DocumentProcessing\Temp\File\BatchFixedPageNumber
|
||||
mkdir DocumentProcessing\Temp\File\BatchWithoutSeperator
|
||||
mkdir DocumentProcessing\Temp\File\DocumentKindAssigned
|
||||
mkdir DocumentProcessing\Temp\File\DocumentKindUnassigned
|
||||
mkdir DocumentProcessing\Temp\Folder
|
||||
mkdir DocumentProcessing\Temp\Folder\DocumentKindAssigned
|
||||
mkdir DocumentProcessing\Temp\Folder\DocumentKindUnassigned
|
||||
|
||||
pause
|
||||
|
||||
@@ -0,0 +1,38 @@
|
||||
Version 1.0.1.2 - 26.01.2018
|
||||
NEW: -
|
||||
FIX: -
|
||||
CHG: - Skript umbennant zu Create-DocumentProcessingFolders
|
||||
REM: -
|
||||
|
||||
-----------------------------------------------------------
|
||||
|
||||
Version 1.0.1.1 - 28.01.2016
|
||||
NEW: -
|
||||
FIX: -
|
||||
CHG: - Servername aus Abfrage und Anlage entfernt
|
||||
- Namensänderung: Aus Documentprocessing wird DocumentProcessing
|
||||
REM: -
|
||||
|
||||
-----------------------------------------------------------
|
||||
|
||||
Version 1.0.0.1 - 12.01.2016
|
||||
NEW: -
|
||||
FIX: -
|
||||
CHG: - Änderung der Ordnernamen (Beispiel: batch_barcode_seperator -> BatchBarcodeSeperator)
|
||||
REM: -
|
||||
|
||||
-----------------------------------------------------------
|
||||
|
||||
Version 1.0.0.0 - 07.01.2015
|
||||
- Erste funktionierende Version!
|
||||
NEW: -
|
||||
FIX: -
|
||||
CHG: -
|
||||
REM: -
|
||||
|
||||
--------------------------Legende--------------------------
|
||||
NEW: = Hinzufügen einer neuen Funktion
|
||||
FIX: = Korrektur einer vorhandenen Funktion
|
||||
CHG: = Änderung oder Erweiterung einer vorhandenen Funktion
|
||||
REM: = Entfernen einer Funktion
|
||||
-----------------------------------------------------------
|
||||
15
current/DD-Core/DD-Core_History.txt
Normal file
15
current/DD-Core/DD-Core_History.txt
Normal file
@@ -0,0 +1,15 @@
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
Version 1.0.0.0 - 22.07.2025
|
||||
NEW: -
|
||||
FIX: -
|
||||
CHG: -
|
||||
REM: -
|
||||
|
||||
-------------------------------------legend------------------------------------
|
||||
NEW: = Added a new functionality
|
||||
FIX: = Fixed a Issue with existing functionality
|
||||
CHG: = Changed a existing functionality
|
||||
REM: = Removed a functionality
|
||||
-------------------------------------------------------------------------------
|
||||
Binary file not shown.
BIN
current/DD-Core/Export-DBDataToFile/Export-DBDataToFile.ps1
Normal file
BIN
current/DD-Core/Export-DBDataToFile/Export-DBDataToFile.ps1
Normal file
Binary file not shown.
@@ -0,0 +1,45 @@
|
||||
@ECHO OFF
|
||||
TITLE DIGITAL DATA - Run all files in directory with current permissions
|
||||
ECHO -
|
||||
ECHO Batch Script
|
||||
ECHO Run all files in directory with current permissions
|
||||
ECHO -
|
||||
ECHO Digital Data
|
||||
ECHO Ludwig-Rinn-Strasse 16
|
||||
ECHO 35452 Heuchelheim
|
||||
ECHO Tel.: 0641 / 202360
|
||||
ECHO E-Mail: info@didalog.de
|
||||
ECHO -
|
||||
ECHO Version 1.0.0.0
|
||||
ECHO Date: 13.08.2015
|
||||
ECHO -
|
||||
ECHO Program Startup %date% at %time:~0,8% oclock, on %computername%.
|
||||
|
||||
REM --------------------------------------------------------------
|
||||
REM ------------------------set variables-------------------------
|
||||
REM --------------------------------------------------------------
|
||||
|
||||
setlocal enableextensions
|
||||
|
||||
SET DIRECTORY="%cd%"
|
||||
SET FILEEXTENSION=*.ps1
|
||||
SET COUNT=0
|
||||
|
||||
REM --------------------------------------------------------------
|
||||
REM ---------------------Program 1 / Script 1---------------------
|
||||
REM --------------------------------------------------------------
|
||||
|
||||
FOR /F "tokens=*" %%f in ('dir /S /b %FILEEXTENSION%') do (ECHO %%f && set /a count+=1)
|
||||
ECHO -
|
||||
ECHO Found %count% File(s) with File Extension %FILEEXTENSION% in Directory:
|
||||
ECHO %DIRECTORY%.
|
||||
|
||||
ECHO -
|
||||
ECHO Running this/them now, with your permissions!
|
||||
FOR /F "tokens=*" %%f in ('dir /S /b %FILEEXTENSION%') do (PowerShell.exe -Command "& {Start-Process PowerShell.exe -WindowStyle hidden '-ExecutionPolicy Bypass -File "%%f"'}")
|
||||
|
||||
ECHO -
|
||||
ECHO This Window will close in:
|
||||
#timeout /T 10
|
||||
endlocal
|
||||
exit
|
||||
@@ -0,0 +1,22 @@
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
Version 1.0.0.1 - 18.08.2025
|
||||
NEW: -
|
||||
FIX: -
|
||||
CHG: - Script accepts only one config file now
|
||||
REM: -
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
Version 1.0.0.0 - 30.11.2023
|
||||
NEW: -
|
||||
FIX: -
|
||||
CHG: -
|
||||
REM: -
|
||||
|
||||
-------------------------------------legend------------------------------------
|
||||
NEW: = Added a new functionality
|
||||
FIX: = Fixed a Issue with existing functionality
|
||||
CHG: = Changed a existing functionality
|
||||
REM: = Removed a functionality
|
||||
-------------------------------------------------------------------------------
|
||||
Binary file not shown.
@@ -0,0 +1,252 @@
|
||||
####################################################################################################
|
||||
# Digital Data Configuration File (Template Date: 30.07.2016) #
|
||||
# UTF-8 Coding required! #
|
||||
# incl. FailSafe functions that are active when information is missing. #
|
||||
####################################################################################################
|
||||
|
||||
#==================================================================================================#
|
||||
########################################## General Setup ###########################################
|
||||
#==================================================================================================#
|
||||
|
||||
####################################################################################################
|
||||
# Path in which the log files will be stored. #
|
||||
# Example: E:\LogFiles\<ScriptName> #
|
||||
# FailSafe Setting is: <ScriptPath>\Logs #
|
||||
####################################################################################################
|
||||
LogPath =
|
||||
|
||||
####################################################################################################
|
||||
# Numerical value how long (in days) log files will be kept. ValidateRange is 0 - 1000 #
|
||||
# Setting the Value to 0 disables this Function. #
|
||||
# FailSafe Setting is: 60 #
|
||||
####################################################################################################
|
||||
LogFileKeepTime = 30
|
||||
|
||||
####################################################################################################
|
||||
# Numerical value how long (in Minutes) a File has to be there, before processing it. #
|
||||
# FailSafe Setting is: 5 #
|
||||
####################################################################################################
|
||||
FileDelayAge = 1
|
||||
|
||||
#==================================================================================================#
|
||||
######################################## Database settings ########################################
|
||||
#==================================================================================================#
|
||||
|
||||
####################################################################################################
|
||||
# Set the type of database Server #
|
||||
# Example: MSSQL #
|
||||
####################################################################################################
|
||||
DBType = MSSQL
|
||||
|
||||
####################################################################################################
|
||||
# Set the database connection string. #
|
||||
# For help, visit https://www.connectionstrings.com/ #
|
||||
# IMPORTANT: mask ";" with a "\" = "\;" #
|
||||
# Example: "Data Source=SERVERNAME\INSTANCE\;Initial Catalog=DD_ECM\;Trusted_Connection=True\; #
|
||||
# TrustServerCertificate=true\;" #
|
||||
# Example: "Data Source=SERVERNAME\INSTANCE\;Initial Catalog=DD_ECM\;User Id=SQLUSERNAME\; #
|
||||
# Password=SQLPASSWORD\;TrustServerCertificate=true\;" #
|
||||
####################################################################################################
|
||||
DBConnString = "Data Source=S-ZLSDMS-DB1\;Initial Catalog=DD_ECM\;User Id=DD_ECM\;Password=dd_ecm\;TrustServerCertificate=true\;"
|
||||
|
||||
#==================================================================================================#
|
||||
########################################## Profile Setup ###########################################
|
||||
#==================================================================================================#
|
||||
|
||||
####################################################################################################
|
||||
# In the following section(s), it is possible to use multiple variables in File and Folder Paths, #
|
||||
# in SQL Statements as well and other data related specifications. #
|
||||
# #
|
||||
# <VariableName> = <ReplaceWithThisValue> #
|
||||
# %USERNAME% = The current User Name running this Script #
|
||||
# %USERDOMAIN% = The current Domain Name, User is logged on #
|
||||
# %COMPUTERNAME% = The Computername on which this Script is running #
|
||||
# %LOGONSERVER% = The currently connected Domain Controller #
|
||||
# %SCAN%& = Scan Tag for Batch scanning, will be replaced with - nothing #
|
||||
# %DATE% = Get Date in this Format: dd.MM.yyyy #
|
||||
# %TIMESTAMP1% = Get Date in this Format: ddMMyyyy #
|
||||
# %TIMESTAMP2% = Get Date and Time in this Format: ddMMyyyy_HHmmss #
|
||||
# %TIMESTAMP3% = Get Date and Time in this Format: ddMMyyyy_HHmmssffff #
|
||||
# %TIMESTAMP4% = Get Date and Time in this Format: yyyyMMdd HHmmssfff #
|
||||
# %TIMESTAMP5% = Get Date and Time in this Format: yyyyMMdd_HHmmss #
|
||||
# %TIMESTAMP6% = Get Date in this Format: dd.MM.yyyy #
|
||||
# %TIMESTAMP7% = Get Date and Time in this Format: dd.MM.yyyy_HH:mm:ss #
|
||||
# %TIMESTAMP8% = Get Date and Time in this Format: dd.MM.yyyy_HH:mm:ss.ffff #
|
||||
# %TIMESTAMP9% = Get Date and Time in this Format: yyyy/MM/dd HH:mm:ss.fff #
|
||||
# %TIMESTAMP10% = Get Date and Time in this Format: yyyy/MM/dd HH:mm:ss #
|
||||
#--------------------------------------------------------------------------------------------------#
|
||||
# Additional Variables specific for this Script are: #
|
||||
# %SourceFile% = Name of the processed File, including its Extension #
|
||||
# %SourceFilePath% = Directory of the processed File #
|
||||
# %SourceFileFullName% = Directory and Name of the processed File, including its Extension #
|
||||
# #
|
||||
# This dump table is matching with Function: "Update-ReplacePlaceholder-withLogging" #
|
||||
# Version Number: 1.0.0.0 / Version Date: 25.10.2018 #
|
||||
####################################################################################################
|
||||
|
||||
####################################################################################################
|
||||
# Define Profiles in this config file for the executing Script. #
|
||||
# Syntax: #
|
||||
# Profile = <ImportMethode> ; <ImportFormat> ; <SourcePath> ; <SourceFileEncoding> ; <HeaderLine> ;#
|
||||
# <FirstLine> ; <LastLine> ; <CSV-ValueSeperator|XSLX-Tab-name> ; <ArchivPath> ; <ErrorPath> #
|
||||
#--------------------------------------------------------------------------------------------------#
|
||||
# First Parameter: <ImportMethode> #
|
||||
# Set the way, Script is reading the SourceFile. #
|
||||
# Currently only the BulkImport is available. #
|
||||
# Example: ExcelImport #
|
||||
# Example: CSVImport #
|
||||
#--------------------------------------------------------------------------------------------------#
|
||||
# Second Parameter: <ImportFormat> #
|
||||
# For future use.... #
|
||||
# Option is unavailable in Bulk Insert! #
|
||||
# Example: %CellValue% #
|
||||
#--------------------------------------------------------------------------------------------------#
|
||||
# Third Parameter: <SourcePath> #
|
||||
# Set the path to the source files. #
|
||||
# Example: E:\SourceFiles\*.csv #
|
||||
# Example: E:\SourceFiles\SourceFile.xlsx #
|
||||
#--------------------------------------------------------------------------------------------------#
|
||||
# Fourth Parameter: <SourceFileEncoding> #
|
||||
# Set the encoding type, the source files are written with. #
|
||||
# Example: Default #
|
||||
# Example: ascii #
|
||||
# Example: ansi #
|
||||
# Example: bigendianunicode #
|
||||
# Example: bigendianutf32 #
|
||||
# Example: oem #
|
||||
# Example: unicode #
|
||||
# Example: utf7 #
|
||||
# Example: utf8 #
|
||||
# Example: utf8BOM #
|
||||
# Example: utf8NoBOM #
|
||||
# Example: utf32 #
|
||||
#--------------------------------------------------------------------------------------------------#
|
||||
# Fifth Parameter: <HeaderLine> #
|
||||
# Set the line of the heading of the table. #
|
||||
# Its the template for the inserts, only selected header columns will be imported. #
|
||||
# Example: 1 #
|
||||
#--------------------------------------------------------------------------------------------------#
|
||||
# Sixth Parameter: <FirstLine> #
|
||||
# Set the first line with data to import. #
|
||||
# Example: 2 #
|
||||
#--------------------------------------------------------------------------------------------------#
|
||||
# Seventh Parameter: <LastLine> #
|
||||
# Set the last line with data to import. #
|
||||
# You can set a very high number to guarantee everything will be imported. #
|
||||
# Example: 9999999 #
|
||||
#--------------------------------------------------------------------------------------------------#
|
||||
# Eight Parameter: <CSV-ValueSeperator|XSLX-Tab-name> #
|
||||
# Set the CSV value seperator or the XLSX tab name (or a part of it). #
|
||||
# Example: \; (.net RegEx is available) #
|
||||
# Example: `n (Line Break in case of bulk Insert) #
|
||||
# Example: XAP #
|
||||
#--------------------------------------------------------------------------------------------------#
|
||||
# Ninth Parameter: <ArchivPath> #
|
||||
# Set the path, where successful processed files should be moved to. #
|
||||
# Example: E:\Archiv #
|
||||
#--------------------------------------------------------------------------------------------------#
|
||||
# Tenth Parameter: <ErrorPath> #
|
||||
# Set the path, where unsuccessful processed files should be moved to. #
|
||||
# Example: E:\Error #
|
||||
#--------------------------------------------------------------------------------------------------#
|
||||
# Argument call: #
|
||||
# If you need to run the Script with dynamic Values, you can do so, by calling it with arguments. #
|
||||
# Even the Special and Optional Parameters are available in this case. #
|
||||
# Example: #
|
||||
# Import-FileContentToDB.ps1 -argProfileID 1 #
|
||||
####################################################################################################
|
||||
|
||||
####################################################################################################
|
||||
# Define additional special Profiles . #
|
||||
# Syntax: #
|
||||
# PreparingFile = <Command> #
|
||||
#--------------------------------------------------------------------------------------------------#
|
||||
# First Parameter: <Command> #
|
||||
# Set a replace command if necessary. You can set multiple Commands, by seperation them with ~|~ #
|
||||
# Example: Replace(<OldString>~,~<NewString>) #
|
||||
# Example: Replace(<OldString1>~,~<NewString1>) ~|~ Replace(<OldString2>~,~<NewString2>) #
|
||||
####################################################################################################
|
||||
|
||||
####################################################################################################
|
||||
# Define additional special Profiles . #
|
||||
# Syntax: #
|
||||
# CheckSQL = <SQLQuery> #
|
||||
#--------------------------------------------------------------------------------------------------#
|
||||
# First Parameter: <Command> #
|
||||
# Set the first SQL Query. #
|
||||
# Example: DELETE FROM [DD_ECM].[dbo].[TABLE] #
|
||||
####################################################################################################
|
||||
|
||||
####################################################################################################
|
||||
# Define additional special Profiles . #
|
||||
# Syntax: #
|
||||
# InitialSQL = <SQLQuery> #
|
||||
#--------------------------------------------------------------------------------------------------#
|
||||
# First Parameter: <Command> #
|
||||
# Set the second SQL Query. #
|
||||
# Example: DELETE FROM [DD_ECM].[dbo].[TABLE] #
|
||||
####################################################################################################
|
||||
|
||||
####################################################################################################
|
||||
# Define additional special Profiles . #
|
||||
# Syntax: #
|
||||
# PreparingSQL = <SQLQuery> #
|
||||
#--------------------------------------------------------------------------------------------------#
|
||||
# First Parameter: <Command> #
|
||||
# Set the third SQL Query. #
|
||||
# Example: DELETE FROM [DD_ECM].[dbo].[TABLE] #
|
||||
####################################################################################################
|
||||
|
||||
####################################################################################################
|
||||
# Define additional special Profiles . #
|
||||
# Syntax: #
|
||||
# MainLoopSQL = <SQLQuery> #
|
||||
#--------------------------------------------------------------------------------------------------#
|
||||
# First Parameter: <Command> #
|
||||
# Set the fourth SQL Query, this query will be run for every selected line in source file. #
|
||||
# Use placeholder like '%column1%', for the cell values from the source file. #
|
||||
# Example: INSERT INTO [DD_ECM].[dbo].[TABLE](column1,column2) SELECT '%column1%','%column2%' #
|
||||
####################################################################################################
|
||||
|
||||
####################################################################################################
|
||||
# Define additional special Profiles . #
|
||||
# Syntax: #
|
||||
# FinalSQL = <SQLQuery> #
|
||||
#--------------------------------------------------------------------------------------------------#
|
||||
# First Parameter: <Command> #
|
||||
# Set the fifth SQL Query, this query will only be run once per file. #
|
||||
# Example: DELETE FROM [DD_ECM].[dbo].[TABLE] #
|
||||
####################################################################################################
|
||||
|
||||
Profile = ExcelImport ; %CellValue% ; E:\FileProcessing\Input\File\DocumentKindAssigned\XAP_Adressstammdaten\*.xlsx ; utf7 ; 4 ; 5 ; 999999999 ; XAP ; E:\FileProcessing\Archive\File\DocumentKindAssigned\XAP_Adressstammdaten ; E:\FileProcessing\Output\File\DocumentKindAssigned\XAP_Adressstammdaten
|
||||
PreparingFile =
|
||||
CheckSQL =
|
||||
InitialSQL = DELETE FROM [DD_ECM].[dbo].[TBCUST_XAP_KUNDENSTAMM]
|
||||
PreparingSQL =
|
||||
MainLoopSQL = INSERT INTO [DD_ECM].[dbo].[TBCUST_XAP_KUNDENSTAMM]([Kundennummer],[Objektnummer],[Versorgungsart],[rAdressart],[rAnrede],[rNAME1],[rNAME2],[rStraße],[rHausnummer],[rPostfach],[rPLZ],[rOrt],[rTelefon],[rMail],[vAdressart],[vAnrede],[vNAME1],[vNAME2],[vStraße],[vHausnummer],[vPostfach],[vPLZ],[vOrt],[vTelefon],[vMail],[ADDED_WHO],[ADDED_WHEN]) SELECT '%column1%','%column2%','%column3%','%column4%','%column5%','%column6%','%column7%','%column8%','%column9%','%column10%','%column11%','%column12%','%column13%','%column14%','%column15%','%column16%','%column17%','%column18%','%column19%','%column20%','%column21%','%column22%','%column23%','%column24%','%column25%','Import-FileContentToDB',getdate()
|
||||
FinalSQL =
|
||||
|
||||
Profile = CSVImport ; %CellValue% ; \\s-zls32\XAP\XAP-Daten\ZLS\ZLS_WASS\XAP_ZLS_WASS_P\ARC\*.csv ; utf7 ; 3 ; 4 ; 999999999 ; \^\,\^|\^ ; \\s-zls32\XAP\XAP-Daten\ZLS\ZLS_WASS\XAP_ZLS_WASS_P\ARC\DMS-Eingelesen ; \\s-zls32\XAP\XAP-Daten\ZLS\ZLS_WASS\XAP_ZLS_WASS_P\ARC\DMS-Fehler
|
||||
PreparingFile = Replace(@FOLDER,FT:^HKA-IMP^~,~HKA-IMP)
|
||||
CheckSQL =
|
||||
InitialSQL =
|
||||
PreparingSQL =
|
||||
MainLoopSQL = INSERT INTO [DD_ECM].[dbo].[TBCUST_XAP_DOC_EXPORT]([XAP_Beleg_ID],[XAP_Kunden_ID],[XAP_Kundenname],[XAP_Objekt_ID],[XAP_Objektbezeichnung],[XAP_Belegdatum],[XAP_Formular_ID],[XAP_Exportpfad],[ADDED_WHO],[ADDED_WHEN]) SELECT '%column1%','%column2%','%column3%','%column4%','%column5%','%column6%','%column7%','%column8%','Import-FileContentToDB',getdate()
|
||||
FinalSQL =
|
||||
|
||||
#Example:
|
||||
#Profile = ExcelImport ; %CellValue% ; E:\FileProcessing\Input\File\DocumentKindAssigned\XAP_Adressstammdaten\*.xlsx ; utf7 ; 4 ; 5 ; 999999999 ; XAP__Stammdaten_Adressen(2) ; E:\FileProcessing\Output\File\DocumentKindAssigned\XAP_Adressstammdaten ; E:\FileProcessing\Output\File\DocumentKindAssigned\XAP_Adressstammdaten
|
||||
#PreparingFile =
|
||||
#CheckSQL =
|
||||
#InitialSQL = DELETE FROM [DD_ECM].[dbo].[TBCUST_XAP_KUNDENSTAMM]
|
||||
#PreparingSQL =
|
||||
#MainLoopSQL = INSERT INTO [DD_ECM].[dbo].[TBCUST_XAP_KUNDENSTAMM]([Kundennummer],[Objektnummer],[Versorgungsart],[rAdressart],[rAnrede],[rNAME1],[rNAME2],[rStraße],[rHausnummer],[rPostfach],[rPLZ],[rOrt],[rTelefon],[rMail],[vAdressart],[vAnrede],[vNAME1],[vNAME2],[vStraße],[vHausnummer],[vPostfach],[vPLZ],[vOrt],[vTelefon],[vMail],[ADDED_WHO],[ADDED_WHEN]) SELECT '%column1%','%column2%','%column3%','%column4%','%column5%','%column6%','%column7%','%column8%','%column9%','%column10%','%column11%','%column12%','%column13%','%column14%','%column15%','%column16%','%column17%','%column18%','%column19%','%column20%','%column21%','%column22%','%column23%','%column24%','%column25%','Import-FileContentToDB',getdate()
|
||||
#FinalSQL =
|
||||
|
||||
#Profile = CSVImport ; %CellValue% ; \\s-zls32\XAP\XAP-Daten\ZLS\ZLS_WASS\XAP_ZLS_WASS_P\ARC\*.csv ; utf7 ; 3 ; 4 ; 999999999 ; \^\,\^|\^ ; \\s-zls32\XAP\XAP-Daten\ZLS\ZLS_WASS\XAP_ZLS_WASS_P\ARC\DMS-Eingelesen ; \\s-zls32\XAP\XAP-Daten\ZLS\ZLS_WASS\XAP_ZLS_WASS_P\ARC\DMS-Fehler
|
||||
#PreparingFile = Replace(WertA~,~WertB) ~|~ Replace(@FOLDER,FT:^HKA-IMP^~,~HKA-IMP)
|
||||
#CheckSQL =
|
||||
#InitialSQL =
|
||||
#PreparingSQL =
|
||||
#MainLoopSQL = INSERT INTO [DD_ECM].[dbo].[TBCUST_XAP_DOC_EXPORT]([XAP_Beleg_ID],[XAP_Kunden_ID],[XAP_Kundenname],[XAP_Objekt_ID],[XAP_Objektbezeichnung],[XAP_Belegdatum],[XAP_Formular_ID],[XAP_Exportpfad],[ADDED_WHO],[ADDED_WHEN]) SELECT '%column1%','%column2%','%column3%','%column4%','%column5%','%column6%','%column7%','%column8%','Import-FileContentToDB',getdate()
|
||||
#FinalSQL =
|
||||
Binary file not shown.
@@ -0,0 +1,45 @@
|
||||
@ECHO OFF
|
||||
TITLE DIGITAL DATA - Run all files in directory with current permissions
|
||||
ECHO -
|
||||
ECHO Batch Script
|
||||
ECHO Run all files in directory with current permissions
|
||||
ECHO -
|
||||
ECHO Digital Data
|
||||
ECHO Ludwig-Rinn-Strasse 16
|
||||
ECHO 35452 Heuchelheim
|
||||
ECHO Tel.: 0641 / 202360
|
||||
ECHO E-Mail: info@didalog.de
|
||||
ECHO -
|
||||
ECHO Version 1.0.0.0
|
||||
ECHO Date: 13.08.2015
|
||||
ECHO -
|
||||
ECHO Program Startup %date% at %time:~0,8% oclock, on %computername%.
|
||||
|
||||
REM --------------------------------------------------------------
|
||||
REM ------------------------set variables-------------------------
|
||||
REM --------------------------------------------------------------
|
||||
|
||||
setlocal enableextensions
|
||||
|
||||
SET DIRECTORY="%cd%"
|
||||
SET FILEEXTENSION=*.ps1
|
||||
SET COUNT=0
|
||||
|
||||
REM --------------------------------------------------------------
|
||||
REM ---------------------Program 1 / Script 1---------------------
|
||||
REM --------------------------------------------------------------
|
||||
|
||||
FOR /F "tokens=*" %%f in ('dir /S /b %FILEEXTENSION%') do (ECHO %%f && set /a count+=1)
|
||||
ECHO -
|
||||
ECHO Found %count% File(s) with File Extension %FILEEXTENSION% in Directory:
|
||||
ECHO %DIRECTORY%.
|
||||
|
||||
ECHO -
|
||||
ECHO Running this/them now, with your permissions!
|
||||
FOR /F "tokens=*" %%f in ('dir /S /b %FILEEXTENSION%') do (PowerShell.exe -Command "& {Start-Process PowerShell.exe -WindowStyle hidden '-ExecutionPolicy Bypass -File "%%f"'}")
|
||||
|
||||
ECHO -
|
||||
ECHO This Window will close in:
|
||||
#timeout /T 10
|
||||
endlocal
|
||||
exit
|
||||
@@ -0,0 +1,119 @@
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
Version 2.3.2.1 - 18.08.2025
|
||||
NEW: -
|
||||
FIX: -
|
||||
CHG: - Script accepts only one config file now
|
||||
REM: -
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
Version 2.3.2.0 - 26.02.2025
|
||||
NEW: -
|
||||
FIX: - Fixed issues with removing TempFile in CSV Import methode
|
||||
CHG: -
|
||||
REM: -
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
Version 2.3.1.0 - 08.11.2024
|
||||
NEW: -
|
||||
FIX: - Fixed issues with String Seperator for Replace commands
|
||||
CHG: -
|
||||
REM: -
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
Version 2.3.0.0 - 22.10.2024
|
||||
NEW: -
|
||||
FIX: -
|
||||
CHG: - Extension of replace functions, adding seperator ~|~
|
||||
REM: -
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
Version 2.2.0.1 - 21.10.2024
|
||||
NEW: -
|
||||
FIX: - Fixed issues with data Seperator
|
||||
CHG: -
|
||||
REM: -
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
Version 2.2.0.0 - 14.10.2024
|
||||
NEW: - Multiple Replace cmds in PreparingFile
|
||||
FIX: - Fixed XLSX and CSV import issues
|
||||
CHG: -
|
||||
REM: -
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
Version 2.1.0.0 - 11.10.2024
|
||||
NEW: - Parameter call (-pProfileID)
|
||||
FIX: - Fixed CSV import issue, if inverted commas in data - other case
|
||||
CHG: - " will be removed bevor inserting data, Code improvement
|
||||
REM: -
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
Version 2.0.1.0 - 10.06.2024
|
||||
NEW: -
|
||||
FIX: - Fixed CSV import issue, if inverted commas in data
|
||||
CHG: -
|
||||
REM: -
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
Version 2.0.0.2 - 07.05.2024
|
||||
NEW: -
|
||||
FIX: -
|
||||
CHG: - For ExcelImport Value Seperator removed
|
||||
REM: -
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
Version 2.0.0.1 - 20.03.2024
|
||||
NEW: -
|
||||
FIX: -
|
||||
CHG: - Code improvement, clean up variables
|
||||
REM: -
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
Version 2.0.0.0 - 18.03.2024
|
||||
NEW: -
|
||||
FIX: -
|
||||
CHG: - New working Version with Hash tables instead of arrays
|
||||
REM: -
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
Version 1.2.0.0 - 06.12.2023
|
||||
NEW: - Excel Import Methode implemented
|
||||
FIX: -
|
||||
CHG: - Rename - old: Import-FileContent2Database, new: Import-FileContentToDB
|
||||
REM: -
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
Version 1.1.0.0 - 18.04.2019
|
||||
NEW: -
|
||||
FIX: -
|
||||
CHG: - Rename - old: Import-CSV2DB, new: Import-FileContent2Database
|
||||
REM: -
|
||||
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
Version 1.0.0.0 - 15.10.2018
|
||||
NEW: -
|
||||
FIX: -
|
||||
CHG: -
|
||||
REM: -
|
||||
|
||||
-------------------------------------legend------------------------------------
|
||||
NEW: = Added a new functionality
|
||||
FIX: = Fixed a Issue with existing functionality
|
||||
CHG: = Changed a existing functionality
|
||||
REM: = Removed a functionality
|
||||
-------------------------------------------------------------------------------
|
||||
Binary file not shown.
@@ -0,0 +1,123 @@
|
||||
####################################################################################################
|
||||
# Digital Data Configuration File (Template Date: 30.07.2016) #
|
||||
# UTF-8 Coding required! #
|
||||
# incl. FailSafe functions that are active when information is missing. #
|
||||
####################################################################################################
|
||||
|
||||
#==================================================================================================#
|
||||
########################################## General Setup ###########################################
|
||||
#==================================================================================================#
|
||||
|
||||
####################################################################################################
|
||||
# Path in which the log files will be stored. #
|
||||
# Example: E:\LogFiles\<ScriptName> #
|
||||
# FailSafe Setting is: <ScriptPath>\Logs #
|
||||
####################################################################################################
|
||||
LogPath =
|
||||
|
||||
####################################################################################################
|
||||
# Numerical value how long (in days) log files will be kept. ValidateRange is 0 - 1000 #
|
||||
# Setting the Value to 0 disables this Function. #
|
||||
# FailSafe Setting is: 60 #
|
||||
####################################################################################################
|
||||
LogFileKeepTime = 30
|
||||
|
||||
#==================================================================================================#
|
||||
########################################## Profile Setup ###########################################
|
||||
#==================================================================================================#
|
||||
|
||||
####################################################################################################
|
||||
# Define Profiles in this config file for the executing Script. #
|
||||
# Syntax: #
|
||||
# UninstallServiceProfile | InstallServiceProfile #
|
||||
####################################################################################################
|
||||
|
||||
####################################################################################################
|
||||
# UninstallServiceProfile #
|
||||
# This profile type stops and uninstalls existing services. #
|
||||
####################################################################################################
|
||||
# First Parameter: <ServiceName> #
|
||||
# Set the service name, you want to uninstall. #
|
||||
# Dont confuse name with display name! Check it via PS cmdlet "Get-Service" #
|
||||
# Example: DigitalDataServiceNr1 #
|
||||
####################################################################################################
|
||||
|
||||
####################################################################################################
|
||||
# InstallServiceProfile #
|
||||
# This profile type installs or updates existing services and starts them if needed. #
|
||||
# Updating a service can not overwrite the <FullPathToEXE>, in case a path needs to be changed, #
|
||||
# uninstall and install the service again! #
|
||||
####################################################################################################
|
||||
# First Parameter: <ServiceDisplayName> #
|
||||
# Set the service display name, you want to install. #
|
||||
# In the background the display name will be used for the service name, by removeing blank in it. #
|
||||
# Example: Digital Data Service Nr1 #
|
||||
#--------------------------------------------------------------------------------------------------#
|
||||
# Second Parameter: <FullPathToEXE> #
|
||||
# Set the absolut path the the service EXE: #
|
||||
# Example: D:\ProgramFiles\DigitalData\ServiceNr1 #
|
||||
#--------------------------------------------------------------------------------------------------#
|
||||
# Third Parameter: <StartupParameter> #
|
||||
# Set a parameter which will be used by starting the service. #
|
||||
# Keep empty if no parameter is needed. #
|
||||
# Example: -k netsvcs #
|
||||
# Example: /debug #
|
||||
#--------------------------------------------------------------------------------------------------#
|
||||
# Fourth Parameter: <StartupType> #
|
||||
# Set one of the following examples: #
|
||||
# Example: Automatic #
|
||||
# Example: Manual #
|
||||
# Example: Disabled #
|
||||
# Example: AutomaticDelayedStart #
|
||||
#--------------------------------------------------------------------------------------------------#
|
||||
# Fifth Parameter: <Action> #
|
||||
# Set if the new installed service should start immediately after installation. #
|
||||
# Example: InstallOnly #
|
||||
# Example: InstallAndStart #
|
||||
#--------------------------------------------------------------------------------------------------#
|
||||
# Sixth Parameter: <Description> #
|
||||
# Set the description of the service. #
|
||||
# Example: This is a nice service which helps you with some stuff. #
|
||||
#--------------------------------------------------------------------------------------------------#
|
||||
# Seventh Parameter: <ServiceUserName> #
|
||||
# Set the username which should run this service. #
|
||||
# Can only used in combination with <ServiceUserPassword>. #
|
||||
# By keeping this parameter empty, the local system account will run the service. #
|
||||
# Example: UserAccount #
|
||||
# Example: Administrator #
|
||||
# Example: domain\UserAccount #
|
||||
# Example: domain\Administrator #
|
||||
#--------------------------------------------------------------------------------------------------#
|
||||
# Eight Parameter: <ServiceUserPassword> #
|
||||
# Set the password which should run this service. #
|
||||
# Can only used in combination with <ServiceUserName>. #
|
||||
# By keeping this parameter empty, the local system account will run the service. #
|
||||
# Example: 12345 #
|
||||
# Example: password #
|
||||
# Example: securepassword #
|
||||
####################################################################################################
|
||||
|
||||
#UninstallServiceProfile = DigitalDataEmail-Service
|
||||
#InstallServiceProfile = Digital Data Email-Service ; D:\ProgramFiles\Digital Data\Debug\DDEmailService.exe ; ; Manual ; InstallAndStart ; Sends emails from the Digital Data email pool.
|
||||
|
||||
#Example:
|
||||
#UninstallServiceProfile = MyNiceService
|
||||
|
||||
#InstallServiceProfile = My nice service ; D:\ProgramFiles\Myniceservice\program.exe ; ;Automatic ; InstallOnly ; This is a very nice service
|
||||
#InstallServiceProfile = My nice service ; D:\ProgramFiles\Myniceservice\program.exe ; -parameter1 ;Automatic ; InstallAndStart ; This is a very nice service ; domain\user ; password
|
||||
|
||||
#UninstallServiceProfile = DigitalDataEB-Creator
|
||||
#UninstallServiceProfile = DigitalDataEmail-Profiler
|
||||
#UninstallServiceProfile = DigitalDataeInvoice-Parser
|
||||
#UninstallServiceProfile = DigitalDataJobRunner
|
||||
#UninstallServiceProfile = DigitalDataEmail-Service
|
||||
#UninstallServiceProfile = DigitalDataWM-ResultHandler
|
||||
#UninstallServiceProfile = DigitalDataEDMI-Service
|
||||
|
||||
#InstallServiceProfile = Digital Data EB-Creator ; D:\ProgramFiles\Digital Data\DDEBCreator\SERVICE\EB_Creator.exe ; ; Manual ; InstallOnly ; Creates result reports for released documents.
|
||||
#InstallServiceProfile = Digital Data Email-Profiler ; D:\ProgramFiles\Digital Data\DDEmailProfiler\SERVICE\EmailProfiler.Service.exe ; ; Manual ; InstallOnly ; Monitors email inboxes and processes incoming emails and their attachments.
|
||||
#InstallServiceProfile = Digital Data eInvoice-Parser ; D:\ProgramFiles\Digital Data\DDZUGFeRDService\DDZUGFeRDService.exe ; ; Manual ; InstallOnly ; Validates electronic invoices and extracts data.
|
||||
#InstallServiceProfile = Digital Data JobRunner ; D:\ProgramFiles\Digital Data\DDJobRunner\SERVICE\DigitalData.Services.JobRunner.exe ; ; Manual ; InstallOnly ; Executes defined and configured jobs to synchronize master and transaction data.
|
||||
#InstallServiceProfile = Digital Data Email-Service ; D:\ProgramFiles\Digital Data\DDEmailService\SERVICE\DDEmailService.exe ; ; Manual ; InstallOnly ; Sends emails from the Digital Data email pool.
|
||||
#InstallServiceProfile = Digital Data WM-ResultHandler ; D:\ProgramFiles\Digital Data\DDResultHandler\SERVICE\DDWDResultHandler.exe ; ; Manual ; InstallOnly ; Executes windream searches and processes the results according to profile specifications.
|
||||
#InstallServiceProfile = Digital Data EDMI-Service ; ; ; Manual ; InstallOnly ; Proxy Service for Digital Data Applications.
|
||||
Binary file not shown.
@@ -0,0 +1,130 @@
|
||||
TITLE DIGITAL DATA - Run all files in directory
|
||||
pushd "%~dp0"
|
||||
@ECHO OFF
|
||||
REM ----------------------------------------------------------------------------
|
||||
REM This script runs all specified files in the current directory
|
||||
REM
|
||||
REM Returns: <NOTHING>
|
||||
REM ----------------------------------------------------------------------------
|
||||
REM Copyright (c) 2024 by Digital Data GmbH
|
||||
REM
|
||||
REM Digital Data GmbH • Ludwig-Rinn-Strasse 16 • D-35452 Heuchelheim
|
||||
REM Tel.: 0641/202360 • E-Mail: info-flow@digitaldata.works
|
||||
REM ----------------------------------------------------------------------------
|
||||
REM Creation Date / Author: 13.08.2015 / MK
|
||||
REM Version Date / Editor: 24.11.2024 / MK
|
||||
REM Version Number: 2.0.0.0
|
||||
|
||||
REM --------------------------------------------------------------
|
||||
REM ------------------------set variables-------------------------
|
||||
REM --------------------------------------------------------------
|
||||
|
||||
SET /A ADMINMODE=1
|
||||
SET FILEEXTENSION=*.ps1
|
||||
|
||||
SET POWERSHELL7EXE="C:\Program Files\PowerShell\7\pwsh.exe"
|
||||
SET POWERSHELL6EXE="C:\Program Files\PowerShell\6\pwsh.exe"
|
||||
SET POWERSHELLBUILDINEXE="C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe"
|
||||
|
||||
SET DIRECTORY="%cd%"
|
||||
SET /A COUNT=0
|
||||
SET LOGFILE="%cd%\error.log"
|
||||
|
||||
REM --------------------------------------------------------------
|
||||
REM ------------------------preparing part------------------------
|
||||
REM --------------------------------------------------------------
|
||||
|
||||
SETLOCAL ENABLEEXTENSIONS ENABLEDELAYEDEXPANSION
|
||||
ECHO Program Startup %date% at %time:~0,8% o'clock, on %computername%.
|
||||
|
||||
ECHO -
|
||||
IF !ADMINMODE! EQU 1 (ECHO WARNING: In AdminMode, network drives/files will maybe be unavailable! && timeout /T 15)
|
||||
|
||||
ECHO -
|
||||
ECHO Searching for PowerShell 7...
|
||||
IF EXIST "!POWERSHELL7EXE!" (
|
||||
ECHO Found PowerShell 7 on this system.
|
||||
SET POWERSHELLEXE=!POWERSHELL7EXE!
|
||||
) ELSE (
|
||||
ECHO WARNING: Did not found PowerShell 7 on this system
|
||||
ECHO This could lead to malfunctions. Check the ..._Readme.txt file
|
||||
timeout /T 15
|
||||
ECHO Searching for PowerShell 6...
|
||||
IF EXIST "!POWERSHELL6EXE!" (
|
||||
ECHO Found PowerShell 6 on this system.
|
||||
SET POWERSHELLEXE=!POWERSHELL6EXE!
|
||||
) ELSE (
|
||||
ECHO WARNING: Did not found PowerShell 6 on this system.
|
||||
ECHO This could lead to malfunctions. Check the ..._Readme.txt file.
|
||||
timeout /T 15
|
||||
ECHO Searching for old PowerShell buildin version...
|
||||
IF EXIST "!POWERSHELLBUILDINEXE!" (
|
||||
ECHO Found old PowerShell buildin version on this system.
|
||||
SET POWERSHELLEXE=!POWERSHELLBUILDINEXE!
|
||||
) ELSE (
|
||||
ECHO ERROR: Did not found any PowerShell on this system.
|
||||
ECHO Exiting, because of this issue...
|
||||
timeout /T 15
|
||||
GOTO exit
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
REM --------------------------------------------------------------
|
||||
REM ---------------------Running Scripts---------------------------
|
||||
REM --------------------------------------------------------------
|
||||
|
||||
FOR /F "tokens=*" %%f in ('dir /S /b %FILEEXTENSION%') do (
|
||||
SET /a COUNT+=1
|
||||
)
|
||||
|
||||
ECHO -
|
||||
ECHO Found %COUNT% File(s) with File Extension %FILEEXTENSION% in Directory:
|
||||
ECHO %DIRECTORY%
|
||||
|
||||
ECHO -
|
||||
ECHO Running these scripts now:
|
||||
FOR /F "tokens=*" %%f in ('dir /S /b %FILEEXTENSION%') do (
|
||||
|
||||
ECHO -
|
||||
SET "SCRIPT=%%f"
|
||||
ECHO Running script:
|
||||
ECHO !SCRIPT!
|
||||
|
||||
ECHO -
|
||||
SET "ARGUMENTS=-NoProfile -ExecutionPolicy Bypass -File \""!SCRIPT!\"""
|
||||
ECHO With Arguments:
|
||||
ECHO !ARGUMENTS!
|
||||
|
||||
ECHO -
|
||||
SET "SUBCOMMAND=Start-Process -FilePath '!POWERSHELLEXE!' -WindowStyle hidden -ArgumentList '!ARGUMENTS!' "
|
||||
ECHO Subcommand:
|
||||
ECHO !SUBCOMMAND!
|
||||
|
||||
ECHO -
|
||||
IF !ADMINMODE! EQU 1 (
|
||||
SET "COMMAND=Start-Process powershell.exe -WindowStyle hidden -Verb runas {!SUBCOMMAND!} "
|
||||
) ELSE (
|
||||
SET "COMMAND=Start-Process powershell.exe -WindowStyle hidden {!SUBCOMMAND!} "
|
||||
)
|
||||
ECHO In nested command:
|
||||
ECHO !COMMAND!
|
||||
|
||||
powershell.exe -NoProfile -ExecutionPolicy Bypass -Command "!COMMAND!"
|
||||
|
||||
IF ERRORLEVEL 1 (
|
||||
ECHO There was an error running the script: !SCRIPT! >> !LOGFILE!
|
||||
)
|
||||
)
|
||||
|
||||
REM --------------------------------------------------------------
|
||||
REM -------------------------final part---------------------------
|
||||
REM --------------------------------------------------------------
|
||||
|
||||
:exit
|
||||
ENDLOCAL
|
||||
ECHO -
|
||||
ECHO Program Complete %date% at %time:~0,8% o'clock, on %computername%.
|
||||
ECHO This Window will close in:
|
||||
timeout /T 10
|
||||
exit
|
||||
@@ -0,0 +1,30 @@
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
Version 1.0.1.1 - 18.08.2025
|
||||
NEW: -
|
||||
FIX: -
|
||||
CHG: - Script accepts only one config file now
|
||||
REM: -
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
Version 1.0.1.0 - 26.11.2024
|
||||
NEW: -
|
||||
FIX: -
|
||||
CHG: - Now script can only be executed with admin rights
|
||||
REM: -
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
Version 1.0.0.0 - 21.11.2024
|
||||
NEW: -
|
||||
FIX: -
|
||||
CHG: -
|
||||
REM: -
|
||||
|
||||
-------------------------------------legend------------------------------------
|
||||
NEW: = Added a new functionality
|
||||
FIX: = Fixed a Issue with existing functionality
|
||||
CHG: = Changed a existing functionality
|
||||
REM: = Removed a functionality
|
||||
-------------------------------------------------------------------------------
|
||||
@@ -0,0 +1,6 @@
|
||||
System Requirements
|
||||
|
||||
- Admin rights
|
||||
- PowerShell Version 6 or higher needs to be installed
|
||||
The path of the Powershell Exe needs to be set in the "Install-WindowsService_Caller.cmd" file.
|
||||
Like: SET POWERSHELLEXE="C:\Program Files\PowerShell\7\pwsh.exe"
|
||||
Binary file not shown.
10
current/DD-Core/Maintain-Windows/Maintain-Windows.cmd
Normal file
10
current/DD-Core/Maintain-Windows/Maintain-Windows.cmd
Normal file
@@ -0,0 +1,10 @@
|
||||
@echo off
|
||||
|
||||
Dism /Online /Cleanup-Image /ScanHealth
|
||||
Dism /Online /Cleanup-Image /CheckHealth
|
||||
Dism /Online /Cleanup-Image /RestoreHealth
|
||||
sfc /scannow
|
||||
|
||||
Dism /online /Cleanup-Image /StartComponentCleanup
|
||||
Dism /online /Cleanup-Image /StartComponentCleanup /ResetBase
|
||||
cleanmgr
|
||||
8
current/DD-Core/Maintain-Windows/Maintain-Windows.ps1
Normal file
8
current/DD-Core/Maintain-Windows/Maintain-Windows.ps1
Normal file
@@ -0,0 +1,8 @@
|
||||
Dism /Online /Cleanup-Image /ScanHealth
|
||||
Dism /Online /Cleanup-Image /CheckHealth
|
||||
Dism /Online /Cleanup-Image /RestoreHealth
|
||||
sfc /scannow
|
||||
|
||||
Dism /online /Cleanup-Image /StartComponentCleanup
|
||||
Dism /online /Cleanup-Image /StartComponentCleanup /ResetBase
|
||||
cleanmgr
|
||||
@@ -0,0 +1,2 @@
|
||||
Nutzername_Neu;Nutzername_Alt;
|
||||
u99999;Max.Mustermann;
|
||||
|
766
current/DD-Core/Merge-MailStoreUserArchives/Benutzer-Mapping.csv
Normal file
766
current/DD-Core/Merge-MailStoreUserArchives/Benutzer-Mapping.csv
Normal file
@@ -0,0 +1,766 @@
|
||||
Nutzername_Alt;Nutzername_Neu
|
||||
matla@local.zellstoff-stendal.de;U01062
|
||||
lemke@local.zellstoff-stendal.de;U01179
|
||||
bauer@local.zellstoff-stendal.de;U02086
|
||||
braune@local.zellstoff-stendal.de;U01992
|
||||
hennig@local.zellstoff-stendal.de;U01519
|
||||
israel@local.zellstoff-stendal.de;U01421
|
||||
Freude@local.zellstoff-stendal.de;U01711
|
||||
schulz@local.zellstoff-stendal.de;U00546
|
||||
waechter@local.zellstoff-stendal.de;U00203
|
||||
kramm@local.zellstoff-stendal.de;U01278
|
||||
raedisch@local.zellstoff-stendal.de;U00749
|
||||
kueche@local.zellstoff-stendal.de;U01257
|
||||
stoll@local.zellstoff-stendal.de;U00406
|
||||
Bahn@local.zellstoff-stendal.de;U02101
|
||||
ortner@local.zellstoff-stendal.de;U00879
|
||||
schaarschmidt@local.zellstoff-stendal.de;U00644
|
||||
blum@local.zellstoff-stendal.de;U02019
|
||||
goerges@local.zellstoff-stendal.de;U01636
|
||||
krogoll@local.zellstoff-stendal.de;U01261
|
||||
br_goers@local.zellstoff-stendal.de;U01635
|
||||
buchholz@local.zellstoff-stendal.de;U01975
|
||||
empfang@local.zellstoff-stendal.de;U01794
|
||||
kurth@local.zellstoff-stendal.de;U01248
|
||||
tribologie@local.zellstoff-stendal.de;U00272
|
||||
PraktikantEK@local.zellstoff-stendal.de;U01810
|
||||
jlempke@local.zellstoff-stendal.de;U01178
|
||||
jordan@local.zellstoff-stendal.de;U01384
|
||||
buenning@local.zellstoff-stendal.de;U01970
|
||||
labor1@local.zellstoff-stendal.de;U00005
|
||||
trojahn@local.zellstoff-stendal.de;U00267
|
||||
labor2@local.zellstoff-stendal.de;U00027
|
||||
labor3@local.zellstoff-stendal.de;U00004
|
||||
inventur@local.zellstoff-stendal.de;U01425
|
||||
hensel@local.zellstoff-stendal.de;U01518
|
||||
kfzwerkstatt@local.zellstoff-stendal.de;U00139
|
||||
hunger@local.zellstoff-stendal.de;U01446
|
||||
stellwerk@local.zellstoff-stendal.de;U00425
|
||||
tribologie2@local.zellstoff-stendal.de;U00271
|
||||
PWC2@local.zellstoff-stendal.de;U03688
|
||||
ciesielski@local.zellstoff-stendal.de;U01923
|
||||
grube@local.zellstoff-stendal.de;U01611
|
||||
hofmann@local.zellstoff-stendal.de;U01490
|
||||
latanowicz@local.zellstoff-stendal.de;U02482
|
||||
Barcks@local.zellstoff-stendal.de;U03110
|
||||
Brehmer@local.zellstoff-stendal.de;U02658
|
||||
Mattauch@local.zellstoff-stendal.de;U02670
|
||||
Zander@local.zellstoff-stendal.de;U02686
|
||||
Boehl@local.zellstoff-stendal.de;U03097
|
||||
Melzer@local.zellstoff-stendal.de;U02634
|
||||
Luecke@local.zellstoff-stendal.de;U03086
|
||||
Schwarzlose@local.zellstoff-stendal.de;U02860
|
||||
Hoehne@local.zellstoff-stendal.de;U03061
|
||||
Uchtenhagen@local.zellstoff-stendal.de;U02654
|
||||
Nagel@local.zellstoff-stendal.de;U02833
|
||||
Ilgner@local.zellstoff-stendal.de;U02648
|
||||
Netzel@local.zellstoff-stendal.de;U02720
|
||||
Woelkert@local.zellstoff-stendal.de;U03056
|
||||
Pietsch@local.zellstoff-stendal.de;U02672
|
||||
Wolter@local.zellstoff-stendal.de;U02814
|
||||
Hoja@local.zellstoff-stendal.de;U02832
|
||||
Hoffmann@local.zellstoff-stendal.de;U02768
|
||||
Ringleb@local.zellstoff-stendal.de;U02789
|
||||
Kannenberg@local.zellstoff-stendal.de;U02741
|
||||
ulemke@local.zellstoff-stendal.de;U02792
|
||||
afiedler@local.zellstoff-stendal.de;U02807
|
||||
hhaker@local.zellstoff-stendal.de;U02773
|
||||
pheise@local.zellstoff-stendal.de;U02809
|
||||
rlemke@local.zellstoff-stendal.de;U03216
|
||||
kudling@local.zellstoff-stendal.de;U03236
|
||||
fenn@local.zellstoff-stendal.de;U03545
|
||||
freundt@local.zellstoff-stendal.de;U03572
|
||||
finke@local.zellstoff-stendal.de;U03583
|
||||
pietr@local.zellstoff-stendal.de;U03585
|
||||
labor4@local.zellstoff-stendal.de;U03667
|
||||
thiele@local.zellstoff-stendal.de;U03683
|
||||
bark@local.zellstoff-stendal.de;U03783
|
||||
mbinder@local.zellstoff-stendal.de;U03793
|
||||
bechtle@local.zellstoff-stendal.de;U02075
|
||||
adminSDI@local.zellstoff-stendal.de;U03577
|
||||
galsync@local.zellstoff-stendal.de;U01019
|
||||
info@local.zellstoff-stendal.de;U00232
|
||||
oertel@local.zellstoff-stendal.de;U00897
|
||||
cooper@local.zellstoff-stendal.de;U01907
|
||||
zpredv@local.zellstoff-stendal.de;U01816
|
||||
noffke@local.zellstoff-stendal.de;U00904
|
||||
reinecke@local.zellstoff-stendal.de;U00729
|
||||
vogl@local.zellstoff-stendal.de;U00222
|
||||
helm@local.zellstoff-stendal.de;U01522
|
||||
gruner@local.zellstoff-stendal.de;U01600
|
||||
bahn-rufbereitschaft@local.zellstoff-stendal.de;U04133
|
||||
boehme@local.zellstoff-stendal.de;U02017
|
||||
mattersberger@local.zellstoff-stendal.de;U01059
|
||||
Z-Warte7@local.zellstoff-stendal.de;U00042
|
||||
aschenbach@local.zellstoff-stendal.de;U02139
|
||||
rdoering@local.zellstoff-stendal.de;U01847
|
||||
jaeck@local.zellstoff-stendal.de;U01411
|
||||
hopfe@local.zellstoff-stendal.de;U01472
|
||||
zierau@local.zellstoff-stendal.de;U00062
|
||||
voigt@local.zellstoff-stendal.de;U00220
|
||||
lnossol@local.zellstoff-stendal.de;U00903
|
||||
wyschka@local.zellstoff-stendal.de;U00084
|
||||
kraatz@local.zellstoff-stendal.de;U01283
|
||||
geber@local.zellstoff-stendal.de;U01676
|
||||
slusarek@local.zellstoff-stendal.de;U00473
|
||||
technologie@local.zellstoff-stendal.de;U00338
|
||||
testSuP@local.zellstoff-stendal.de;U00311
|
||||
mergeit@local.zellstoff-stendal.de;U03810
|
||||
sherrmann@local.zellstoff-stendal.de;U01511
|
||||
blohm@local.zellstoff-stendal.de;U02021
|
||||
mercer@local.zellstoff-stendal.de;U01018
|
||||
sekretariatGF@local.zellstoff-stendal.de;U01665
|
||||
ortmann@local.zellstoff-stendal.de;U00880
|
||||
suppi@local.zellstoff-stendal.de;U00377
|
||||
dreamscan@local.zellstoff-stendal.de;U00645
|
||||
brennecke@local.zellstoff-stendal.de;U01988
|
||||
digitaldata@local.zellstoff-stendal.de;U03752
|
||||
dtrollius@local.zellstoff-stendal.de;U00265
|
||||
ih_gast@local.zellstoff-stendal.de;U01681
|
||||
bethge@local.zellstoff-stendal.de;U02034
|
||||
krieg@local.zellstoff-stendal.de;U01268
|
||||
EinkaufTechnik@local.zellstoff-stendal.de;U00339
|
||||
fu@local.zellstoff-stendal.de;U01698
|
||||
motter@local.zellstoff-stendal.de;U00960
|
||||
dreke@local.zellstoff-stendal.de;U01844
|
||||
hornig@local.zellstoff-stendal.de;U01461
|
||||
mwagner@local.zellstoff-stendal.de;U00201
|
||||
kraft@local.zellstoff-stendal.de;U01282
|
||||
LKW@local.zellstoff-stendal.de;U00049
|
||||
aktivierung@local.zellstoff-stendal.de;U02171
|
||||
spinnehoern@local.zellstoff-stendal.de;U00451
|
||||
schulze@local.zellstoff-stendal.de;U00013
|
||||
roggenbuck@local.zellstoff-stendal.de;U02490
|
||||
kral-baericke@local.zellstoff-stendal.de;U02497
|
||||
ZSPC1112$@local.zellstoff-stendal.de;U02546
|
||||
Volkmer@local.zellstoff-stendal.de;U02764
|
||||
Szentjanosi@local.zellstoff-stendal.de;U02595
|
||||
Seifert@local.zellstoff-stendal.de;U02844
|
||||
zimmermann@local.zellstoff-stendal.de;U03196
|
||||
bohn@local.zellstoff-stendal.de;U03484
|
||||
Wehlte@local.zellstoff-stendal.de;U03522
|
||||
deckert@local.zellstoff-stendal.de;U03530
|
||||
ketterer@local.zellstoff-stendal.de;U03550
|
||||
borch@local.zellstoff-stendal.de;U03551
|
||||
Statetzny@local.zellstoff-stendal.de;U03575
|
||||
adminTE@local.zellstoff-stendal.de;U03639
|
||||
AfWUser1@local.zellstoff-stendal.de;U03719
|
||||
roth@local.zellstoff-stendal.de;U03738
|
||||
glowalla@local.zellstoff-stendal.de;U01645
|
||||
mm001@local.zellstoff-stendal.de;U03755
|
||||
walinda@local.zellstoff-stendal.de;U03775
|
||||
adminRA@local.zellstoff-stendal.de;U03671
|
||||
sgonina@local.zellstoff-stendal.de;U03820
|
||||
MHGARNLKW1@local.zellstoff-stendal.de;U03827
|
||||
MHGARNLKW2@local.zellstoff-stendal.de;U03832
|
||||
MHGARNLKW3@local.zellstoff-stendal.de;U03831
|
||||
MHGARNLKW4@local.zellstoff-stendal.de;U03830
|
||||
MHGARNLKW5@local.zellstoff-stendal.de;U03829
|
||||
MHGARNLKW6@local.zellstoff-stendal.de;U03834
|
||||
meeting248@local.zellstoff-stendal.de;U03750
|
||||
auditorium@local.zellstoff-stendal.de;U03748
|
||||
heppner@local.zellstoff-stendal.de;U01516
|
||||
shala@local.zellstoff-stendal.de;U03933
|
||||
ZSIntranetNutzer@local.zellstoff-stendal.de;U01426
|
||||
meeting115@local.zellstoff-stendal.de;U01027
|
||||
gaedke@local.zellstoff-stendal.de;U01688
|
||||
edeling@local.zellstoff-stendal.de;U01818
|
||||
bem_liedtke@local.zellstoff-stendal.de;U01164
|
||||
wabersky@local.zellstoff-stendal.de;U00207
|
||||
ih-at@local.zellstoff-stendal.de;U01441
|
||||
otto@local.zellstoff-stendal.de;U00874
|
||||
hlawati@local.zellstoff-stendal.de;U01500
|
||||
jaeger@local.zellstoff-stendal.de;U01410
|
||||
sellhusen@local.zellstoff-stendal.de;U00510
|
||||
oppenkowski@local.zellstoff-stendal.de;U00213
|
||||
ritzmann@local.zellstoff-stendal.de;U00705
|
||||
binder@local.zellstoff-stendal.de;U02031
|
||||
maschinendiagnose@local.zellstoff-stendal.de;U01063
|
||||
br_seebert@local.zellstoff-stendal.de;U04107
|
||||
Boehncke@local.zellstoff-stendal.de;U03135
|
||||
Huebener@local.zellstoff-stendal.de;U03093
|
||||
sprigge@local.zellstoff-stendal.de;U02737
|
||||
zech@local.zellstoff-stendal.de;U00075
|
||||
br_brauns@local.zellstoff-stendal.de;U04108
|
||||
aengel@local.zellstoff-stendal.de;U01788
|
||||
kieshauer@local.zellstoff-stendal.de;U01346
|
||||
seide@local.zellstoff-stendal.de;U00523
|
||||
bordfeld@local.zellstoff-stendal.de;U02006
|
||||
wuersig@local.zellstoff-stendal.de;U00088
|
||||
malzahn@local.zellstoff-stendal.de;U01082
|
||||
Meeting341@local.zellstoff-stendal.de;U03747
|
||||
bliefert@local.zellstoff-stendal.de;U02023
|
||||
gierspeck@local.zellstoff-stendal.de;U03984
|
||||
koodts@local.zellstoff-stendal.de;U01296
|
||||
wulf@local.zellstoff-stendal.de;U00090
|
||||
martin@local.zellstoff-stendal.de;U01071
|
||||
mschuette@local.zellstoff-stendal.de;U00535
|
||||
sieber@local.zellstoff-stendal.de;U00488
|
||||
dnickel@local.zellstoff-stendal.de;U00908
|
||||
wache@local.zellstoff-stendal.de;U00206
|
||||
meeting222@local.zellstoff-stendal.de;U03751
|
||||
gollnick@local.zellstoff-stendal.de;U01638
|
||||
meetingproduktion@local.zellstoff-stendal.de;U03749
|
||||
bader@local.zellstoff-stendal.de;U02104
|
||||
grimmer@local.zellstoff-stendal.de;U03638
|
||||
Z-Warte5@local.zellstoff-stendal.de;U00044
|
||||
magull@local.zellstoff-stendal.de;U01103
|
||||
Fiss@local.zellstoff-stendal.de;U02606
|
||||
Hanitzsch@local.zellstoff-stendal.de;U02825
|
||||
Tetzlaff@local.zellstoff-stendal.de;U02835
|
||||
Witaszak@local.zellstoff-stendal.de;U02597
|
||||
betka@local.zellstoff-stendal.de;U02033
|
||||
grader@local.zellstoff-stendal.de;U01631
|
||||
lempke@local.zellstoff-stendal.de;U01177
|
||||
schlieker@local.zellstoff-stendal.de;U00615
|
||||
waack@local.zellstoff-stendal.de;U00208
|
||||
jeschmidt@local.zellstoff-stendal.de;U00606
|
||||
luedicke@local.zellstoff-stendal.de;U01134
|
||||
braunstoff@local.zellstoff-stendal.de;U00047
|
||||
Meeting212@local.zellstoff-stendal.de;U03978
|
||||
kortegast@local.zellstoff-stendal.de;U01289
|
||||
mueller@local.zellstoff-stendal.de;U00950
|
||||
kruppa@local.zellstoff-stendal.de;U01259
|
||||
Maasz@local.zellstoff-stendal.de;U01117
|
||||
knepper@local.zellstoff-stendal.de;U01322
|
||||
mkolditz@local.zellstoff-stendal.de;U01304
|
||||
riemann@local.zellstoff-stendal.de;U00711
|
||||
ih-m@local.zellstoff-stendal.de;U01439
|
||||
Lemme@local.zellstoff-stendal.de;U02572
|
||||
Hengmith@local.zellstoff-stendal.de;U02667
|
||||
Pludowski@local.zellstoff-stendal.de;U02707
|
||||
Meissner@local.zellstoff-stendal.de;U02587
|
||||
Conrad@local.zellstoff-stendal.de;U02688
|
||||
Glimm@local.zellstoff-stendal.de;U02822
|
||||
Dreiza@local.zellstoff-stendal.de;U02839
|
||||
Bienasch@local.zellstoff-stendal.de;U02655
|
||||
Herrmann@local.zellstoff-stendal.de;U02940
|
||||
Krummhaar@local.zellstoff-stendal.de;U02776
|
||||
Fischer@local.zellstoff-stendal.de;U02788
|
||||
Lukat@local.zellstoff-stendal.de;U02621
|
||||
Wiedensee@local.zellstoff-stendal.de;U02640
|
||||
Heine@local.zellstoff-stendal.de;U02663
|
||||
Isensee@local.zellstoff-stendal.de;U02712
|
||||
Mertens@local.zellstoff-stendal.de;U02616
|
||||
Koch@local.zellstoff-stendal.de;U02630
|
||||
Grabow@local.zellstoff-stendal.de;U02591
|
||||
MWeiss@local.zellstoff-stendal.de;U02866
|
||||
specker@local.zellstoff-stendal.de;U02816
|
||||
handt@local.zellstoff-stendal.de;U03722
|
||||
ewagner@local.zellstoff-stendal.de;U03721
|
||||
rogall@local.zellstoff-stendal.de;U00691
|
||||
storjohann@local.zellstoff-stendal.de;U02548
|
||||
Selzer@local.zellstoff-stendal.de;U02715
|
||||
hartleben@local.zellstoff-stendal.de;U01552
|
||||
Meeting209@local.zellstoff-stendal.de;U04006
|
||||
Zellstoff-W1@local.zellstoff-stendal.de;U00038
|
||||
br_jlempke@local.zellstoff-stendal.de;U04119
|
||||
Kutusowa@local.zellstoff-stendal.de;U02717
|
||||
Mueller-Heuser@local.zellstoff-stendal.de;U03068
|
||||
Moeller@local.zellstoff-stendal.de;U03046
|
||||
Peust@local.zellstoff-stendal.de;U02673
|
||||
Henkel@local.zellstoff-stendal.de;U02859
|
||||
SBV_Tauscher@local.zellstoff-stendal.de;U04120
|
||||
SBV_Zier@local.zellstoff-stendal.de;U04121
|
||||
Zorr@local.zellstoff-stendal.de;U02766
|
||||
Zellstofflager@local.zellstoff-stendal.de;U00074
|
||||
estel@local.zellstoff-stendal.de;U01780
|
||||
harbich@local.zellstoff-stendal.de;U01562
|
||||
lohmann@local.zellstoff-stendal.de;U01144
|
||||
mguenther@local.zellstoff-stendal.de;U01591
|
||||
aconrad@local.zellstoff-stendal.de;U03507
|
||||
aw-labor@local.zellstoff-stendal.de;U02114
|
||||
eggert@local.zellstoff-stendal.de;U01812
|
||||
schroeder@local.zellstoff-stendal.de;U00590
|
||||
meetingmh@local.zellstoff-stendal.de;U03746
|
||||
thurau@local.zellstoff-stendal.de;U00294
|
||||
Hackerei-W1@local.zellstoff-stendal.de;U00045
|
||||
Hellie@local.zellstoff-stendal.de;U02867
|
||||
Petruck@local.zellstoff-stendal.de;U02586
|
||||
nahrstedt@local.zellstoff-stendal.de;U03510
|
||||
bem_seebert@local.zellstoff-stendal.de;U04106
|
||||
gerhardt@local.zellstoff-stendal.de;U01667
|
||||
bem_lohmann@local.zellstoff-stendal.de;U04122
|
||||
bem_edeling@local.zellstoff-stendal.de;U04123
|
||||
bergner@local.zellstoff-stendal.de;U02038
|
||||
sikora@local.zellstoff-stendal.de;U00486
|
||||
guenther@local.zellstoff-stendal.de;U01589
|
||||
becker@local.zellstoff-stendal.de;U02072
|
||||
geisler@local.zellstoff-stendal.de;U01673
|
||||
woelkerling@local.zellstoff-stendal.de;U00095
|
||||
sstein@local.zellstoff-stendal.de;U00433
|
||||
stein@local.zellstoff-stendal.de;U00434
|
||||
nseide@local.zellstoff-stendal.de;U00522
|
||||
geske@local.zellstoff-stendal.de;U01664
|
||||
winkler@local.zellstoff-stendal.de;U00113
|
||||
stegemann@local.zellstoff-stendal.de;U00435
|
||||
giese@local.zellstoff-stendal.de;U01656
|
||||
kniesche@local.zellstoff-stendal.de;U02539
|
||||
schueler@local.zellstoff-stendal.de;U00581
|
||||
voss@local.zellstoff-stendal.de;U00211
|
||||
dahlmann@local.zellstoff-stendal.de;U01893
|
||||
gaubatz@local.zellstoff-stendal.de;U01680
|
||||
vinzelberg@local.zellstoff-stendal.de;U00229
|
||||
simon@local.zellstoff-stendal.de;U00484
|
||||
rudolf@local.zellstoff-stendal.de;U00675
|
||||
haupt@local.zellstoff-stendal.de;U02750
|
||||
Z-Warte3@local.zellstoff-stendal.de;U00040
|
||||
Kersten@local.zellstoff-stendal.de;U02759
|
||||
iguenther@local.zellstoff-stendal.de;U02962
|
||||
mmueller@local.zellstoff-stendal.de;U02961
|
||||
Z-Warte2@local.zellstoff-stendal.de;U00041
|
||||
zimmer@local.zellstoff-stendal.de;U00060
|
||||
Warnecke@local.zellstoff-stendal.de;U02650
|
||||
Wagner@local.zellstoff-stendal.de;U03117
|
||||
Gebser@local.zellstoff-stendal.de;U02744
|
||||
Garbe@local.zellstoff-stendal.de;U02702
|
||||
Borchert@local.zellstoff-stendal.de;U02571
|
||||
Vorwerk@local.zellstoff-stendal.de;U03013
|
||||
fincke@local.zellstoff-stendal.de;U02499
|
||||
Z-Warte6@local.zellstoff-stendal.de;U00043
|
||||
wieczorek@local.zellstoff-stendal.de;U00128
|
||||
alehmann@local.zellstoff-stendal.de;U01185
|
||||
Kollasch@local.zellstoff-stendal.de;U02646
|
||||
Prigge@local.zellstoff-stendal.de;U02636
|
||||
Richter@local.zellstoff-stendal.de;U02645
|
||||
Penning@local.zellstoff-stendal.de;U02736
|
||||
Nestmann@local.zellstoff-stendal.de;U02660
|
||||
tkrause@local.zellstoff-stendal.de;U02805
|
||||
mmeyer@local.zellstoff-stendal.de;U02661
|
||||
Schuette@local.zellstoff-stendal.de;U00536
|
||||
duks@local.zellstoff-stendal.de;U01833
|
||||
tschmidt@local.zellstoff-stendal.de;U02644
|
||||
pecker@local.zellstoff-stendal.de;U00850
|
||||
nherrmann@local.zellstoff-stendal.de;U01512
|
||||
gittler@local.zellstoff-stendal.de;U03626
|
||||
br_thurau@local.zellstoff-stendal.de;U04124
|
||||
gierth@local.zellstoff-stendal.de;U01657
|
||||
haker@local.zellstoff-stendal.de;U01572
|
||||
clensmann@local.zellstoff-stendal.de;U01920
|
||||
neunkirch@local.zellstoff-stendal.de;U00911
|
||||
jurga@local.zellstoff-stendal.de;U02520
|
||||
vogel@local.zellstoff-stendal.de;U00226
|
||||
zier@local.zellstoff-stendal.de;U00063
|
||||
liedtke@local.zellstoff-stendal.de;U01163
|
||||
smolnik@local.zellstoff-stendal.de;U00469
|
||||
bmaasz@local.zellstoff-stendal.de;U01116
|
||||
kvinzelberg@local.zellstoff-stendal.de;U03720
|
||||
kuehn@local.zellstoff-stendal.de;U01251
|
||||
dwedel@local.zellstoff-stendal.de;U00161
|
||||
ziese@local.zellstoff-stendal.de;U03220
|
||||
jknepper@local.zellstoff-stendal.de;U01324
|
||||
buest@local.zellstoff-stendal.de;U01960
|
||||
kaczirek@local.zellstoff-stendal.de;U01378
|
||||
beindorf@local.zellstoff-stendal.de;U02526
|
||||
tlemke@local.zellstoff-stendal.de;U01180
|
||||
lehmann@local.zellstoff-stendal.de;U01184
|
||||
maerzke@local.zellstoff-stendal.de;U01064
|
||||
weinholz@local.zellstoff-stendal.de;U00149
|
||||
Z-Warte4@local.zellstoff-stendal.de;U00039
|
||||
pietrzyk@local.zellstoff-stendal.de;U00822
|
||||
budde@local.zellstoff-stendal.de;U01973
|
||||
soika@local.zellstoff-stendal.de;U00466
|
||||
list@local.zellstoff-stendal.de;U01153
|
||||
Kozik@local.zellstoff-stendal.de;U02657
|
||||
Przystawik@local.zellstoff-stendal.de;U02622
|
||||
Wasem@local.zellstoff-stendal.de;U02596
|
||||
Wille@local.zellstoff-stendal.de;U02765
|
||||
clist@local.zellstoff-stendal.de;U02563
|
||||
Wiegrefe@local.zellstoff-stendal.de;U02742
|
||||
schwaneberg@local.zellstoff-stendal.de;U00534
|
||||
bleicherei@local.zellstoff-stendal.de;U00048
|
||||
Sandmann@local.zellstoff-stendal.de;U02593
|
||||
Kiesch@local.zellstoff-stendal.de;U02678
|
||||
ih-et@local.zellstoff-stendal.de;U01440
|
||||
suhr@local.zellstoff-stendal.de;U00380
|
||||
buhe@local.zellstoff-stendal.de;U01971
|
||||
kopp@local.zellstoff-stendal.de;U01294
|
||||
tix@local.zellstoff-stendal.de;U00287
|
||||
hagenstein@local.zellstoff-stendal.de;U01576
|
||||
schulenburg@local.zellstoff-stendal.de;U00583
|
||||
rschulenburg@local.zellstoff-stendal.de;U00582
|
||||
holzplatz@local.zellstoff-stendal.de;U01474
|
||||
harmgarth@local.zellstoff-stendal.de;U01554
|
||||
michaelis@local.zellstoff-stendal.de;U01005
|
||||
sreinecke@local.zellstoff-stendal.de;U00728
|
||||
peschel@local.zellstoff-stendal.de;U00841
|
||||
istarke@local.zellstoff-stendal.de;U00440
|
||||
gorges@local.zellstoff-stendal.de;U01637
|
||||
thuernagel@local.zellstoff-stendal.de;U00293
|
||||
pleske@local.zellstoff-stendal.de;U00809
|
||||
seebert@local.zellstoff-stendal.de;U00527
|
||||
baero@local.zellstoff-stendal.de;U02095
|
||||
engel@local.zellstoff-stendal.de;U03590
|
||||
wittkopp@local.zellstoff-stendal.de;U00104
|
||||
naepfli@local.zellstoff-stendal.de;U00933
|
||||
krause@local.zellstoff-stendal.de;U01274
|
||||
giesow@local.zellstoff-stendal.de;U01654
|
||||
trollius@local.zellstoff-stendal.de;U00266
|
||||
meier@local.zellstoff-stendal.de;U01026
|
||||
ebner@local.zellstoff-stendal.de;U01824
|
||||
mauritz@local.zellstoff-stendal.de;U01053
|
||||
elrepho@local.zellstoff-stendal.de;U03812
|
||||
cmartin@local.zellstoff-stendal.de;U01070
|
||||
liebsch@local.zellstoff-stendal.de;U01165
|
||||
dschulz@local.zellstoff-stendal.de;U00545
|
||||
ziesmann@local.zellstoff-stendal.de;U00061
|
||||
kleiber@local.zellstoff-stendal.de;U01333
|
||||
boecker@local.zellstoff-stendal.de;U03221
|
||||
lanz@local.zellstoff-stendal.de;U01213
|
||||
kunst@local.zellstoff-stendal.de;U01249
|
||||
burzan@local.zellstoff-stendal.de;U01963
|
||||
mkraatz@local.zellstoff-stendal.de;U02492
|
||||
gieseler@local.zellstoff-stendal.de;U01655
|
||||
teweleit@local.zellstoff-stendal.de;U00308
|
||||
loebnitz@local.zellstoff-stendal.de;U01150
|
||||
koeppen@local.zellstoff-stendal.de;U01293
|
||||
bernhardt@local.zellstoff-stendal.de;U01639
|
||||
Goeldner@local.zellstoff-stendal.de;U03002
|
||||
meetingMPS@local.zellstoff-stendal.de;U03745
|
||||
hegerding@local.zellstoff-stendal.de;U01535
|
||||
koppensteiner@local.zellstoff-stendal.de;U01292
|
||||
meltzer@local.zellstoff-stendal.de;U01022
|
||||
reymann@local.zellstoff-stendal.de;U00717
|
||||
jsimon@local.zellstoff-stendal.de;U00483
|
||||
dieckmann@local.zellstoff-stendal.de;U01865
|
||||
held@local.zellstoff-stendal.de;U01524
|
||||
elies@local.zellstoff-stendal.de;U01797
|
||||
mayer@local.zellstoff-stendal.de;U03934
|
||||
jkoehler@local.zellstoff-stendal.de;U01305
|
||||
poetzsch@local.zellstoff-stendal.de;U00788
|
||||
itzenplitz@local.zellstoff-stendal.de;U00214
|
||||
schoppmeyer@local.zellstoff-stendal.de;U00595
|
||||
aschoppmeyer@local.zellstoff-stendal.de;U00594
|
||||
dornheim@local.zellstoff-stendal.de;U01846
|
||||
seidel@local.zellstoff-stendal.de;U00515
|
||||
gase@local.zellstoff-stendal.de;U01682
|
||||
bentlage@local.zellstoff-stendal.de;U02054
|
||||
frevert@local.zellstoff-stendal.de;U03225
|
||||
rkolditz@local.zellstoff-stendal.de;U01303
|
||||
petersen@local.zellstoff-stendal.de;U00839
|
||||
tuchen@local.zellstoff-stendal.de;U03947
|
||||
thoma@local.zellstoff-stendal.de;U00302
|
||||
falky@local.zellstoff-stendal.de;U01770
|
||||
donk@local.zellstoff-stendal.de;U01849
|
||||
lieske@local.zellstoff-stendal.de;U01162
|
||||
wichmann@local.zellstoff-stendal.de;U00130
|
||||
adilk@local.zellstoff-stendal.de;U01858
|
||||
dsimon@local.zellstoff-stendal.de;U00482
|
||||
badakh@local.zellstoff-stendal.de;U02534
|
||||
zenker@local.zellstoff-stendal.de;U00072
|
||||
wegener@local.zellstoff-stendal.de;U00159
|
||||
seiler@local.zellstoff-stendal.de;U00512
|
||||
quaas@local.zellstoff-stendal.de;U00756
|
||||
engelhardt@local.zellstoff-stendal.de;U02343
|
||||
endres@local.zellstoff-stendal.de;U02346
|
||||
stoehr@local.zellstoff-stendal.de;U00409
|
||||
siegmanski@local.zellstoff-stendal.de;U00487
|
||||
meyer@local.zellstoff-stendal.de;U01007
|
||||
wedding@local.zellstoff-stendal.de;U00162
|
||||
geissler@local.zellstoff-stendal.de;U01671
|
||||
wedel@local.zellstoff-stendal.de;U00160
|
||||
wridder@local.zellstoff-stendal.de;U00712
|
||||
stoecker@local.zellstoff-stendal.de;U00411
|
||||
ludwig@local.zellstoff-stendal.de;U01133
|
||||
kintzel@local.zellstoff-stendal.de;U01341
|
||||
steucke@local.zellstoff-stendal.de;U00310
|
||||
dobschall@local.zellstoff-stendal.de;U01855
|
||||
stephan@local.zellstoff-stendal.de;U00422
|
||||
demski@local.zellstoff-stendal.de;U01871
|
||||
mkoenig@local.zellstoff-stendal.de;U03767
|
||||
ratzlow@local.zellstoff-stendal.de;U00742
|
||||
teucke@local.zellstoff-stendal.de;U00309
|
||||
neumann@local.zellstoff-stendal.de;U00919
|
||||
babel@local.zellstoff-stendal.de;U02108
|
||||
starke@local.zellstoff-stendal.de;U00439
|
||||
listemann@local.zellstoff-stendal.de;U01154
|
||||
borstell@local.zellstoff-stendal.de;U02002
|
||||
bpecker@local.zellstoff-stendal.de;U00849
|
||||
naraschkewitz@local.zellstoff-stendal.de;U04002
|
||||
grewe@local.zellstoff-stendal.de;U03977
|
||||
sergi@local.zellstoff-stendal.de;U04009
|
||||
mohme@local.zellstoff-stendal.de;U00986
|
||||
schreiber@local.zellstoff-stendal.de;U03543
|
||||
schrader@local.zellstoff-stendal.de;U00593
|
||||
hack@local.zellstoff-stendal.de;U03867
|
||||
pfeifhofer@local.zellstoff-stendal.de;U04001
|
||||
Ahrends@local.zellstoff-stendal.de;U02599
|
||||
Alpert@local.zellstoff-stendal.de;U02731
|
||||
amueller@local.zellstoff-stendal.de;U02928
|
||||
Arendt@local.zellstoff-stendal.de;U02734
|
||||
arichter@local.zellstoff-stendal.de;U02696
|
||||
aschulze@local.zellstoff-stendal.de;U02778
|
||||
Assmann@local.zellstoff-stendal.de;U02775
|
||||
astephan@local.zellstoff-stendal.de;U02803
|
||||
ateege@local.zellstoff-stendal.de;U02649
|
||||
awoelkert@local.zellstoff-stendal.de;U03606
|
||||
Baldauf@local.zellstoff-stendal.de;U02592
|
||||
Balecke@local.zellstoff-stendal.de;U02653
|
||||
Banisch@local.zellstoff-stendal.de;U02613
|
||||
Bartz@local.zellstoff-stendal.de;U02760
|
||||
beninde@local.zellstoff-stendal.de;U03937
|
||||
Bensch@local.zellstoff-stendal.de;U02813
|
||||
Bergmann@local.zellstoff-stendal.de;U02681
|
||||
Bertkau@local.zellstoff-stendal.de;U02637
|
||||
Betker@local.zellstoff-stendal.de;U02993
|
||||
Betker@local.zellstoff-stendal.de;U02993
|
||||
biermann@local.zellstoff-stendal.de;U03655
|
||||
Bliesch@local.zellstoff-stendal.de;U02719
|
||||
Blume@local.zellstoff-stendal.de;U02836
|
||||
bmueller@local.zellstoff-stendal.de;U02874
|
||||
Boehmer@local.zellstoff-stendal.de;U02979
|
||||
Boesche@local.zellstoff-stendal.de;U02910
|
||||
Bohling@local.zellstoff-stendal.de;U02826
|
||||
br_gaubatz@local.zellstoff-stendal.de;U03525
|
||||
brand@local.zellstoff-stendal.de;U03973
|
||||
brauns@local.zellstoff-stendal.de;U01991
|
||||
Brueckner@local.zellstoff-stendal.de;U02909
|
||||
Brueggemann@local.zellstoff-stendal.de;U03125
|
||||
bruehahn@local.zellstoff-stendal.de;U03599
|
||||
buczko@local.zellstoff-stendal.de;U04011
|
||||
Burghardt@local.zellstoff-stendal.de;U02561
|
||||
dembski@local.zellstoff-stendal.de;U03737
|
||||
Deutsch@local.zellstoff-stendal.de;U02685
|
||||
dewitz@local.zellstoff-stendal.de;U04016
|
||||
Dilk@local.zellstoff-stendal.de;U02726
|
||||
Dittmann@local.zellstoff-stendal.de;U02732
|
||||
dlawrenz@local.zellstoff-stendal.de;U02868
|
||||
dmaasz@local.zellstoff-stendal.de;U02878
|
||||
Drescher@local.zellstoff-stendal.de;U02806
|
||||
drichter@local.zellstoff-stendal.de;U03574
|
||||
dsieber@local.zellstoff-stendal.de;U02627
|
||||
Duemling@local.zellstoff-stendal.de;U02881
|
||||
Duewert@local.zellstoff-stendal.de;U03124
|
||||
ehanitzsch@local.zellstoff-stendal.de;U02800
|
||||
Ehrendorf@local.zellstoff-stendal.de;U02856
|
||||
ekrueger@local.zellstoff-stendal.de;U03619
|
||||
elsen@local.zellstoff-stendal.de;U03976
|
||||
enschmidt@local.zellstoff-stendal.de;U02843
|
||||
eschmidt@local.zellstoff-stendal.de;U02692
|
||||
eue@local.zellstoff-stendal.de;U03773
|
||||
Fahrenholz@local.zellstoff-stendal.de;U02761
|
||||
Falk@local.zellstoff-stendal.de;U02831
|
||||
Falkenau@local.zellstoff-stendal.de;U02713
|
||||
fbuenning@local.zellstoff-stendal.de;U02710
|
||||
ffiedler@local.zellstoff-stendal.de;U03181
|
||||
fgrube@local.zellstoff-stendal.de;U02723
|
||||
fguenther@local.zellstoff-stendal.de;U03162
|
||||
Fiedler@local.zellstoff-stendal.de;U02603
|
||||
fmueller@local.zellstoff-stendal.de;U02950
|
||||
Frankenberg@local.zellstoff-stendal.de;U02808
|
||||
Freese@local.zellstoff-stendal.de;U02862
|
||||
Freist@local.zellstoff-stendal.de;U02791
|
||||
Fricke@local.zellstoff-stendal.de;U02679
|
||||
fschubert@local.zellstoff-stendal.de;U02746
|
||||
fseidel@local.zellstoff-stendal.de;U03544
|
||||
fstephan@local.zellstoff-stendal.de;U02855
|
||||
Gassel@local.zellstoff-stendal.de;U02749
|
||||
Gauch@local.zellstoff-stendal.de;U02615
|
||||
gebl@local.zellstoff-stendal.de;U03180
|
||||
gehn@local.zellstoff-stendal.de;U03697
|
||||
Genth@local.zellstoff-stendal.de;U02585
|
||||
Giesbrecht@local.zellstoff-stendal.de;U02716
|
||||
Glaser@local.zellstoff-stendal.de;U02575
|
||||
Gnade@local.zellstoff-stendal.de;U02794
|
||||
Goldau@local.zellstoff-stendal.de;U03082
|
||||
Goreczka@local.zellstoff-stendal.de;U02674
|
||||
Goroncy@local.zellstoff-stendal.de;U02781
|
||||
Gottfried@local.zellstoff-stendal.de;U02811
|
||||
Graf@local.zellstoff-stendal.de;U02815
|
||||
Greisner@local.zellstoff-stendal.de;U02819
|
||||
groth@local.zellstoff-stendal.de;U03987
|
||||
Grubert@local.zellstoff-stendal.de;U02620
|
||||
Gummert@local.zellstoff-stendal.de;U02735
|
||||
Gutsche@local.zellstoff-stendal.de;U02700
|
||||
Hausner@local.zellstoff-stendal.de;U02777
|
||||
Heinemann@local.zellstoff-stendal.de;U02828
|
||||
Heise@local.zellstoff-stendal.de;U02847
|
||||
hellmuth@local.zellstoff-stendal.de;U03653
|
||||
heuser@local.zellstoff-stendal.de;U03195
|
||||
Hevecker@local.zellstoff-stendal.de;U02577
|
||||
Hild@local.zellstoff-stendal.de;U02864
|
||||
hjvoigt@local.zellstoff-stendal.de;U02632
|
||||
Hoelscher@local.zellstoff-stendal.de;U02964
|
||||
Hoernke@local.zellstoff-stendal.de;U02885
|
||||
holle@local.zellstoff-stendal.de;U02801
|
||||
hopp@local.zellstoff-stendal.de;U03833
|
||||
Hoppe@local.zellstoff-stendal.de;U03115
|
||||
horn@local.zellstoff-stendal.de;U03800
|
||||
Hubert@local.zellstoff-stendal.de;U02590
|
||||
Huebenthal@local.zellstoff-stendal.de;U02918
|
||||
Huebner@local.zellstoff-stendal.de;U03016
|
||||
Huth@local.zellstoff-stendal.de;U02675
|
||||
Ihleburg@local.zellstoff-stendal.de;U02771
|
||||
imueller@local.zellstoff-stendal.de;U02901
|
||||
Jaehn@local.zellstoff-stendal.de;U02560
|
||||
Jakobs@local.zellstoff-stendal.de;U02607
|
||||
Jatzkowski@local.zellstoff-stendal.de;U03936
|
||||
jav_boehmer@local.zellstoff-stendal.de;U03754
|
||||
jav_schoenfisch@local.zellstoff-stendal.de;U03753
|
||||
Jenrich@local.zellstoff-stendal.de;U02677
|
||||
mschroeder@local.zellstoff-stendal.de;U02960
|
||||
jrudolph@local.zellstoff-stendal.de;U03489
|
||||
Junker@local.zellstoff-stendal.de;U02727
|
||||
jwagner@local.zellstoff-stendal.de;U03167
|
||||
Kalda@local.zellstoff-stendal.de;U02769
|
||||
Kalkstein@local.zellstoff-stendal.de;U02729
|
||||
Kautz@local.zellstoff-stendal.de;U02795
|
||||
Kayatz@local.zellstoff-stendal.de;U02725
|
||||
Kipka@local.zellstoff-stendal.de;U02850
|
||||
Kirschke@local.zellstoff-stendal.de;U02785
|
||||
kkirschke@local.zellstoff-stendal.de;U02739
|
||||
kleff@local.zellstoff-stendal.de;U02790
|
||||
kleinat@local.zellstoff-stendal.de;U03597
|
||||
klug@local.zellstoff-stendal.de;U03657
|
||||
Koenig@local.zellstoff-stendal.de;U02975
|
||||
kolrep@local.zellstoff-stendal.de;U03774
|
||||
Konrad@local.zellstoff-stendal.de;U02740
|
||||
Kosmehl@local.zellstoff-stendal.de;U02559
|
||||
Krakau@local.zellstoff-stendal.de;U02810
|
||||
Kruck@local.zellstoff-stendal.de;U02853
|
||||
Krueger@local.zellstoff-stendal.de;U03089
|
||||
Kuessner@local.zellstoff-stendal.de;U03038
|
||||
kuhnert@local.zellstoff-stendal.de;U03578
|
||||
Kuhrts@local.zellstoff-stendal.de;U02841
|
||||
Lahrmann@local.zellstoff-stendal.de;U02565
|
||||
Lange@local.zellstoff-stendal.de;U02601
|
||||
Langnese@local.zellstoff-stendal.de;U02799
|
||||
Lawrenz@local.zellstoff-stendal.de;U02569
|
||||
lbethge@local.zellstoff-stendal.de;U02817
|
||||
Lebsack@local.zellstoff-stendal.de;U02708
|
||||
Leff@local.zellstoff-stendal.de;U02641
|
||||
Liedmann@local.zellstoff-stendal.de;U02722
|
||||
lingner@local.zellstoff-stendal.de;U03680
|
||||
lkrueger@local.zellstoff-stendal.de;U03152
|
||||
Lukowsky@local.zellstoff-stendal.de;U02728
|
||||
Lura@local.zellstoff-stendal.de;U02721
|
||||
mackus@local.zellstoff-stendal.de;U01107
|
||||
maier@local.zellstoff-stendal.de;U01100
|
||||
Mansfeld@local.zellstoff-stendal.de;U02753
|
||||
Masurek@local.zellstoff-stendal.de;U02695
|
||||
Matt@local.zellstoff-stendal.de;U02610
|
||||
Maurer@local.zellstoff-stendal.de;U02643
|
||||
Mehl@local.zellstoff-stendal.de;U02709
|
||||
meinschien@local.zellstoff-stendal.de;U03764
|
||||
Melchert@local.zellstoff-stendal.de;U02758
|
||||
Mewes@local.zellstoff-stendal.de;U02827
|
||||
mglimm@local.zellstoff-stendal.de;U02625
|
||||
Michael@local.zellstoff-stendal.de;U02664
|
||||
mjaeger@local.zellstoff-stendal.de;U03169
|
||||
mkoch@local.zellstoff-stendal.de;U02699
|
||||
mneunkirch@local.zellstoff-stendal.de;U02604
|
||||
Mnich@local.zellstoff-stendal.de;U02838
|
||||
mpoetschke@local.zellstoff-stendal.de;U03163
|
||||
mschmidt@local.zellstoff-stendal.de;U02852
|
||||
mschulz@local.zellstoff-stendal.de;U02568
|
||||
Muessig@local.zellstoff-stendal.de;U03000
|
||||
Nauke@local.zellstoff-stendal.de;U02594
|
||||
nfischer@local.zellstoff-stendal.de;U02628
|
||||
Niehus@local.zellstoff-stendal.de;U02701
|
||||
Ode@local.zellstoff-stendal.de;U02580
|
||||
Oneszeit@local.zellstoff-stendal.de;U02992
|
||||
Osinski@local.zellstoff-stendal.de;U02691
|
||||
Oswald@local.zellstoff-stendal.de;U02683
|
||||
Otte@local.zellstoff-stendal.de;U02647
|
||||
br_zimmer@local.zellstoff-stendal.de;U04125
|
||||
br_wieczorek@local.zellstoff-stendal.de;U04126
|
||||
br_praast@local.zellstoff-stendal.de;U04127
|
||||
br_kollasch@local.zellstoff-stendal.de;U04128
|
||||
Paske@local.zellstoff-stendal.de;U02786
|
||||
pebner@local.zellstoff-stendal.de;U02574
|
||||
phaupt@local.zellstoff-stendal.de;U02600
|
||||
pieck@local.zellstoff-stendal.de;U03598
|
||||
Plasa@local.zellstoff-stendal.de;U02762
|
||||
pleger@local.zellstoff-stendal.de;U03652
|
||||
plemke@local.zellstoff-stendal.de;U02566
|
||||
Podymski@local.zellstoff-stendal.de;U02609
|
||||
Poetschke@local.zellstoff-stendal.de;U02913
|
||||
jav_buenning@local.zellstoff-stendal.de;U04129
|
||||
Post@local.zellstoff-stendal.de;U02714
|
||||
pschrader@local.zellstoff-stendal.de;U02662
|
||||
rbuenning@local.zellstoff-stendal.de;U02963
|
||||
rehbein@local.zellstoff-stendal.de;U03549
|
||||
Reichert@local.zellstoff-stendal.de;U02705
|
||||
reinfarth@local.zellstoff-stendal.de;U03628
|
||||
rente@local.zellstoff-stendal.de;U03198
|
||||
Reschke@local.zellstoff-stendal.de;U02639
|
||||
rgiffei@local.zellstoff-stendal.de;U02840
|
||||
Rix@local.zellstoff-stendal.de;U02638
|
||||
rmaier@local.zellstoff-stendal.de;U02812
|
||||
Roediger@local.zellstoff-stendal.de;U03087
|
||||
roehl@local.zellstoff-stendal.de;U03930
|
||||
Roeseler@local.zellstoff-stendal.de;U02629
|
||||
Rothkirch@local.zellstoff-stendal.de;U02796
|
||||
rschulze@local.zellstoff-stendal.de;U02656
|
||||
rseide@local.zellstoff-stendal.de;U02618
|
||||
Rudolph@local.zellstoff-stendal.de;U02694
|
||||
Runge@local.zellstoff-stendal.de;U02846
|
||||
rwagner@local.zellstoff-stendal.de;U03761
|
||||
rzyski@local.zellstoff-stendal.de;U03553
|
||||
Sagan@local.zellstoff-stendal.de;U02747
|
||||
sbernhardt@local.zellstoff-stendal.de;U02730
|
||||
Schaefer@local.zellstoff-stendal.de;U03019
|
||||
schaeufler@local.zellstoff-stendal.de;U00643
|
||||
Schammler@local.zellstoff-stendal.de;U02581
|
||||
Schaper@local.zellstoff-stendal.de;U02782
|
||||
schernickau@local.zellstoff-stendal.de;U03595
|
||||
Schieske@local.zellstoff-stendal.de;U02784
|
||||
Schliefke@local.zellstoff-stendal.de;U02578
|
||||
Schliemann@local.zellstoff-stendal.de;U02698
|
||||
Schmaler@local.zellstoff-stendal.de;U02797
|
||||
Schmidt@local.zellstoff-stendal.de;U02851
|
||||
Schoenfisch@local.zellstoff-stendal.de;U02972
|
||||
Schoenrock@local.zellstoff-stendal.de;U02907
|
||||
Scholze@local.zellstoff-stendal.de;U02598
|
||||
Schubert@local.zellstoff-stendal.de;U02863
|
||||
Schuetze@local.zellstoff-stendal.de;U03094
|
||||
schuhmacher@local.zellstoff-stendal.de;U03610
|
||||
Schultz@local.zellstoff-stendal.de;U02570
|
||||
Schumann@local.zellstoff-stendal.de;U02573
|
||||
Segelitz@local.zellstoff-stendal.de;U02865
|
||||
skoch@local.zellstoff-stendal.de;U02932
|
||||
skrause@local.zellstoff-stendal.de;U02659
|
||||
skrueger@local.zellstoff-stendal.de;U03596
|
||||
Spinger@local.zellstoff-stendal.de;U02690
|
||||
spittel@local.zellstoff-stendal.de;U03182
|
||||
Staerke@local.zellstoff-stendal.de;U03107
|
||||
staps@local.zellstoff-stendal.de;U03694
|
||||
Stecklies@local.zellstoff-stendal.de;U02793
|
||||
Steffens@local.zellstoff-stendal.de;U02891
|
||||
Stockmann@local.zellstoff-stendal.de;U02583
|
||||
suske@local.zellstoff-stendal.de;U03584
|
||||
tdemski@local.zellstoff-stendal.de;U02798
|
||||
Teege@local.zellstoff-stendal.de;U02579
|
||||
Tessmann@local.zellstoff-stendal.de;U02623
|
||||
tfricke@local.zellstoff-stendal.de;U02665
|
||||
tgerhardt@local.zellstoff-stendal.de;U02671
|
||||
uschmidt@local.zellstoff-stendal.de;U03573
|
||||
vbrandt@local.zellstoff-stendal.de;U02669
|
||||
Vogler@local.zellstoff-stendal.de;U02687
|
||||
Wegner@local.zellstoff-stendal.de;U02651
|
||||
Weiher@local.zellstoff-stendal.de;U02619
|
||||
Weikert@local.zellstoff-stendal.de;U02895
|
||||
Weise@local.zellstoff-stendal.de;U02633
|
||||
Wendt@local.zellstoff-stendal.de;U02612
|
||||
Wiehe@local.zellstoff-stendal.de;U02704
|
||||
Wieprecht@local.zellstoff-stendal.de;U02754
|
||||
Wilberg@local.zellstoff-stendal.de;U02693
|
||||
Wilke@local.zellstoff-stendal.de;U02564
|
||||
Witczak@local.zellstoff-stendal.de;U02567
|
||||
Witter@local.zellstoff-stendal.de;U02605
|
||||
Wittkowski@local.zellstoff-stendal.de;U02684
|
||||
Woehlert@local.zellstoff-stendal.de;U03069
|
||||
Zielke@local.zellstoff-stendal.de;U02718
|
||||
Ziemann@local.zellstoff-stendal.de;U02770
|
||||
Baumann@local.zellstoff-stendal.de;U02084
|
||||
alseidel@local.zellstoff-stendal.de;U02617
|
||||
orzelek@local.zellstoff-stendal.de;U04049
|
||||
ahrens@local.zellstoff-stendal.de;U04134
|
||||
bauermeister@local.zellstoff-stendal.de;U04135
|
||||
plank@local.zellstoff-stendal.de;U04136
|
||||
cduewert@local.zellstoff-stendal.de;U04137
|
||||
loebe@local.zellstoff-stendal.de;U04138
|
||||
stumpe@local.zellstoff-stendal.de;U04139
|
||||
arndt@local.zellstoff-stendal.de;U04140
|
||||
huwa@local.zellstoff-stendal.de;U04141
|
||||
traedisch@local.zellstoff-stendal.de;U04142
|
||||
|
@@ -0,0 +1,2 @@
|
||||
Nutzername_Alt;Nutzername_Neu
|
||||
matla@local.zellstoff-stendal.de;U01062
|
||||
|
@@ -0,0 +1,766 @@
|
||||
Nutzername_Alt;Nutzername_Alt;Nutzername_Neu
|
||||
matla;matla@local.zellstoff-stendal.de;U01062
|
||||
lemke;lemke@local.zellstoff-stendal.de;U01179
|
||||
bauer;bauer@local.zellstoff-stendal.de;U02086
|
||||
braune;braune@local.zellstoff-stendal.de;U01992
|
||||
hennig;hennig@local.zellstoff-stendal.de;U01519
|
||||
israel;israel@local.zellstoff-stendal.de;U01421
|
||||
Freude;Freude@local.zellstoff-stendal.de;U01711
|
||||
schulz;schulz@local.zellstoff-stendal.de;U00546
|
||||
waechter;waechter@local.zellstoff-stendal.de;U00203
|
||||
kramm;kramm@local.zellstoff-stendal.de;U01278
|
||||
raedisch;raedisch@local.zellstoff-stendal.de;U00749
|
||||
kueche;kueche@local.zellstoff-stendal.de;U01257
|
||||
stoll;stoll@local.zellstoff-stendal.de;U00406
|
||||
Bahn;Bahn@local.zellstoff-stendal.de;U02101
|
||||
ortner;ortner@local.zellstoff-stendal.de;U00879
|
||||
schaarschmidt;schaarschmidt@local.zellstoff-stendal.de;U00644
|
||||
blum;blum@local.zellstoff-stendal.de;U02019
|
||||
goerges;goerges@local.zellstoff-stendal.de;U01636
|
||||
krogoll;krogoll@local.zellstoff-stendal.de;U01261
|
||||
br_goers;br_goers@local.zellstoff-stendal.de;U01635
|
||||
buchholz;buchholz@local.zellstoff-stendal.de;U01975
|
||||
empfang;empfang@local.zellstoff-stendal.de;U01794
|
||||
kurth;kurth@local.zellstoff-stendal.de;U01248
|
||||
tribologie;tribologie@local.zellstoff-stendal.de;U00272
|
||||
PraktikantEK;PraktikantEK@local.zellstoff-stendal.de;U01810
|
||||
jlempke;jlempke@local.zellstoff-stendal.de;U01178
|
||||
jordan;jordan@local.zellstoff-stendal.de;U01384
|
||||
buenning;buenning@local.zellstoff-stendal.de;U01970
|
||||
labor1;labor1@local.zellstoff-stendal.de;U00005
|
||||
trojahn;trojahn@local.zellstoff-stendal.de;U00267
|
||||
labor2;labor2@local.zellstoff-stendal.de;U00027
|
||||
labor3;labor3@local.zellstoff-stendal.de;U00004
|
||||
inventur;inventur@local.zellstoff-stendal.de;U01425
|
||||
hensel;hensel@local.zellstoff-stendal.de;U01518
|
||||
kfzwerkstatt;kfzwerkstatt@local.zellstoff-stendal.de;U00139
|
||||
hunger;hunger@local.zellstoff-stendal.de;U01446
|
||||
stellwerk;stellwerk@local.zellstoff-stendal.de;U00425
|
||||
tribologie2;tribologie2@local.zellstoff-stendal.de;U00271
|
||||
PWC2;PWC2@local.zellstoff-stendal.de;U03688
|
||||
ciesielski;ciesielski@local.zellstoff-stendal.de;U01923
|
||||
grube;grube@local.zellstoff-stendal.de;U01611
|
||||
hofmann;hofmann@local.zellstoff-stendal.de;U01490
|
||||
latanowicz;latanowicz@local.zellstoff-stendal.de;U02482
|
||||
Barcks;Barcks@local.zellstoff-stendal.de;U03110
|
||||
Brehmer;Brehmer@local.zellstoff-stendal.de;U02658
|
||||
Mattauch;Mattauch@local.zellstoff-stendal.de;U02670
|
||||
Zander;Zander@local.zellstoff-stendal.de;U02686
|
||||
Boehl;Boehl@local.zellstoff-stendal.de;U03097
|
||||
Melzer;Melzer@local.zellstoff-stendal.de;U02634
|
||||
Luecke;Luecke@local.zellstoff-stendal.de;U03086
|
||||
Schwarzlose;Schwarzlose@local.zellstoff-stendal.de;U02860
|
||||
Hoehne;Hoehne@local.zellstoff-stendal.de;U03061
|
||||
Uchtenhagen;Uchtenhagen@local.zellstoff-stendal.de;U02654
|
||||
Nagel;Nagel@local.zellstoff-stendal.de;U02833
|
||||
Ilgner;Ilgner@local.zellstoff-stendal.de;U02648
|
||||
Netzel;Netzel@local.zellstoff-stendal.de;U02720
|
||||
Woelkert;Woelkert@local.zellstoff-stendal.de;U03056
|
||||
Pietsch;Pietsch@local.zellstoff-stendal.de;U02672
|
||||
Wolter;Wolter@local.zellstoff-stendal.de;U02814
|
||||
Hoja;Hoja@local.zellstoff-stendal.de;U02832
|
||||
Hoffmann;Hoffmann@local.zellstoff-stendal.de;U02768
|
||||
Ringleb;Ringleb@local.zellstoff-stendal.de;U02789
|
||||
Kannenberg;Kannenberg@local.zellstoff-stendal.de;U02741
|
||||
ulemke;ulemke@local.zellstoff-stendal.de;U02792
|
||||
afiedler;afiedler@local.zellstoff-stendal.de;U02807
|
||||
hhaker;hhaker@local.zellstoff-stendal.de;U02773
|
||||
pheise;pheise@local.zellstoff-stendal.de;U02809
|
||||
rlemke;rlemke@local.zellstoff-stendal.de;U03216
|
||||
kudling;kudling@local.zellstoff-stendal.de;U03236
|
||||
fenn;fenn@local.zellstoff-stendal.de;U03545
|
||||
freundt;freundt@local.zellstoff-stendal.de;U03572
|
||||
finke;finke@local.zellstoff-stendal.de;U03583
|
||||
pietr;pietr@local.zellstoff-stendal.de;U03585
|
||||
labor4;labor4@local.zellstoff-stendal.de;U03667
|
||||
thiele;thiele@local.zellstoff-stendal.de;U03683
|
||||
bark;bark@local.zellstoff-stendal.de;U03783
|
||||
mbinder;mbinder@local.zellstoff-stendal.de;U03793
|
||||
bechtle;bechtle@local.zellstoff-stendal.de;U02075
|
||||
adminSDI;adminSDI@local.zellstoff-stendal.de;U03577
|
||||
galsync;galsync@local.zellstoff-stendal.de;U01019
|
||||
info;info@local.zellstoff-stendal.de;U00232
|
||||
oertel;oertel@local.zellstoff-stendal.de;U00897
|
||||
cooper;cooper@local.zellstoff-stendal.de;U01907
|
||||
zpredv;zpredv@local.zellstoff-stendal.de;U01816
|
||||
noffke;noffke@local.zellstoff-stendal.de;U00904
|
||||
reinecke;reinecke@local.zellstoff-stendal.de;U00729
|
||||
vogl;vogl@local.zellstoff-stendal.de;U00222
|
||||
helm;helm@local.zellstoff-stendal.de;U01522
|
||||
gruner;gruner@local.zellstoff-stendal.de;U01600
|
||||
bahn-rufbereitschaft;bahn-rufbereitschaft@local.zellstoff-stendal.de;U04133
|
||||
boehme;boehme@local.zellstoff-stendal.de;U02017
|
||||
mattersberger;mattersberger@local.zellstoff-stendal.de;U01059
|
||||
Z-Warte7;Z-Warte7@local.zellstoff-stendal.de;U00042
|
||||
aschenbach;aschenbach@local.zellstoff-stendal.de;U02139
|
||||
rdoering;rdoering@local.zellstoff-stendal.de;U01847
|
||||
jaeck;jaeck@local.zellstoff-stendal.de;U01411
|
||||
hopfe;hopfe@local.zellstoff-stendal.de;U01472
|
||||
zierau;zierau@local.zellstoff-stendal.de;U00062
|
||||
voigt;voigt@local.zellstoff-stendal.de;U00220
|
||||
lnossol;lnossol@local.zellstoff-stendal.de;U00903
|
||||
wyschka;wyschka@local.zellstoff-stendal.de;U00084
|
||||
kraatz;kraatz@local.zellstoff-stendal.de;U01283
|
||||
geber;geber@local.zellstoff-stendal.de;U01676
|
||||
slusarek;slusarek@local.zellstoff-stendal.de;U00473
|
||||
technologie;technologie@local.zellstoff-stendal.de;U00338
|
||||
testSuP;testSuP@local.zellstoff-stendal.de;U00311
|
||||
mergeit;mergeit@local.zellstoff-stendal.de;U03810
|
||||
sherrmann;sherrmann@local.zellstoff-stendal.de;U01511
|
||||
blohm;blohm@local.zellstoff-stendal.de;U02021
|
||||
mercer;mercer@local.zellstoff-stendal.de;U01018
|
||||
sekretariatGF;sekretariatGF@local.zellstoff-stendal.de;U01665
|
||||
ortmann;ortmann@local.zellstoff-stendal.de;U00880
|
||||
suppi;suppi@local.zellstoff-stendal.de;U00377
|
||||
dreamscan;dreamscan@local.zellstoff-stendal.de;U00645
|
||||
brennecke;brennecke@local.zellstoff-stendal.de;U01988
|
||||
digitaldata;digitaldata@local.zellstoff-stendal.de;U03752
|
||||
dtrollius;dtrollius@local.zellstoff-stendal.de;U00265
|
||||
ih_gast;ih_gast@local.zellstoff-stendal.de;U01681
|
||||
bethge;bethge@local.zellstoff-stendal.de;U02034
|
||||
krieg;krieg@local.zellstoff-stendal.de;U01268
|
||||
EinkaufTechnik;EinkaufTechnik@local.zellstoff-stendal.de;U00339
|
||||
fu;fu@local.zellstoff-stendal.de;U01698
|
||||
motter;motter@local.zellstoff-stendal.de;U00960
|
||||
dreke;dreke@local.zellstoff-stendal.de;U01844
|
||||
hornig;hornig@local.zellstoff-stendal.de;U01461
|
||||
mwagner;mwagner@local.zellstoff-stendal.de;U00201
|
||||
kraft;kraft@local.zellstoff-stendal.de;U01282
|
||||
LKW;LKW@local.zellstoff-stendal.de;U00049
|
||||
aktivierung;aktivierung@local.zellstoff-stendal.de;U02171
|
||||
spinnehoern;spinnehoern@local.zellstoff-stendal.de;U00451
|
||||
schulze;schulze@local.zellstoff-stendal.de;U00013
|
||||
roggenbuck;roggenbuck@local.zellstoff-stendal.de;U02490
|
||||
kral-baericke;kral-baericke@local.zellstoff-stendal.de;U02497
|
||||
ZSPC1112$;ZSPC1112$@local.zellstoff-stendal.de;U02546
|
||||
Volkmer;Volkmer@local.zellstoff-stendal.de;U02764
|
||||
Szentjanosi;Szentjanosi@local.zellstoff-stendal.de;U02595
|
||||
Seifert;Seifert@local.zellstoff-stendal.de;U02844
|
||||
zimmermann;zimmermann@local.zellstoff-stendal.de;U03196
|
||||
bohn;bohn@local.zellstoff-stendal.de;U03484
|
||||
Wehlte;Wehlte@local.zellstoff-stendal.de;U03522
|
||||
deckert;deckert@local.zellstoff-stendal.de;U03530
|
||||
ketterer;ketterer@local.zellstoff-stendal.de;U03550
|
||||
borch;borch@local.zellstoff-stendal.de;U03551
|
||||
Statetzny;Statetzny@local.zellstoff-stendal.de;U03575
|
||||
adminTE;adminTE@local.zellstoff-stendal.de;U03639
|
||||
AfWUser1;AfWUser1@local.zellstoff-stendal.de;U03719
|
||||
roth;roth@local.zellstoff-stendal.de;U03738
|
||||
glowalla;glowalla@local.zellstoff-stendal.de;U01645
|
||||
mm001;mm001@local.zellstoff-stendal.de;U03755
|
||||
walinda;walinda@local.zellstoff-stendal.de;U03775
|
||||
adminRA;adminRA@local.zellstoff-stendal.de;U03671
|
||||
sgonina;sgonina@local.zellstoff-stendal.de;U03820
|
||||
MHGARNLKW1;MHGARNLKW1@local.zellstoff-stendal.de;U03827
|
||||
MHGARNLKW2;MHGARNLKW2@local.zellstoff-stendal.de;U03832
|
||||
MHGARNLKW3;MHGARNLKW3@local.zellstoff-stendal.de;U03831
|
||||
MHGARNLKW4;MHGARNLKW4@local.zellstoff-stendal.de;U03830
|
||||
MHGARNLKW5;MHGARNLKW5@local.zellstoff-stendal.de;U03829
|
||||
MHGARNLKW6;MHGARNLKW6@local.zellstoff-stendal.de;U03834
|
||||
meeting248;meeting248@local.zellstoff-stendal.de;U03750
|
||||
auditorium;auditorium@local.zellstoff-stendal.de;U03748
|
||||
heppner;heppner@local.zellstoff-stendal.de;U01516
|
||||
shala;shala@local.zellstoff-stendal.de;U03933
|
||||
ZSIntranetNutzer;ZSIntranetNutzer@local.zellstoff-stendal.de;U01426
|
||||
meeting115;meeting115@local.zellstoff-stendal.de;U01027
|
||||
gaedke;gaedke@local.zellstoff-stendal.de;U01688
|
||||
edeling;edeling@local.zellstoff-stendal.de;U01818
|
||||
bem_liedtke;bem_liedtke@local.zellstoff-stendal.de;U01164
|
||||
wabersky;wabersky@local.zellstoff-stendal.de;U00207
|
||||
ih-at;ih-at@local.zellstoff-stendal.de;U01441
|
||||
otto;otto@local.zellstoff-stendal.de;U00874
|
||||
hlawati;hlawati@local.zellstoff-stendal.de;U01500
|
||||
jaeger;jaeger@local.zellstoff-stendal.de;U01410
|
||||
sellhusen;sellhusen@local.zellstoff-stendal.de;U00510
|
||||
oppenkowski;oppenkowski@local.zellstoff-stendal.de;U00213
|
||||
ritzmann;ritzmann@local.zellstoff-stendal.de;U00705
|
||||
binder;binder@local.zellstoff-stendal.de;U02031
|
||||
maschinendiagnose;maschinendiagnose@local.zellstoff-stendal.de;U01063
|
||||
br_seebert;br_seebert@local.zellstoff-stendal.de;U04107
|
||||
Boehncke;Boehncke@local.zellstoff-stendal.de;U03135
|
||||
Huebener;Huebener@local.zellstoff-stendal.de;U03093
|
||||
sprigge;sprigge@local.zellstoff-stendal.de;U02737
|
||||
zech;zech@local.zellstoff-stendal.de;U00075
|
||||
br_brauns;br_brauns@local.zellstoff-stendal.de;U04108
|
||||
aengel;aengel@local.zellstoff-stendal.de;U01788
|
||||
kieshauer;kieshauer@local.zellstoff-stendal.de;U01346
|
||||
seide;seide@local.zellstoff-stendal.de;U00523
|
||||
bordfeld;bordfeld@local.zellstoff-stendal.de;U02006
|
||||
wuersig;wuersig@local.zellstoff-stendal.de;U00088
|
||||
malzahn;malzahn@local.zellstoff-stendal.de;U01082
|
||||
Meeting341;Meeting341@local.zellstoff-stendal.de;U03747
|
||||
bliefert;bliefert@local.zellstoff-stendal.de;U02023
|
||||
gierspeck;gierspeck@local.zellstoff-stendal.de;U03984
|
||||
koodts;koodts@local.zellstoff-stendal.de;U01296
|
||||
wulf;wulf@local.zellstoff-stendal.de;U00090
|
||||
martin;martin@local.zellstoff-stendal.de;U01071
|
||||
mschuette;mschuette@local.zellstoff-stendal.de;U00535
|
||||
sieber;sieber@local.zellstoff-stendal.de;U00488
|
||||
dnickel;dnickel@local.zellstoff-stendal.de;U00908
|
||||
wache;wache@local.zellstoff-stendal.de;U00206
|
||||
meeting222;meeting222@local.zellstoff-stendal.de;U03751
|
||||
gollnick;gollnick@local.zellstoff-stendal.de;U01638
|
||||
meetingproduktion;meetingproduktion@local.zellstoff-stendal.de;U03749
|
||||
bader;bader@local.zellstoff-stendal.de;U02104
|
||||
grimmer;grimmer@local.zellstoff-stendal.de;U03638
|
||||
Z-Warte5;Z-Warte5@local.zellstoff-stendal.de;U00044
|
||||
magull;magull@local.zellstoff-stendal.de;U01103
|
||||
Fiss;Fiss@local.zellstoff-stendal.de;U02606
|
||||
Hanitzsch;Hanitzsch@local.zellstoff-stendal.de;U02825
|
||||
Tetzlaff;Tetzlaff@local.zellstoff-stendal.de;U02835
|
||||
Witaszak;Witaszak@local.zellstoff-stendal.de;U02597
|
||||
betka;betka@local.zellstoff-stendal.de;U02033
|
||||
grader;grader@local.zellstoff-stendal.de;U01631
|
||||
lempke;lempke@local.zellstoff-stendal.de;U01177
|
||||
schlieker;schlieker@local.zellstoff-stendal.de;U00615
|
||||
waack;waack@local.zellstoff-stendal.de;U00208
|
||||
jeschmidt;jeschmidt@local.zellstoff-stendal.de;U00606
|
||||
luedicke;luedicke@local.zellstoff-stendal.de;U01134
|
||||
braunstoff;braunstoff@local.zellstoff-stendal.de;U00047
|
||||
Meeting212;Meeting212@local.zellstoff-stendal.de;U03978
|
||||
kortegast;kortegast@local.zellstoff-stendal.de;U01289
|
||||
mueller;mueller@local.zellstoff-stendal.de;U00950
|
||||
kruppa;kruppa@local.zellstoff-stendal.de;U01259
|
||||
Maasz;Maasz@local.zellstoff-stendal.de;U01117
|
||||
knepper;knepper@local.zellstoff-stendal.de;U01322
|
||||
mkolditz;mkolditz@local.zellstoff-stendal.de;U01304
|
||||
riemann;riemann@local.zellstoff-stendal.de;U00711
|
||||
ih-m;ih-m@local.zellstoff-stendal.de;U01439
|
||||
Lemme;Lemme@local.zellstoff-stendal.de;U02572
|
||||
Hengmith;Hengmith@local.zellstoff-stendal.de;U02667
|
||||
Pludowski;Pludowski@local.zellstoff-stendal.de;U02707
|
||||
Meissner;Meissner@local.zellstoff-stendal.de;U02587
|
||||
Conrad;Conrad@local.zellstoff-stendal.de;U02688
|
||||
Glimm;Glimm@local.zellstoff-stendal.de;U02822
|
||||
Dreiza;Dreiza@local.zellstoff-stendal.de;U02839
|
||||
Bienasch;Bienasch@local.zellstoff-stendal.de;U02655
|
||||
Herrmann;Herrmann@local.zellstoff-stendal.de;U02940
|
||||
Krummhaar;Krummhaar@local.zellstoff-stendal.de;U02776
|
||||
Fischer;Fischer@local.zellstoff-stendal.de;U02788
|
||||
Lukat;Lukat@local.zellstoff-stendal.de;U02621
|
||||
Wiedensee;Wiedensee@local.zellstoff-stendal.de;U02640
|
||||
Heine;Heine@local.zellstoff-stendal.de;U02663
|
||||
Isensee;Isensee@local.zellstoff-stendal.de;U02712
|
||||
Mertens;Mertens@local.zellstoff-stendal.de;U02616
|
||||
Koch;Koch@local.zellstoff-stendal.de;U02630
|
||||
Grabow;Grabow@local.zellstoff-stendal.de;U02591
|
||||
MWeiss;MWeiss@local.zellstoff-stendal.de;U02866
|
||||
specker;specker@local.zellstoff-stendal.de;U02816
|
||||
handt;handt@local.zellstoff-stendal.de;U03722
|
||||
ewagner;ewagner@local.zellstoff-stendal.de;U03721
|
||||
rogall;rogall@local.zellstoff-stendal.de;U00691
|
||||
storjohann;storjohann@local.zellstoff-stendal.de;U02548
|
||||
Selzer;Selzer@local.zellstoff-stendal.de;U02715
|
||||
hartleben;hartleben@local.zellstoff-stendal.de;U01552
|
||||
Meeting209;Meeting209@local.zellstoff-stendal.de;U04006
|
||||
Zellstoff-W1;Zellstoff-W1@local.zellstoff-stendal.de;U00038
|
||||
br_jlempke;br_jlempke@local.zellstoff-stendal.de;U04119
|
||||
Kutusowa;Kutusowa@local.zellstoff-stendal.de;U02717
|
||||
Mueller-Heuser;Mueller-Heuser@local.zellstoff-stendal.de;U03068
|
||||
Moeller;Moeller@local.zellstoff-stendal.de;U03046
|
||||
Peust;Peust@local.zellstoff-stendal.de;U02673
|
||||
Henkel;Henkel@local.zellstoff-stendal.de;U02859
|
||||
SBV_Tauscher;SBV_Tauscher@local.zellstoff-stendal.de;U04120
|
||||
SBV_Zier;SBV_Zier@local.zellstoff-stendal.de;U04121
|
||||
Zorr;Zorr@local.zellstoff-stendal.de;U02766
|
||||
Zellstofflager;Zellstofflager@local.zellstoff-stendal.de;U00074
|
||||
estel;estel@local.zellstoff-stendal.de;U01780
|
||||
harbich;harbich@local.zellstoff-stendal.de;U01562
|
||||
lohmann;lohmann@local.zellstoff-stendal.de;U01144
|
||||
mguenther;mguenther@local.zellstoff-stendal.de;U01591
|
||||
aconrad;aconrad@local.zellstoff-stendal.de;U03507
|
||||
aw-labor;aw-labor@local.zellstoff-stendal.de;U02114
|
||||
eggert;eggert@local.zellstoff-stendal.de;U01812
|
||||
schroeder;schroeder@local.zellstoff-stendal.de;U00590
|
||||
meetingmh;meetingmh@local.zellstoff-stendal.de;U03746
|
||||
thurau;thurau@local.zellstoff-stendal.de;U00294
|
||||
Hackerei-W1;Hackerei-W1@local.zellstoff-stendal.de;U00045
|
||||
Hellie;Hellie@local.zellstoff-stendal.de;U02867
|
||||
Petruck;Petruck@local.zellstoff-stendal.de;U02586
|
||||
nahrstedt;nahrstedt@local.zellstoff-stendal.de;U03510
|
||||
bem_seebert;bem_seebert@local.zellstoff-stendal.de;U04106
|
||||
gerhardt;gerhardt@local.zellstoff-stendal.de;U01667
|
||||
bem_lohmann;bem_lohmann@local.zellstoff-stendal.de;U04122
|
||||
bem_edeling;bem_edeling@local.zellstoff-stendal.de;U04123
|
||||
bergner;bergner@local.zellstoff-stendal.de;U02038
|
||||
sikora;sikora@local.zellstoff-stendal.de;U00486
|
||||
guenther;guenther@local.zellstoff-stendal.de;U01589
|
||||
becker;becker@local.zellstoff-stendal.de;U02072
|
||||
geisler;geisler@local.zellstoff-stendal.de;U01673
|
||||
woelkerling;woelkerling@local.zellstoff-stendal.de;U00095
|
||||
sstein;sstein@local.zellstoff-stendal.de;U00433
|
||||
stein;stein@local.zellstoff-stendal.de;U00434
|
||||
nseide;nseide@local.zellstoff-stendal.de;U00522
|
||||
geske;geske@local.zellstoff-stendal.de;U01664
|
||||
winkler;winkler@local.zellstoff-stendal.de;U00113
|
||||
stegemann;stegemann@local.zellstoff-stendal.de;U00435
|
||||
giese;giese@local.zellstoff-stendal.de;U01656
|
||||
kniesche;kniesche@local.zellstoff-stendal.de;U02539
|
||||
schueler;schueler@local.zellstoff-stendal.de;U00581
|
||||
voss;voss@local.zellstoff-stendal.de;U00211
|
||||
dahlmann;dahlmann@local.zellstoff-stendal.de;U01893
|
||||
gaubatz;gaubatz@local.zellstoff-stendal.de;U01680
|
||||
vinzelberg;vinzelberg@local.zellstoff-stendal.de;U00229
|
||||
simon;simon@local.zellstoff-stendal.de;U00484
|
||||
rudolf;rudolf@local.zellstoff-stendal.de;U00675
|
||||
haupt;haupt@local.zellstoff-stendal.de;U02750
|
||||
Z-Warte3;Z-Warte3@local.zellstoff-stendal.de;U00040
|
||||
Kersten;Kersten@local.zellstoff-stendal.de;U02759
|
||||
iguenther;iguenther@local.zellstoff-stendal.de;U02962
|
||||
mmueller;mmueller@local.zellstoff-stendal.de;U02961
|
||||
Z-Warte2;Z-Warte2@local.zellstoff-stendal.de;U00041
|
||||
zimmer;zimmer@local.zellstoff-stendal.de;U00060
|
||||
Warnecke;Warnecke@local.zellstoff-stendal.de;U02650
|
||||
Wagner;Wagner@local.zellstoff-stendal.de;U03117
|
||||
Gebser;Gebser@local.zellstoff-stendal.de;U02744
|
||||
Garbe;Garbe@local.zellstoff-stendal.de;U02702
|
||||
Borchert;Borchert@local.zellstoff-stendal.de;U02571
|
||||
Vorwerk;Vorwerk@local.zellstoff-stendal.de;U03013
|
||||
fincke;fincke@local.zellstoff-stendal.de;U02499
|
||||
Z-Warte6;Z-Warte6@local.zellstoff-stendal.de;U00043
|
||||
wieczorek;wieczorek@local.zellstoff-stendal.de;U00128
|
||||
alehmann;alehmann@local.zellstoff-stendal.de;U01185
|
||||
Kollasch;Kollasch@local.zellstoff-stendal.de;U02646
|
||||
Prigge;Prigge@local.zellstoff-stendal.de;U02636
|
||||
Richter;Richter@local.zellstoff-stendal.de;U02645
|
||||
Penning;Penning@local.zellstoff-stendal.de;U02736
|
||||
Nestmann;Nestmann@local.zellstoff-stendal.de;U02660
|
||||
tkrause;tkrause@local.zellstoff-stendal.de;U02805
|
||||
mmeyer;mmeyer@local.zellstoff-stendal.de;U02661
|
||||
Schuette;Schuette@local.zellstoff-stendal.de;U00536
|
||||
duks;duks@local.zellstoff-stendal.de;U01833
|
||||
tschmidt;tschmidt@local.zellstoff-stendal.de;U02644
|
||||
pecker;pecker@local.zellstoff-stendal.de;U00850
|
||||
nherrmann;nherrmann@local.zellstoff-stendal.de;U01512
|
||||
gittler;gittler@local.zellstoff-stendal.de;U03626
|
||||
br_thurau;br_thurau@local.zellstoff-stendal.de;U04124
|
||||
gierth;gierth@local.zellstoff-stendal.de;U01657
|
||||
haker;haker@local.zellstoff-stendal.de;U01572
|
||||
clensmann;clensmann@local.zellstoff-stendal.de;U01920
|
||||
neunkirch;neunkirch@local.zellstoff-stendal.de;U00911
|
||||
jurga;jurga@local.zellstoff-stendal.de;U02520
|
||||
vogel;vogel@local.zellstoff-stendal.de;U00226
|
||||
zier;zier@local.zellstoff-stendal.de;U00063
|
||||
liedtke;liedtke@local.zellstoff-stendal.de;U01163
|
||||
smolnik;smolnik@local.zellstoff-stendal.de;U00469
|
||||
bmaasz;bmaasz@local.zellstoff-stendal.de;U01116
|
||||
kvinzelberg;kvinzelberg@local.zellstoff-stendal.de;U03720
|
||||
kuehn;kuehn@local.zellstoff-stendal.de;U01251
|
||||
dwedel;dwedel@local.zellstoff-stendal.de;U00161
|
||||
ziese;ziese@local.zellstoff-stendal.de;U03220
|
||||
jknepper;jknepper@local.zellstoff-stendal.de;U01324
|
||||
buest;buest@local.zellstoff-stendal.de;U01960
|
||||
kaczirek;kaczirek@local.zellstoff-stendal.de;U01378
|
||||
beindorf;beindorf@local.zellstoff-stendal.de;U02526
|
||||
tlemke;tlemke@local.zellstoff-stendal.de;U01180
|
||||
lehmann;lehmann@local.zellstoff-stendal.de;U01184
|
||||
maerzke;maerzke@local.zellstoff-stendal.de;U01064
|
||||
weinholz;weinholz@local.zellstoff-stendal.de;U00149
|
||||
Z-Warte4;Z-Warte4@local.zellstoff-stendal.de;U00039
|
||||
pietrzyk;pietrzyk@local.zellstoff-stendal.de;U00822
|
||||
budde;budde@local.zellstoff-stendal.de;U01973
|
||||
soika;soika@local.zellstoff-stendal.de;U00466
|
||||
list;list@local.zellstoff-stendal.de;U01153
|
||||
Kozik;Kozik@local.zellstoff-stendal.de;U02657
|
||||
Przystawik;Przystawik@local.zellstoff-stendal.de;U02622
|
||||
Wasem;Wasem@local.zellstoff-stendal.de;U02596
|
||||
Wille;Wille@local.zellstoff-stendal.de;U02765
|
||||
clist;clist@local.zellstoff-stendal.de;U02563
|
||||
Wiegrefe;Wiegrefe@local.zellstoff-stendal.de;U02742
|
||||
schwaneberg;schwaneberg@local.zellstoff-stendal.de;U00534
|
||||
bleicherei;bleicherei@local.zellstoff-stendal.de;U00048
|
||||
Sandmann;Sandmann@local.zellstoff-stendal.de;U02593
|
||||
Kiesch;Kiesch@local.zellstoff-stendal.de;U02678
|
||||
ih-et;ih-et@local.zellstoff-stendal.de;U01440
|
||||
suhr;suhr@local.zellstoff-stendal.de;U00380
|
||||
buhe;buhe@local.zellstoff-stendal.de;U01971
|
||||
kopp;kopp@local.zellstoff-stendal.de;U01294
|
||||
tix;tix@local.zellstoff-stendal.de;U00287
|
||||
hagenstein;hagenstein@local.zellstoff-stendal.de;U01576
|
||||
schulenburg;schulenburg@local.zellstoff-stendal.de;U00583
|
||||
rschulenburg;rschulenburg@local.zellstoff-stendal.de;U00582
|
||||
holzplatz;holzplatz@local.zellstoff-stendal.de;U01474
|
||||
harmgarth;harmgarth@local.zellstoff-stendal.de;U01554
|
||||
michaelis;michaelis@local.zellstoff-stendal.de;U01005
|
||||
sreinecke;sreinecke@local.zellstoff-stendal.de;U00728
|
||||
peschel;peschel@local.zellstoff-stendal.de;U00841
|
||||
istarke;istarke@local.zellstoff-stendal.de;U00440
|
||||
gorges;gorges@local.zellstoff-stendal.de;U01637
|
||||
thuernagel;thuernagel@local.zellstoff-stendal.de;U00293
|
||||
pleske;pleske@local.zellstoff-stendal.de;U00809
|
||||
seebert;seebert@local.zellstoff-stendal.de;U00527
|
||||
baero;baero@local.zellstoff-stendal.de;U02095
|
||||
engel;engel@local.zellstoff-stendal.de;U03590
|
||||
wittkopp;wittkopp@local.zellstoff-stendal.de;U00104
|
||||
naepfli;naepfli@local.zellstoff-stendal.de;U00933
|
||||
krause;krause@local.zellstoff-stendal.de;U01274
|
||||
giesow;giesow@local.zellstoff-stendal.de;U01654
|
||||
trollius;trollius@local.zellstoff-stendal.de;U00266
|
||||
meier;meier@local.zellstoff-stendal.de;U01026
|
||||
ebner;ebner@local.zellstoff-stendal.de;U01824
|
||||
mauritz;mauritz@local.zellstoff-stendal.de;U01053
|
||||
elrepho;elrepho@local.zellstoff-stendal.de;U03812
|
||||
cmartin;cmartin@local.zellstoff-stendal.de;U01070
|
||||
liebsch;liebsch@local.zellstoff-stendal.de;U01165
|
||||
dschulz;dschulz@local.zellstoff-stendal.de;U00545
|
||||
ziesmann;ziesmann@local.zellstoff-stendal.de;U00061
|
||||
kleiber;kleiber@local.zellstoff-stendal.de;U01333
|
||||
boecker;boecker@local.zellstoff-stendal.de;U03221
|
||||
lanz;lanz@local.zellstoff-stendal.de;U01213
|
||||
kunst;kunst@local.zellstoff-stendal.de;U01249
|
||||
burzan;burzan@local.zellstoff-stendal.de;U01963
|
||||
mkraatz;mkraatz@local.zellstoff-stendal.de;U02492
|
||||
gieseler;gieseler@local.zellstoff-stendal.de;U01655
|
||||
teweleit;teweleit@local.zellstoff-stendal.de;U00308
|
||||
loebnitz;loebnitz@local.zellstoff-stendal.de;U01150
|
||||
koeppen;koeppen@local.zellstoff-stendal.de;U01293
|
||||
bernhardt;bernhardt@local.zellstoff-stendal.de;U01639
|
||||
Goeldner;Goeldner@local.zellstoff-stendal.de;U03002
|
||||
meetingMPS;meetingMPS@local.zellstoff-stendal.de;U03745
|
||||
hegerding;hegerding@local.zellstoff-stendal.de;U01535
|
||||
koppensteiner;koppensteiner@local.zellstoff-stendal.de;U01292
|
||||
meltzer;meltzer@local.zellstoff-stendal.de;U01022
|
||||
reymann;reymann@local.zellstoff-stendal.de;U00717
|
||||
jsimon;jsimon@local.zellstoff-stendal.de;U00483
|
||||
dieckmann;dieckmann@local.zellstoff-stendal.de;U01865
|
||||
held;held@local.zellstoff-stendal.de;U01524
|
||||
elies;elies@local.zellstoff-stendal.de;U01797
|
||||
mayer;mayer@local.zellstoff-stendal.de;U03934
|
||||
jkoehler;jkoehler@local.zellstoff-stendal.de;U01305
|
||||
poetzsch;poetzsch@local.zellstoff-stendal.de;U00788
|
||||
itzenplitz;itzenplitz@local.zellstoff-stendal.de;U00214
|
||||
schoppmeyer;schoppmeyer@local.zellstoff-stendal.de;U00595
|
||||
aschoppmeyer;aschoppmeyer@local.zellstoff-stendal.de;U00594
|
||||
dornheim;dornheim@local.zellstoff-stendal.de;U01846
|
||||
seidel;seidel@local.zellstoff-stendal.de;U00515
|
||||
gase;gase@local.zellstoff-stendal.de;U01682
|
||||
bentlage;bentlage@local.zellstoff-stendal.de;U02054
|
||||
frevert;frevert@local.zellstoff-stendal.de;U03225
|
||||
rkolditz;rkolditz@local.zellstoff-stendal.de;U01303
|
||||
petersen;petersen@local.zellstoff-stendal.de;U00839
|
||||
tuchen;tuchen@local.zellstoff-stendal.de;U03947
|
||||
thoma;thoma@local.zellstoff-stendal.de;U00302
|
||||
falky;falky@local.zellstoff-stendal.de;U01770
|
||||
donk;donk@local.zellstoff-stendal.de;U01849
|
||||
lieske;lieske@local.zellstoff-stendal.de;U01162
|
||||
wichmann;wichmann@local.zellstoff-stendal.de;U00130
|
||||
adilk;adilk@local.zellstoff-stendal.de;U01858
|
||||
dsimon;dsimon@local.zellstoff-stendal.de;U00482
|
||||
badakh;badakh@local.zellstoff-stendal.de;U02534
|
||||
zenker;zenker@local.zellstoff-stendal.de;U00072
|
||||
wegener;wegener@local.zellstoff-stendal.de;U00159
|
||||
seiler;seiler@local.zellstoff-stendal.de;U00512
|
||||
quaas;quaas@local.zellstoff-stendal.de;U00756
|
||||
engelhardt;engelhardt@local.zellstoff-stendal.de;U02343
|
||||
endres;endres@local.zellstoff-stendal.de;U02346
|
||||
stoehr;stoehr@local.zellstoff-stendal.de;U00409
|
||||
siegmanski;siegmanski@local.zellstoff-stendal.de;U00487
|
||||
meyer;meyer@local.zellstoff-stendal.de;U01007
|
||||
wedding;wedding@local.zellstoff-stendal.de;U00162
|
||||
geissler;geissler@local.zellstoff-stendal.de;U01671
|
||||
wedel;wedel@local.zellstoff-stendal.de;U00160
|
||||
wridder;wridder@local.zellstoff-stendal.de;U00712
|
||||
stoecker;stoecker@local.zellstoff-stendal.de;U00411
|
||||
ludwig;ludwig@local.zellstoff-stendal.de;U01133
|
||||
kintzel;kintzel@local.zellstoff-stendal.de;U01341
|
||||
steucke;steucke@local.zellstoff-stendal.de;U00310
|
||||
dobschall;dobschall@local.zellstoff-stendal.de;U01855
|
||||
stephan;stephan@local.zellstoff-stendal.de;U00422
|
||||
demski;demski@local.zellstoff-stendal.de;U01871
|
||||
mkoenig;mkoenig@local.zellstoff-stendal.de;U03767
|
||||
ratzlow;ratzlow@local.zellstoff-stendal.de;U00742
|
||||
teucke;teucke@local.zellstoff-stendal.de;U00309
|
||||
neumann;neumann@local.zellstoff-stendal.de;U00919
|
||||
babel;babel@local.zellstoff-stendal.de;U02108
|
||||
starke;starke@local.zellstoff-stendal.de;U00439
|
||||
listemann;listemann@local.zellstoff-stendal.de;U01154
|
||||
borstell;borstell@local.zellstoff-stendal.de;U02002
|
||||
bpecker;bpecker@local.zellstoff-stendal.de;U00849
|
||||
naraschkewitz;naraschkewitz@local.zellstoff-stendal.de;U04002
|
||||
grewe;grewe@local.zellstoff-stendal.de;U03977
|
||||
sergi;sergi@local.zellstoff-stendal.de;U04009
|
||||
mohme;mohme@local.zellstoff-stendal.de;U00986
|
||||
schreiber;schreiber@local.zellstoff-stendal.de;U03543
|
||||
schrader;schrader@local.zellstoff-stendal.de;U00593
|
||||
hack;hack@local.zellstoff-stendal.de;U03867
|
||||
pfeifhofer;pfeifhofer@local.zellstoff-stendal.de;U04001
|
||||
Ahrends;Ahrends@local.zellstoff-stendal.de;U02599
|
||||
Alpert;Alpert@local.zellstoff-stendal.de;U02731
|
||||
amueller;amueller@local.zellstoff-stendal.de;U02928
|
||||
Arendt;Arendt@local.zellstoff-stendal.de;U02734
|
||||
arichter;arichter@local.zellstoff-stendal.de;U02696
|
||||
aschulze;aschulze@local.zellstoff-stendal.de;U02778
|
||||
Assmann;Assmann@local.zellstoff-stendal.de;U02775
|
||||
astephan;astephan@local.zellstoff-stendal.de;U02803
|
||||
ateege;ateege@local.zellstoff-stendal.de;U02649
|
||||
awoelkert;awoelkert@local.zellstoff-stendal.de;U03606
|
||||
Baldauf;Baldauf@local.zellstoff-stendal.de;U02592
|
||||
Balecke;Balecke@local.zellstoff-stendal.de;U02653
|
||||
Banisch;Banisch@local.zellstoff-stendal.de;U02613
|
||||
Bartz;Bartz@local.zellstoff-stendal.de;U02760
|
||||
beninde;beninde@local.zellstoff-stendal.de;U03937
|
||||
Bensch;Bensch@local.zellstoff-stendal.de;U02813
|
||||
Bergmann;Bergmann@local.zellstoff-stendal.de;U02681
|
||||
Bertkau;Bertkau@local.zellstoff-stendal.de;U02637
|
||||
Betker;Betker@local.zellstoff-stendal.de;U02993
|
||||
Betker;Betker@local.zellstoff-stendal.de;U02993
|
||||
biermann;biermann@local.zellstoff-stendal.de;U03655
|
||||
Bliesch;Bliesch@local.zellstoff-stendal.de;U02719
|
||||
Blume;Blume@local.zellstoff-stendal.de;U02836
|
||||
bmueller;bmueller@local.zellstoff-stendal.de;U02874
|
||||
Boehmer;Boehmer@local.zellstoff-stendal.de;U02979
|
||||
Boesche;Boesche@local.zellstoff-stendal.de;U02910
|
||||
Bohling;Bohling@local.zellstoff-stendal.de;U02826
|
||||
br_gaubatz;br_gaubatz@local.zellstoff-stendal.de;U03525
|
||||
brand;brand@local.zellstoff-stendal.de;U03973
|
||||
brauns;brauns@local.zellstoff-stendal.de;U01991
|
||||
Brueckner;Brueckner@local.zellstoff-stendal.de;U02909
|
||||
Brueggemann;Brueggemann@local.zellstoff-stendal.de;U03125
|
||||
bruehahn;bruehahn@local.zellstoff-stendal.de;U03599
|
||||
buczko;buczko@local.zellstoff-stendal.de;U04011
|
||||
Burghardt;Burghardt@local.zellstoff-stendal.de;U02561
|
||||
dembski;dembski@local.zellstoff-stendal.de;U03737
|
||||
Deutsch;Deutsch@local.zellstoff-stendal.de;U02685
|
||||
dewitz;dewitz@local.zellstoff-stendal.de;U04016
|
||||
Dilk;Dilk@local.zellstoff-stendal.de;U02726
|
||||
Dittmann;Dittmann@local.zellstoff-stendal.de;U02732
|
||||
dlawrenz;dlawrenz@local.zellstoff-stendal.de;U02868
|
||||
dmaasz;dmaasz@local.zellstoff-stendal.de;U02878
|
||||
Drescher;Drescher@local.zellstoff-stendal.de;U02806
|
||||
drichter;drichter@local.zellstoff-stendal.de;U03574
|
||||
dsieber;dsieber@local.zellstoff-stendal.de;U02627
|
||||
Duemling;Duemling@local.zellstoff-stendal.de;U02881
|
||||
Duewert;Duewert@local.zellstoff-stendal.de;U03124
|
||||
ehanitzsch;ehanitzsch@local.zellstoff-stendal.de;U02800
|
||||
Ehrendorf;Ehrendorf@local.zellstoff-stendal.de;U02856
|
||||
ekrueger;ekrueger@local.zellstoff-stendal.de;U03619
|
||||
elsen;elsen@local.zellstoff-stendal.de;U03976
|
||||
enschmidt;enschmidt@local.zellstoff-stendal.de;U02843
|
||||
eschmidt;eschmidt@local.zellstoff-stendal.de;U02692
|
||||
eue;eue@local.zellstoff-stendal.de;U03773
|
||||
Fahrenholz;Fahrenholz@local.zellstoff-stendal.de;U02761
|
||||
Falk;Falk@local.zellstoff-stendal.de;U02831
|
||||
Falkenau;Falkenau@local.zellstoff-stendal.de;U02713
|
||||
fbuenning;fbuenning@local.zellstoff-stendal.de;U02710
|
||||
ffiedler;ffiedler@local.zellstoff-stendal.de;U03181
|
||||
fgrube;fgrube@local.zellstoff-stendal.de;U02723
|
||||
fguenther;fguenther@local.zellstoff-stendal.de;U03162
|
||||
Fiedler;Fiedler@local.zellstoff-stendal.de;U02603
|
||||
fmueller;fmueller@local.zellstoff-stendal.de;U02950
|
||||
Frankenberg;Frankenberg@local.zellstoff-stendal.de;U02808
|
||||
Freese;Freese@local.zellstoff-stendal.de;U02862
|
||||
Freist;Freist@local.zellstoff-stendal.de;U02791
|
||||
Fricke;Fricke@local.zellstoff-stendal.de;U02679
|
||||
fschubert;fschubert@local.zellstoff-stendal.de;U02746
|
||||
fseidel;fseidel@local.zellstoff-stendal.de;U03544
|
||||
fstephan;fstephan@local.zellstoff-stendal.de;U02855
|
||||
Gassel;Gassel@local.zellstoff-stendal.de;U02749
|
||||
Gauch;Gauch@local.zellstoff-stendal.de;U02615
|
||||
gebl;gebl@local.zellstoff-stendal.de;U03180
|
||||
gehn;gehn@local.zellstoff-stendal.de;U03697
|
||||
Genth;Genth@local.zellstoff-stendal.de;U02585
|
||||
Giesbrecht;Giesbrecht@local.zellstoff-stendal.de;U02716
|
||||
Glaser;Glaser@local.zellstoff-stendal.de;U02575
|
||||
Gnade;Gnade@local.zellstoff-stendal.de;U02794
|
||||
Goldau;Goldau@local.zellstoff-stendal.de;U03082
|
||||
Goreczka;Goreczka@local.zellstoff-stendal.de;U02674
|
||||
Goroncy;Goroncy@local.zellstoff-stendal.de;U02781
|
||||
Gottfried;Gottfried@local.zellstoff-stendal.de;U02811
|
||||
Graf;Graf@local.zellstoff-stendal.de;U02815
|
||||
Greisner;Greisner@local.zellstoff-stendal.de;U02819
|
||||
groth;groth@local.zellstoff-stendal.de;U03987
|
||||
Grubert;Grubert@local.zellstoff-stendal.de;U02620
|
||||
Gummert;Gummert@local.zellstoff-stendal.de;U02735
|
||||
Gutsche;Gutsche@local.zellstoff-stendal.de;U02700
|
||||
Hausner;Hausner@local.zellstoff-stendal.de;U02777
|
||||
Heinemann;Heinemann@local.zellstoff-stendal.de;U02828
|
||||
Heise;Heise@local.zellstoff-stendal.de;U02847
|
||||
hellmuth;hellmuth@local.zellstoff-stendal.de;U03653
|
||||
heuser;heuser@local.zellstoff-stendal.de;U03195
|
||||
Hevecker;Hevecker@local.zellstoff-stendal.de;U02577
|
||||
Hild;Hild@local.zellstoff-stendal.de;U02864
|
||||
hjvoigt;hjvoigt@local.zellstoff-stendal.de;U02632
|
||||
Hoelscher;Hoelscher@local.zellstoff-stendal.de;U02964
|
||||
Hoernke;Hoernke@local.zellstoff-stendal.de;U02885
|
||||
holle;holle@local.zellstoff-stendal.de;U02801
|
||||
hopp;hopp@local.zellstoff-stendal.de;U03833
|
||||
Hoppe;Hoppe@local.zellstoff-stendal.de;U03115
|
||||
horn;horn@local.zellstoff-stendal.de;U03800
|
||||
Hubert;Hubert@local.zellstoff-stendal.de;U02590
|
||||
Huebenthal;Huebenthal@local.zellstoff-stendal.de;U02918
|
||||
Huebner;Huebner@local.zellstoff-stendal.de;U03016
|
||||
Huth;Huth@local.zellstoff-stendal.de;U02675
|
||||
Ihleburg;Ihleburg@local.zellstoff-stendal.de;U02771
|
||||
imueller;imueller@local.zellstoff-stendal.de;U02901
|
||||
Jaehn;Jaehn@local.zellstoff-stendal.de;U02560
|
||||
Jakobs;Jakobs@local.zellstoff-stendal.de;U02607
|
||||
Jatzkowski;Jatzkowski@local.zellstoff-stendal.de;U03936
|
||||
jav_boehmer;jav_boehmer@local.zellstoff-stendal.de;U03754
|
||||
jav_schoenfisch;jav_schoenfisch@local.zellstoff-stendal.de;U03753
|
||||
Jenrich;Jenrich@local.zellstoff-stendal.de;U02677
|
||||
mschroeder;mschroeder@local.zellstoff-stendal.de;U02960
|
||||
jrudolph;jrudolph@local.zellstoff-stendal.de;U03489
|
||||
Junker;Junker@local.zellstoff-stendal.de;U02727
|
||||
jwagner;jwagner@local.zellstoff-stendal.de;U03167
|
||||
Kalda;Kalda@local.zellstoff-stendal.de;U02769
|
||||
Kalkstein;Kalkstein@local.zellstoff-stendal.de;U02729
|
||||
Kautz;Kautz@local.zellstoff-stendal.de;U02795
|
||||
Kayatz;Kayatz@local.zellstoff-stendal.de;U02725
|
||||
Kipka;Kipka@local.zellstoff-stendal.de;U02850
|
||||
Kirschke;Kirschke@local.zellstoff-stendal.de;U02785
|
||||
kkirschke;kkirschke@local.zellstoff-stendal.de;U02739
|
||||
kleff;kleff@local.zellstoff-stendal.de;U02790
|
||||
kleinat;kleinat@local.zellstoff-stendal.de;U03597
|
||||
klug;klug@local.zellstoff-stendal.de;U03657
|
||||
Koenig;Koenig@local.zellstoff-stendal.de;U02975
|
||||
kolrep;kolrep@local.zellstoff-stendal.de;U03774
|
||||
Konrad;Konrad@local.zellstoff-stendal.de;U02740
|
||||
Kosmehl;Kosmehl@local.zellstoff-stendal.de;U02559
|
||||
Krakau;Krakau@local.zellstoff-stendal.de;U02810
|
||||
Kruck;Kruck@local.zellstoff-stendal.de;U02853
|
||||
Krueger;Krueger@local.zellstoff-stendal.de;U03089
|
||||
Kuessner;Kuessner@local.zellstoff-stendal.de;U03038
|
||||
kuhnert;kuhnert@local.zellstoff-stendal.de;U03578
|
||||
Kuhrts;Kuhrts@local.zellstoff-stendal.de;U02841
|
||||
Lahrmann;Lahrmann@local.zellstoff-stendal.de;U02565
|
||||
Lange;Lange@local.zellstoff-stendal.de;U02601
|
||||
Langnese;Langnese@local.zellstoff-stendal.de;U02799
|
||||
Lawrenz;Lawrenz@local.zellstoff-stendal.de;U02569
|
||||
lbethge;lbethge@local.zellstoff-stendal.de;U02817
|
||||
Lebsack;Lebsack@local.zellstoff-stendal.de;U02708
|
||||
Leff;Leff@local.zellstoff-stendal.de;U02641
|
||||
Liedmann;Liedmann@local.zellstoff-stendal.de;U02722
|
||||
lingner;lingner@local.zellstoff-stendal.de;U03680
|
||||
lkrueger;lkrueger@local.zellstoff-stendal.de;U03152
|
||||
Lukowsky;Lukowsky@local.zellstoff-stendal.de;U02728
|
||||
Lura;Lura@local.zellstoff-stendal.de;U02721
|
||||
mackus;mackus@local.zellstoff-stendal.de;U01107
|
||||
maier;maier@local.zellstoff-stendal.de;U01100
|
||||
Mansfeld;Mansfeld@local.zellstoff-stendal.de;U02753
|
||||
Masurek;Masurek@local.zellstoff-stendal.de;U02695
|
||||
Matt;Matt@local.zellstoff-stendal.de;U02610
|
||||
Maurer;Maurer@local.zellstoff-stendal.de;U02643
|
||||
Mehl;Mehl@local.zellstoff-stendal.de;U02709
|
||||
meinschien;meinschien@local.zellstoff-stendal.de;U03764
|
||||
Melchert;Melchert@local.zellstoff-stendal.de;U02758
|
||||
Mewes;Mewes@local.zellstoff-stendal.de;U02827
|
||||
mglimm;mglimm@local.zellstoff-stendal.de;U02625
|
||||
Michael;Michael@local.zellstoff-stendal.de;U02664
|
||||
mjaeger;mjaeger@local.zellstoff-stendal.de;U03169
|
||||
mkoch;mkoch@local.zellstoff-stendal.de;U02699
|
||||
mneunkirch;mneunkirch@local.zellstoff-stendal.de;U02604
|
||||
Mnich;Mnich@local.zellstoff-stendal.de;U02838
|
||||
mpoetschke;mpoetschke@local.zellstoff-stendal.de;U03163
|
||||
mschmidt;mschmidt@local.zellstoff-stendal.de;U02852
|
||||
mschulz;mschulz@local.zellstoff-stendal.de;U02568
|
||||
Muessig;Muessig@local.zellstoff-stendal.de;U03000
|
||||
Nauke;Nauke@local.zellstoff-stendal.de;U02594
|
||||
nfischer;nfischer@local.zellstoff-stendal.de;U02628
|
||||
Niehus;Niehus@local.zellstoff-stendal.de;U02701
|
||||
Ode;Ode@local.zellstoff-stendal.de;U02580
|
||||
Oneszeit;Oneszeit@local.zellstoff-stendal.de;U02992
|
||||
Osinski;Osinski@local.zellstoff-stendal.de;U02691
|
||||
Oswald;Oswald@local.zellstoff-stendal.de;U02683
|
||||
Otte;Otte@local.zellstoff-stendal.de;U02647
|
||||
br_zimmer;br_zimmer@local.zellstoff-stendal.de;U04125
|
||||
br_wieczorek;br_wieczorek@local.zellstoff-stendal.de;U04126
|
||||
br_praast;br_praast@local.zellstoff-stendal.de;U04127
|
||||
br_kollasch;br_kollasch@local.zellstoff-stendal.de;U04128
|
||||
Paske;Paske@local.zellstoff-stendal.de;U02786
|
||||
pebner;pebner@local.zellstoff-stendal.de;U02574
|
||||
phaupt;phaupt@local.zellstoff-stendal.de;U02600
|
||||
pieck;pieck@local.zellstoff-stendal.de;U03598
|
||||
Plasa;Plasa@local.zellstoff-stendal.de;U02762
|
||||
pleger;pleger@local.zellstoff-stendal.de;U03652
|
||||
plemke;plemke@local.zellstoff-stendal.de;U02566
|
||||
Podymski;Podymski@local.zellstoff-stendal.de;U02609
|
||||
Poetschke;Poetschke@local.zellstoff-stendal.de;U02913
|
||||
jav_buenning;jav_buenning@local.zellstoff-stendal.de;U04129
|
||||
Post;Post@local.zellstoff-stendal.de;U02714
|
||||
pschrader;pschrader@local.zellstoff-stendal.de;U02662
|
||||
rbuenning;rbuenning@local.zellstoff-stendal.de;U02963
|
||||
rehbein;rehbein@local.zellstoff-stendal.de;U03549
|
||||
Reichert;Reichert@local.zellstoff-stendal.de;U02705
|
||||
reinfarth;reinfarth@local.zellstoff-stendal.de;U03628
|
||||
rente;rente@local.zellstoff-stendal.de;U03198
|
||||
Reschke;Reschke@local.zellstoff-stendal.de;U02639
|
||||
rgiffei;rgiffei@local.zellstoff-stendal.de;U02840
|
||||
Rix;Rix@local.zellstoff-stendal.de;U02638
|
||||
rmaier;rmaier@local.zellstoff-stendal.de;U02812
|
||||
Roediger;Roediger@local.zellstoff-stendal.de;U03087
|
||||
roehl;roehl@local.zellstoff-stendal.de;U03930
|
||||
Roeseler;Roeseler@local.zellstoff-stendal.de;U02629
|
||||
Rothkirch;Rothkirch@local.zellstoff-stendal.de;U02796
|
||||
rschulze;rschulze@local.zellstoff-stendal.de;U02656
|
||||
rseide;rseide@local.zellstoff-stendal.de;U02618
|
||||
Rudolph;Rudolph@local.zellstoff-stendal.de;U02694
|
||||
Runge;Runge@local.zellstoff-stendal.de;U02846
|
||||
rwagner;rwagner@local.zellstoff-stendal.de;U03761
|
||||
rzyski;rzyski@local.zellstoff-stendal.de;U03553
|
||||
Sagan;Sagan@local.zellstoff-stendal.de;U02747
|
||||
sbernhardt;sbernhardt@local.zellstoff-stendal.de;U02730
|
||||
Schaefer;Schaefer@local.zellstoff-stendal.de;U03019
|
||||
schaeufler;schaeufler@local.zellstoff-stendal.de;U00643
|
||||
Schammler;Schammler@local.zellstoff-stendal.de;U02581
|
||||
Schaper;Schaper@local.zellstoff-stendal.de;U02782
|
||||
schernickau;schernickau@local.zellstoff-stendal.de;U03595
|
||||
Schieske;Schieske@local.zellstoff-stendal.de;U02784
|
||||
Schliefke;Schliefke@local.zellstoff-stendal.de;U02578
|
||||
Schliemann;Schliemann@local.zellstoff-stendal.de;U02698
|
||||
Schmaler;Schmaler@local.zellstoff-stendal.de;U02797
|
||||
Schmidt;Schmidt@local.zellstoff-stendal.de;U02851
|
||||
Schoenfisch;Schoenfisch@local.zellstoff-stendal.de;U02972
|
||||
Schoenrock;Schoenrock@local.zellstoff-stendal.de;U02907
|
||||
Scholze;Scholze@local.zellstoff-stendal.de;U02598
|
||||
Schubert;Schubert@local.zellstoff-stendal.de;U02863
|
||||
Schuetze;Schuetze@local.zellstoff-stendal.de;U03094
|
||||
schuhmacher;schuhmacher@local.zellstoff-stendal.de;U03610
|
||||
Schultz;Schultz@local.zellstoff-stendal.de;U02570
|
||||
Schumann;Schumann@local.zellstoff-stendal.de;U02573
|
||||
Segelitz;Segelitz@local.zellstoff-stendal.de;U02865
|
||||
skoch;skoch@local.zellstoff-stendal.de;U02932
|
||||
skrause;skrause@local.zellstoff-stendal.de;U02659
|
||||
skrueger;skrueger@local.zellstoff-stendal.de;U03596
|
||||
Spinger;Spinger@local.zellstoff-stendal.de;U02690
|
||||
spittel;spittel@local.zellstoff-stendal.de;U03182
|
||||
Staerke;Staerke@local.zellstoff-stendal.de;U03107
|
||||
staps;staps@local.zellstoff-stendal.de;U03694
|
||||
Stecklies;Stecklies@local.zellstoff-stendal.de;U02793
|
||||
Steffens;Steffens@local.zellstoff-stendal.de;U02891
|
||||
Stockmann;Stockmann@local.zellstoff-stendal.de;U02583
|
||||
suske;suske@local.zellstoff-stendal.de;U03584
|
||||
tdemski;tdemski@local.zellstoff-stendal.de;U02798
|
||||
Teege;Teege@local.zellstoff-stendal.de;U02579
|
||||
Tessmann;Tessmann@local.zellstoff-stendal.de;U02623
|
||||
tfricke;tfricke@local.zellstoff-stendal.de;U02665
|
||||
tgerhardt;tgerhardt@local.zellstoff-stendal.de;U02671
|
||||
uschmidt;uschmidt@local.zellstoff-stendal.de;U03573
|
||||
vbrandt;vbrandt@local.zellstoff-stendal.de;U02669
|
||||
Vogler;Vogler@local.zellstoff-stendal.de;U02687
|
||||
Wegner;Wegner@local.zellstoff-stendal.de;U02651
|
||||
Weiher;Weiher@local.zellstoff-stendal.de;U02619
|
||||
Weikert;Weikert@local.zellstoff-stendal.de;U02895
|
||||
Weise;Weise@local.zellstoff-stendal.de;U02633
|
||||
Wendt;Wendt@local.zellstoff-stendal.de;U02612
|
||||
Wiehe;Wiehe@local.zellstoff-stendal.de;U02704
|
||||
Wieprecht;Wieprecht@local.zellstoff-stendal.de;U02754
|
||||
Wilberg;Wilberg@local.zellstoff-stendal.de;U02693
|
||||
Wilke;Wilke@local.zellstoff-stendal.de;U02564
|
||||
Witczak;Witczak@local.zellstoff-stendal.de;U02567
|
||||
Witter;Witter@local.zellstoff-stendal.de;U02605
|
||||
Wittkowski;Wittkowski@local.zellstoff-stendal.de;U02684
|
||||
Woehlert;Woehlert@local.zellstoff-stendal.de;U03069
|
||||
Zielke;Zielke@local.zellstoff-stendal.de;U02718
|
||||
Ziemann;Ziemann@local.zellstoff-stendal.de;U02770
|
||||
Baumann;Baumann@local.zellstoff-stendal.de;U02084
|
||||
alseidel;alseidel@local.zellstoff-stendal.de;U02617
|
||||
orzelek;orzelek@local.zellstoff-stendal.de;U04049
|
||||
ahrens;ahrens@local.zellstoff-stendal.de;U04134
|
||||
bauermeister;bauermeister@local.zellstoff-stendal.de;U04135
|
||||
plank;plank@local.zellstoff-stendal.de;U04136
|
||||
cduewert;cduewert@local.zellstoff-stendal.de;U04137
|
||||
loebe;loebe@local.zellstoff-stendal.de;U04138
|
||||
stumpe;stumpe@local.zellstoff-stendal.de;U04139
|
||||
arndt;arndt@local.zellstoff-stendal.de;U04140
|
||||
huwa;huwa@local.zellstoff-stendal.de;U04141
|
||||
traedisch;traedisch@local.zellstoff-stendal.de;U04142
|
||||
|
@@ -0,0 +1,85 @@
|
||||
####################################################################################################
|
||||
# Digital Data Configuration File (Template Date: 30.07.2016) #
|
||||
# UTF-8 Coding required! #
|
||||
# incl. FailSafe functions that are active when information is missing. #
|
||||
####################################################################################################
|
||||
|
||||
#==================================================================================================#
|
||||
########################################## General Setup ###########################################
|
||||
#==================================================================================================#
|
||||
|
||||
####################################################################################################
|
||||
# Path in which the log files will be stored. #
|
||||
# Example: E:\LogFiles\<ScriptName> #
|
||||
# FailSafe Setting is: <ScriptPath>\Logs #
|
||||
####################################################################################################
|
||||
LogPath =
|
||||
|
||||
####################################################################################################
|
||||
# Numerical value how long (in days) log files will be kept. ValidateRange is 0 - 1000 #
|
||||
# Setting the Value to 0 disables this Function. #
|
||||
# FailSafe Setting is: 60 #
|
||||
####################################################################################################
|
||||
LogFileKeepTime = 30
|
||||
|
||||
#==================================================================================================#
|
||||
########################################## Profile Setup ###########################################
|
||||
#==================================================================================================#
|
||||
|
||||
####################################################################################################
|
||||
# Path in which the UserMappingFile file is stored. #
|
||||
# Example: D:\ScriptFiles\Merge-MailStoreUserArchives\Benutzer-Mapping.csv #
|
||||
####################################################################################################
|
||||
UserMappingFile = D:\ScriptFiles\Merge-MailStoreUserArchives\Benutzer-Mapping1l.csv
|
||||
|
||||
####################################################################################################
|
||||
# Determine the data Seperator reperator in the UserMappingFile. #
|
||||
# The ";" needs to be escaped/masked by a \ . #
|
||||
# Example: \; #
|
||||
####################################################################################################
|
||||
UserMappingFileSeperator =\;
|
||||
|
||||
####################################################################################################
|
||||
# Determine the table column where the old Username is stored. #
|
||||
# Example: Nutzername_Alt #
|
||||
####################################################################################################
|
||||
UserMappingFileColumnOldName = Nutzername_Alt
|
||||
|
||||
####################################################################################################
|
||||
# Determine the table column where the new Username is stored. #
|
||||
# Example: Nutzername_Neu #
|
||||
####################################################################################################
|
||||
UserMappingFileColumnNewName = Nutzername_Neu
|
||||
|
||||
#==================================================================================================#
|
||||
######################################## MailStore settings ########################################
|
||||
#==================================================================================================#
|
||||
|
||||
####################################################################################################
|
||||
# Set the ServerName to connect with (MailStore Server). #
|
||||
# Example: localhost #
|
||||
####################################################################################################
|
||||
MailStoreServer = localhost
|
||||
|
||||
####################################################################################################
|
||||
# Set the ServerPort to connect with (MailStore Server). #
|
||||
# Example: 8463 #
|
||||
####################################################################################################
|
||||
MailStoreServerPort = 8463
|
||||
|
||||
####################################################################################################
|
||||
# Set the UserName for the MailStore Admin Account. #
|
||||
# Example: admin #
|
||||
####################################################################################################
|
||||
MailStoreAdminUserName = AdminMailStore
|
||||
|
||||
####################################################################################################
|
||||
# Set the Password for the MailStore Admin Account. #
|
||||
# Example: admin #
|
||||
####################################################################################################
|
||||
MailStoreAdminUserPassword = Z$Mstor1Z$Mstor1
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Binary file not shown.
@@ -0,0 +1,22 @@
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
Version 1.0.0.1 - 18.08.2025
|
||||
NEW: -
|
||||
FIX: -
|
||||
CHG: - Script accepts only one config file now
|
||||
REM: -
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
Version 1.0.0.0 - 01.11.2019
|
||||
NEW: -
|
||||
FIX: -
|
||||
CHG: -
|
||||
REM: -
|
||||
|
||||
-------------------------------------legend------------------------------------
|
||||
NEW: = Added a new functionality
|
||||
FIX: = Fixed a Issue with existing functionality
|
||||
CHG: = Changed a existing functionality
|
||||
REM: = Removed a functionality
|
||||
-------------------------------------------------------------------------------
|
||||
BIN
current/DD-Core/Modules/DD_LIB_Standards.dll
Normal file
BIN
current/DD-Core/Modules/DD_LIB_Standards.dll
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
current/DD-Core/Modules/GdPicture.NET.14.filters.64.dll
Normal file
BIN
current/DD-Core/Modules/GdPicture.NET.14.filters.64.dll
Normal file
Binary file not shown.
BIN
current/DD-Core/Modules/GdPicture.NET.14.filters.dll
Normal file
BIN
current/DD-Core/Modules/GdPicture.NET.14.filters.dll
Normal file
Binary file not shown.
BIN
current/DD-Core/Modules/GdPicture.NET.14.image.gdimgplug.64.dll
Normal file
BIN
current/DD-Core/Modules/GdPicture.NET.14.image.gdimgplug.64.dll
Normal file
Binary file not shown.
BIN
current/DD-Core/Modules/GdPicture.NET.14.image.gdimgplug.dll
Normal file
BIN
current/DD-Core/Modules/GdPicture.NET.14.image.gdimgplug.dll
Normal file
Binary file not shown.
186176
current/DD-Core/Modules/GdPicture.NET.14.xml
Normal file
186176
current/DD-Core/Modules/GdPicture.NET.14.xml
Normal file
File diff suppressed because it is too large
Load Diff
BIN
current/DD-Core/Modules/GdPicture_NET_14.dll
Normal file
BIN
current/DD-Core/Modules/GdPicture_NET_14.dll
Normal file
Binary file not shown.
BIN
current/DD-Core/Modules/Import-CustomModule.ps1
Normal file
BIN
current/DD-Core/Modules/Import-CustomModule.ps1
Normal file
Binary file not shown.
BIN
current/DD-Core/Modules/Load-EMLFile-withLogging.psm1
Normal file
BIN
current/DD-Core/Modules/Load-EMLFile-withLogging.psm1
Normal file
Binary file not shown.
BIN
current/DD-Core/Modules/MS.PS.Lib.psd1
Normal file
BIN
current/DD-Core/Modules/MS.PS.Lib.psd1
Normal file
Binary file not shown.
735
current/DD-Core/Modules/MS.PS.Lib.psm1
Normal file
735
current/DD-Core/Modules/MS.PS.Lib.psm1
Normal file
@@ -0,0 +1,735 @@
|
||||
<#------------------------------------------------------------------------
|
||||
|
||||
PowerShell Scripting Library
|
||||
for MailStore Server and MailStore Service Provider Edition
|
||||
|
||||
Requires Microsoft PowerShell 3.0 or higher
|
||||
|
||||
|
||||
|
||||
Copyright (c) 2014 - 2019 MailStore Software GmbH
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining
|
||||
a copy of this software and associated documentation files (the
|
||||
"Software"), to deal in the Software without restriction, including
|
||||
without limitation the rights to use, copy, modify, merge, publish,
|
||||
distribute, sublicense, and/or sell copies of the Software, and to
|
||||
permit persons to whom the Software is furnished to do so, subject to
|
||||
the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be
|
||||
included in all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
||||
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
||||
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
||||
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
||||
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
|
||||
------------------------------------------------------------------------#>
|
||||
|
||||
if ($PSVersionTable.PSVersion.Major -lt 3) {
|
||||
throw New-Object System.NotSupportedException "PowerShell V3 or higher required."
|
||||
}
|
||||
|
||||
[System.Net.SecurityProtocolType]$DefaultSecurityProtocol = [System.Net.SecurityProtocolType]::Tls12 -bor [System.Net.SecurityProtocolType]::Tls11 -bor [System.Net.SecurityProtocolType]::Tls
|
||||
|
||||
<#
|
||||
.SYNOPSIS
|
||||
Scriptblock called by "InternalMSApiCall" to handle long running API processes.
|
||||
|
||||
.DESCRIPTION
|
||||
Scriptblock called by "InternalMSApiCall" to handle long running API processes.
|
||||
Optionally fires events to notify the parent session of Status changes.
|
||||
Returns the final HTTP response as JSON object.
|
||||
|
||||
.PARAMETER MSApiClient
|
||||
MS API client object created by "New-MSApiClient".
|
||||
|
||||
.PARAMETER StatusObject
|
||||
Initial HTTP answer returned by the API as JSON object.
|
||||
|
||||
.PARAMETER StatusTimeout
|
||||
Time in milliseconds until the the server stops waiting for a new Status updates to send.
|
||||
|
||||
.PARAMETER UseStatusEvents
|
||||
If set to true, an event is fired for each status change.
|
||||
|
||||
.FUNCTIONALITY
|
||||
start-job -ArgumentList <MS API client>, <Initial HTTP response object>, <Timeout>, <UseStatusEvents> -ScriptBlock $sbPullStatus
|
||||
|
||||
.LINK
|
||||
http://en.help.mailstore.com/MailStore_Server_Administration_API#Long_Running_Processes
|
||||
|
||||
.LINK
|
||||
http://en.help.mailstore.com/spe/Management_API_-_Using_the_API#Long_Running_Processes
|
||||
|
||||
.LINK
|
||||
http://en.help.mailstore.com/MailStore_Server_Administration_API#Initial_HTTP_Response
|
||||
|
||||
.LINK
|
||||
http://en.help.mailstore.com/spe/Management_API_-_Using_the_API#Initial_HTTP_Response
|
||||
|
||||
.LINK
|
||||
http://en.help.mailstore.com/MailStore_Server_Administration_API#HTTP_Response_to_Periodic_Progress_Requests
|
||||
|
||||
.LINK
|
||||
http://en.help.mailstore.com/spe/Management_API_-_Using_the_API#HTTP_Response_to_Periodic_Progress_Requests
|
||||
|
||||
.LINK
|
||||
http://en.help.mailstore.com/MailStore_Server_Administration_API#Final_HTTP_Response
|
||||
|
||||
.LINK
|
||||
http://en.help.mailstore.com/spe/Management_API_-_Using_the_API#Final_HTTP_Response
|
||||
|
||||
.OUTPUTS
|
||||
<PSCustomObject>
|
||||
JSON object that contains the final HTTP response.
|
||||
|
||||
<PSEngineEvent>
|
||||
A custom PowerShell Engine Event that is fired in case of a Status version change. with the following properties:
|
||||
|
||||
-SourceIdentifier <string>
|
||||
The initial Status token.
|
||||
|
||||
-MessageData <PSCustomObject>
|
||||
JSON object with the current Status returned by the server.
|
||||
#>
|
||||
|
||||
$sbPullStatus = [scriptblock]::Create({
|
||||
Param(
|
||||
[Parameter(Mandatory = $True, Position = 1)]
|
||||
[ValidateNotNull()]
|
||||
[PSCustomObject]$MSApiClient,
|
||||
[Parameter(Mandatory = $True, Position = 2)]
|
||||
[ValidateNotNullOrEmpty()]
|
||||
[PSCustomObject]$StatusObject,
|
||||
[Parameter(Position = 3)]
|
||||
[ValidateNotNull()]
|
||||
[int]$StatusTimeout = 5000,
|
||||
[Parameter(Position = 4)]
|
||||
[bool]$UseStatusEvents = $True
|
||||
)
|
||||
[System.Uri]$StatusUri = New-Object System.Uri ("HTTPS://{0}:{1}/{2}{3}" -f $MSApiClient.Server, $MSApiClient.Port.ToString(), "api/", "get-status")
|
||||
|
||||
if ($UseStatusEvents) {
|
||||
|
||||
# The Status token returned by the initial API request identifies the server process. We use it to as event source so the parent PS session knows to which API call the Status relates.
|
||||
|
||||
Register-EngineEvent -SourceIdentifier ($StatusObject.token) -Forward
|
||||
}
|
||||
|
||||
# We need to set ServerCertificateValidationCallback and SecurityProtocol again as this is most likely a new PS session inside a job
|
||||
|
||||
[System.Net.ServicePointManager]::ServerCertificateValidationCallback = { $MSApiClient.IgnoreInvalidSSLCerts }
|
||||
[System.Net.ServicePointManager]::SecurityProtocol = $MSApiClient.SecurityProtocol
|
||||
[Microsoft.PowerShell.Commands.WebRequestSession]$Session = New-Object Microsoft.PowerShell.Commands.WebRequestSession
|
||||
$session.Credentials = $MSApiClient.Credentials
|
||||
|
||||
do {
|
||||
$StatusCode = ""
|
||||
|
||||
# We provide the status' token, last known version and a timeout value. The server will wait for that time at most for a new status, therefore it is not necessary for our client process to wait itself.
|
||||
|
||||
$Post = @{token = $StatusObject.token; lastKnownStatusVersion = $StatusObject.statusVersion; millisecondsTimeout = $StatusTimeout}
|
||||
try {
|
||||
[Microsoft.PowerShell.Commands.BasicHtmlWebResponseObject]$Response = Invoke-WebRequest -Uri $StatusUri.AbsoluteUri -Method Post -Body $Post -WebSession $Session -UseBasicParsing -MaximumRedirection 0 -ErrorAction SilentlyContinue
|
||||
}
|
||||
catch {
|
||||
$Response = $global:Error[0].Exception.Response
|
||||
if ($Response -eq $null) {
|
||||
throw $global:Error[0].Exception
|
||||
}
|
||||
}
|
||||
switch([System.Net.HttpStatusCode]$Response.StatusCode) {
|
||||
([System.Net.HttpStatusCode]::OK) {
|
||||
if ($Response.Content -eq $null) {
|
||||
$StatusObject = $null
|
||||
$StatusCode = ""
|
||||
} else {
|
||||
|
||||
# The PS commandlets do not respect the response's encoding, putting the BOM from the server's response into the content field >:-[
|
||||
# We need to remove the BOM so that ConvertFrom-Json succeeds.
|
||||
|
||||
$null = $Response.RawContentStream.Seek(0, [System.IO.SeekOrigin]::Begin) # Reset the stream
|
||||
$StatusObject = (New-Object System.IO.StreamReader $Response.RawContentStream, $Response.BaseResponse.CharacterSet).ReadToEnd() | ConvertFrom-Json
|
||||
$StatusCode = $StatusObject.StatusCode
|
||||
|
||||
# Fire a new PS Engine Event with the status token as SourceIdentifier.
|
||||
# The calling session knows the token and can thus identify to which API call the event relates, especially if there are multiple jobs in the queue.
|
||||
# MessageData contains a return object that has the current status as JSON object in its Data property.
|
||||
|
||||
if ($UseStatusEvents) {
|
||||
$null = New-Event -SourceIdentifier $StatusObject.token -MessageData $StatusObject
|
||||
}
|
||||
}
|
||||
}
|
||||
([System.Net.HttpStatusCode]::Unauthorized) {
|
||||
throw New-Object System.Net.WebException "Authentication failed. Check username and password."
|
||||
}
|
||||
([System.Net.HttpStatusCode]::NotFound) {
|
||||
throw New-Object System.Net.WebException "Session expired or wrong token."
|
||||
}
|
||||
default {
|
||||
throw New-Object System.Net.WebException ("({0}) {1}: {2}" -f [int]$Response.StatusCode, $Response.StatusDescription , $global:Error[0])
|
||||
}
|
||||
}
|
||||
} while ($StatusCode -eq "running")
|
||||
|
||||
return $StatusObject
|
||||
})
|
||||
|
||||
<#
|
||||
Sends an API call to the MailStore or SPE Management Server.
|
||||
|
||||
.DESCRIPTION
|
||||
Sends an API call to the MailStore or SPE Management Server.
|
||||
Optionally runs a call asynchronously through background jobs.
|
||||
Returns a JSON <PSCustomObject>.
|
||||
|
||||
.PARAMETER MSApiClient
|
||||
MS API client object created by "New-MSApiClient".
|
||||
|
||||
.PARAMETER ApiFunction
|
||||
A valid MS API function.
|
||||
|
||||
.PARAMETER ApiFunctionParameters
|
||||
The parameters for the API function.
|
||||
Provide as a hashtable, e.g. @{parameter1 = value1; parameter2 = value2; ...},
|
||||
or PSCustomObject with parameters mapped to properties.
|
||||
|
||||
.PARAMETER StatusTimeout
|
||||
Time in milliseconds until the the server stops waiting for a new status update to send.
|
||||
|
||||
.PARAMETER RunAsynchronously
|
||||
If provided, an API function that the server decides to run asynchronously is run as a background job.
|
||||
|
||||
.LINK
|
||||
http://en.help.mailstore.com/MailStore_Server_Administration_API
|
||||
|
||||
.LINK
|
||||
http://en.help.mailstore.com/spe/Management_API_-_Using_the_API
|
||||
|
||||
.LINK
|
||||
http://en.help.mailstore.com/MailStore_Server_Administration_API_Commands
|
||||
|
||||
.LINK
|
||||
http://en.help.mailstore.com/spe/Management_API_-_Function_Reference
|
||||
|
||||
.OUTPUTS
|
||||
A JSON <PSCustomObject> that encapsulates the HTTP response of the MS server.
|
||||
#>
|
||||
|
||||
function InternalMSApiCall {
|
||||
Param(
|
||||
[Parameter(Mandatory = $True, Position = 1)]
|
||||
[ValidateNotNullOrEmpty()]
|
||||
[PSCustomObject]$MSApiClient,
|
||||
[Parameter(Mandatory = $True, Position = 2)]
|
||||
[ValidateScript({$MSApiClient.SupportedApiFunctions.name.Contains($_)})]
|
||||
[string]$ApiFunction,
|
||||
[Parameter(Position = 3)]
|
||||
[System.Object]$ApiFunctionParameters = @{},
|
||||
[Parameter(Position = 4)]
|
||||
[ValidateNotNull()]
|
||||
[int]$StatusTimeout = 5000,
|
||||
[Parameter(Position = 5)]
|
||||
[switch]$RunAsynchronously
|
||||
)
|
||||
|
||||
# If $ApiFunctionParameters is passed as null, use an empty hashtable
|
||||
|
||||
if (!$ApiFunctionParameters) {
|
||||
[Hashtable]$ApiFunctionParametersHT = @{}
|
||||
} else {
|
||||
|
||||
# If necessary, convert PSCustomObject to Hashtable for further processing
|
||||
|
||||
switch ($ApiFunctionParameters.GetType().Name) {
|
||||
|
||||
"Hashtable" {
|
||||
[Hashtable]$ApiFunctionParametersHT = $ApiFunctionParameters
|
||||
}
|
||||
|
||||
"PSCustomObject" {
|
||||
[Hashtable]$ApiFunctionParametersHT = @{}
|
||||
$ApiFunctionParameters.psobject.properties | Foreach { $ApiFunctionParametersHT[$_.Name] = $_.Value }
|
||||
}
|
||||
|
||||
default {
|
||||
throw New-Object System.ArgumentException ('API function parameters must be passed either as Hashtable or as PSCustomObject.')
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
# Get the parameters for the API function supplied. The function itself has been checked in the Param block.
|
||||
|
||||
$MSApiFunctionWithParameters = $MSApiClient.SupportedApiFunctions | Where-Object {$_.name -eq $ApiFunction}
|
||||
|
||||
# Check whether the API function requires any parameters at all
|
||||
|
||||
if ($MSApiFunctionWithParameters.args.name) {
|
||||
[Array]$ParameterNames = $MSApiFunctionWithParameters.args.name
|
||||
} else {
|
||||
[Array]$ParameterNames = @()
|
||||
}
|
||||
|
||||
# Check whether parameters have been supplied that the API function does not support
|
||||
|
||||
[Array]$IllegalParams = Compare-Object -ReferenceObject $ParameterNames -DifferenceObject ([Array]$ApiFunctionParametersHT.Keys) -PassThru | Where-Object {$_.SideIndicator -EQ "=>"}
|
||||
|
||||
if ($IllegalParams.Count -gt 0) {
|
||||
throw New-Object System.ArgumentException ('Illegal Arguments: {0}' -f ($IllegalParams -join ", "))
|
||||
} else {
|
||||
|
||||
# Parameters which have their NULLABLE property set to false are mandatory
|
||||
|
||||
$MSApiFunctionMandatoryParameters = [Array]($MSApiFunctionWithParameters.args | Where-Object {$_.nullable -EQ $false})
|
||||
|
||||
# Check whether any parameters are mandatory at all
|
||||
|
||||
if ($MSApiFunctionMandatoryParameters.name) {
|
||||
[Array]$ParameterNames = $MSApiFunctionMandatoryParameters.name
|
||||
} else {
|
||||
[Array]$ParameterNames = @()
|
||||
}
|
||||
|
||||
# Check whether mandatory parameters are missing
|
||||
|
||||
[Array]$MissingParams = Compare-Object -ReferenceObject $ParameterNames -DifferenceObject ([Array]$ApiFunctionParametersHT.Keys) -PassThru | Where-Object {$_.SideIndicator -EQ "<="}
|
||||
if ($MissingParams.Count -gt 0) {
|
||||
throw New-Object System.ArgumentException ('Missing Arguments: {0}' -f ($MissingParams -join ", "))
|
||||
} else {
|
||||
|
||||
#Place Argument Type Check Here. We let the server sort out most of it ;-)
|
||||
|
||||
#Except for Booleans where the server supports only lower case values in compliance with JSON specs
|
||||
|
||||
[Array]$BoolParams = $MSApiFunctionWithParameters.args | Where-Object {$_.type.ToLowerInvariant() -eq "bool"}
|
||||
if ($BoolParams.Count -gt 0) {
|
||||
[Array]$SuppliedBoolParams = Compare-Object -ReferenceObject $BoolParams.Name -DifferenceObject ([Array]$ApiFunctionParametersHT.Keys) -IncludeEqual -ExcludeDifferent -PassThru
|
||||
foreach ($SuppliedBoolParam in $SuppliedBoolParams) {
|
||||
$ApiFunctionParametersHT[$SuppliedBoolParam] = $ApiFunctionParametersHT[$SuppliedBoolParam].ToString().ToLowerInvariant()
|
||||
}
|
||||
}
|
||||
|
||||
#JSON parameters need to be converted to string if they are supplied as any other type
|
||||
|
||||
[Array]$JSONParams = $MSApiFunctionWithParameters.args | Where-Object {$_.type.ToLowerInvariant() -eq "json"}
|
||||
if ($JSONParams.Count -gt 0) {
|
||||
[Array]$SuppliedJSONParams = Compare-Object -ReferenceObject $JSONParams.Name -DifferenceObject ([Array]$ApiFunctionParametersHT.Keys) -IncludeEqual -ExcludeDifferent -PassThru
|
||||
foreach ($SuppliedJSONParam in $SuppliedJSONParams) {
|
||||
if ($ApiFunctionParametersHT[$SuppliedJSONParam].GetType().Name.ToLowerInvariant() -ne "string") {
|
||||
$ApiFunctionParametersHT[$SuppliedJSONParam] = $ApiFunctionParametersHT[$SuppliedJSONParam] | ConvertTo-Json -Depth 10
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
# If a URI path is defined for the API function, use it, otherwise use the default path
|
||||
|
||||
$functionPath = if ($MSApiFunctionWithParameters | Get-Member "path") { $MSApiFunctionWithParameters.path } else { "api/invoke/" }
|
||||
|
||||
[System.Uri]$Uri = New-Object System.Uri ("HTTPS://{0}:{1}/{2}{3}" -f $MSApiClient.Server, $MSApiClient.Port.ToString(), $functionPath, $ApiFunction)
|
||||
[System.Net.ServicePointManager]::ServerCertificateValidationCallback = { $MSApiClient.IgnoreInvalidSSLCerts }
|
||||
[System.Net.ServicePointManager]::SecurityProtocol = $MSApiClient.SecurityProtocol
|
||||
[Microsoft.PowerShell.Commands.WebRequestSession]$Session = New-Object Microsoft.PowerShell.Commands.WebRequestSession
|
||||
$Session.Credentials = $MSApiClient.Credentials
|
||||
|
||||
# MS includes a BOM in most of its answers (especially the serialized JSON) which the PS commandlets cannot handle.
|
||||
# Therefore we have to use Invoke-WebRequest instead of Invoke-RestMethod and do the parsing ourselves.
|
||||
# Redirection and non terminating exceptions are suppressed.
|
||||
|
||||
try {
|
||||
[Microsoft.PowerShell.Commands.BasicHtmlWebResponseObject]$Response = Invoke-WebRequest -Uri $Uri.AbsoluteUri -Method Post -Body $ApiFunctionParametersHT -WebSession $Session -UseBasicParsing -MaximumRedirection 0 -ErrorAction SilentlyContinue
|
||||
}
|
||||
catch {
|
||||
$Response = $global:Error[0].Exception.Response
|
||||
if ($Response -eq $null) {
|
||||
throw $global:Error[0].Exception
|
||||
}
|
||||
}
|
||||
|
||||
# If the web request itself has been successful, we get a StatusCode.
|
||||
|
||||
switch([System.Net.HttpStatusCode]$Response.StatusCode) {
|
||||
([System.Net.HttpStatusCode]::OK) {
|
||||
|
||||
# Respect the response's encoding and thus get rid of the BOM if necessary (see above) so that ConvertFrom-Json succeeds.
|
||||
|
||||
$null = $Response.RawContentStream.Seek(0, [System.IO.SeekOrigin]::Begin) # Reset the stream
|
||||
$ResponseObject = (New-Object System.IO.StreamReader $Response.RawContentStream, $Response.BaseResponse.CharacterSet).ReadToEnd() | ConvertFrom-Json
|
||||
|
||||
if ($ResponseObject.StatusCode -eq "running") {
|
||||
|
||||
if ($RunAsynchronously.IsPresent) {
|
||||
# For a long running server process, create a background job encapsuled in $sbPullStatus that does the Status handling.
|
||||
|
||||
$null = Start-Job -ArgumentList $MSApiClient, $ResponseObject, $StatusTimeout, $True -ScriptBlock $sbPullStatus
|
||||
} else {
|
||||
$ResponseObject = Invoke-Command -ArgumentList $MSApiClient, $ResponseObject, $StatusTimeout, $False -ScriptBlock $sbPullStatus -NoNewScope
|
||||
}
|
||||
}
|
||||
|
||||
# Return the JSON response object.
|
||||
|
||||
return $ResponseObject
|
||||
}
|
||||
([System.Net.HttpStatusCode]::Unauthorized) {
|
||||
throw New-Object System.Net.WebException "Authentication failed. Check username and password."
|
||||
}
|
||||
default {
|
||||
throw New-Object System.Net.WebException ("({0}) {1}: {2}" -f [int]$Response.StatusCode, $Response.StatusDescription , $global:Error[0])
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
<#
|
||||
.SYNOPSIS
|
||||
Creates a new MS API client object.
|
||||
|
||||
.DESCRIPTION
|
||||
Creates a new MS API client object.
|
||||
Returns an MS API client object.
|
||||
|
||||
.PARAMETER Username
|
||||
Username of a MailStore Server or SPE administrator.
|
||||
|
||||
.PARAMETER Password
|
||||
Password of that MailStore Server or SPE administrator.
|
||||
|
||||
.PARAMETER Credentials
|
||||
Credentials of a MailStore Server or SPE administrator.
|
||||
Alternative to providing <Username> and <Password>.
|
||||
|
||||
.PARAMETER MailStoreServer
|
||||
DNS name or IP address of the MailStore Server.
|
||||
|
||||
.PARAMETER ManagementServer
|
||||
DNS name or IP address of the SPE Management Server.
|
||||
|
||||
.PARAMETER Port
|
||||
Port that the MailStore or SPE Management Server listens to for API calls.
|
||||
|
||||
.PARAMETER IgnoreInvalidSSLCerts
|
||||
If included, errors due to invalid SSL certificates are ignored.
|
||||
If omitted, only certificates that can be validated can be used.
|
||||
|
||||
.LINK
|
||||
http://en.help.mailstore.com/MailStore_Server_Administration_API_Commands
|
||||
|
||||
.LINK
|
||||
http://en.help.mailstore.com/spe/Management_API_-_Function_Reference
|
||||
|
||||
.OUTPUTS
|
||||
<PSCustomObject>
|
||||
Object that encapsulates an MS API client instance with the following properties:
|
||||
|
||||
-Server <string>
|
||||
Same as MailStoreServer or ManagementServer parameter, see above.
|
||||
|
||||
-Port <string>
|
||||
Same as input parameter, see above.
|
||||
|
||||
-IgnoreInvalidSSLCerts <bool>
|
||||
Same as input parameter, see above.
|
||||
|
||||
-SupportedApiFunctions <PSCustomObject>
|
||||
A JSON object that contains all functions the MS Management Server supports.
|
||||
Data fields are:
|
||||
|
||||
-Name <string[]>
|
||||
Name of the API function.
|
||||
|
||||
-Args <string[]>
|
||||
List of arguments that the API function expects.
|
||||
|
||||
-Path [<string[]>]
|
||||
The URI path that a request should use for this function.
|
||||
If empty the default path "/invoke/<function>" is used.
|
||||
|
||||
Please refer to http://en.help.mailstore.com/MailStore_Server_Administration_API_Commands
|
||||
or http://en.help.mailstore.com/spe/Management_API_-_Function_Reference for futher details.
|
||||
#>
|
||||
|
||||
function New-MSApiClient {
|
||||
[CmdletBinding(DefaultParameterSetName="MSSCredentialsAsStringsParameterSet")]
|
||||
Param(
|
||||
[Parameter(ParameterSetName = "MSSCredentialsAsStringsParameterSet", Position = 1, Mandatory = $true)]
|
||||
[Parameter(ParameterSetName = "SPECredentialsAsStringsParameterSet", Position = 1, Mandatory = $true)]
|
||||
[ValidateNotNullOrEmpty()]
|
||||
[string]$Username = "admin",
|
||||
[Parameter(ParameterSetName = "MSSCredentialsAsPSCredentialObjectParameterSet", Position = 1, Mandatory = $true)]
|
||||
[Parameter(ParameterSetName = "SPECredentialsAsPSCredentialObjectParameterSet", Position = 1, Mandatory = $true)]
|
||||
[ValidateNotNull()]
|
||||
[pscredential]$Credentials,
|
||||
[Parameter(ParameterSetName = "MSSCredentialsAsStringsParameterSet", Position = 2, Mandatory = $true)]
|
||||
[Parameter(ParameterSetName = "SPECredentialsAsStringsParameterSet", Position = 2, Mandatory = $true)]
|
||||
[ValidateNotNullOrEmpty()]
|
||||
[string]$Password,
|
||||
[Parameter(ParameterSetName = "MSSCredentialsAsStringsParameterSet", Position = 3, Mandatory = $true)]
|
||||
[Parameter(ParameterSetName = "MSSCredentialsAsPSCredentialObjectParameterSet", Position = 2, Mandatory = $true)]
|
||||
[ValidateNotNullOrEmpty()]
|
||||
[Alias("Server")]
|
||||
[string]$MailStoreServer = "localhost",
|
||||
[Parameter(ParameterSetName = "SPECredentialsAsStringsParameterSet", Position = 3, Mandatory = $true)]
|
||||
[Parameter(ParameterSetName = "SPECredentialsAsPSCredentialObjectParameterSet", Position = 2, Mandatory = $true)]
|
||||
[ValidateNotNullOrEmpty()]
|
||||
[string]$ManagementServer = "localhost",
|
||||
[Parameter(ParameterSetName = "MSSCredentialsAsStringsParameterSet", Position = 4)]
|
||||
[Parameter(ParameterSetName = "SPECredentialsAsStringsParameterSet", Position = 4)]
|
||||
[Parameter(ParameterSetName = "MSSCredentialsAsPSCredentialObjectParameterSet", Position = 3)]
|
||||
[Parameter(ParameterSetName = "SPECredentialsAsPSCredentialObjectParameterSet", Position = 3)]
|
||||
[ValidateRange(1024,65535)]
|
||||
[int]$Port,
|
||||
[Net.SecurityProtocolType]$SecurityProtocol = $DefaultSecurityProtocol,
|
||||
[switch]$IgnoreInvalidSSLCerts
|
||||
)
|
||||
|
||||
# If username and password have been provided, store them in a PSCredential object.
|
||||
|
||||
if ($PSBoundParameters.ContainsKey("Password")) {
|
||||
$Credentials = New-Object System.Management.Automation.PSCredential($Username,(ConvertTo-SecureString $Password -AsPlainText -Force))
|
||||
}
|
||||
|
||||
# Get the server name based on the parameter set used.
|
||||
|
||||
switch -wildcard ($PSCmdlet.ParameterSetName) {
|
||||
"MSS*" {
|
||||
$Server = $MailStoreServer
|
||||
}
|
||||
"SPE*" {
|
||||
$Server = $ManagementServer
|
||||
}
|
||||
}
|
||||
|
||||
# If no port has been provided, make a best guess based on the server parameter name.
|
||||
|
||||
if (!($PSBoundParameters.ContainsKey("Port"))) {
|
||||
switch -wildcard ($PSCmdlet.ParameterSetName) {
|
||||
"MSS*" {
|
||||
$Port = 8463
|
||||
}
|
||||
"SPE*" {
|
||||
$Port = 8474
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
# We provide a basic set of supported API functions to be able to login and initialize the MS API client object. The full set of functions will be retrieved later through "get-metadata" (see below).
|
||||
|
||||
$API_SUPPORTEDFUNCTIONS = '[{"name": "get-status","args": [{"name": "token","type": "string","nullable": false},{"name": "lastKnownStatusVersion","type": "number","nullable": false},{"name": "millisecondsTimeout","type": "number","nullable": false}],"path": "api/"},{"name": "get-metadata","args": [],"path": "api/"},{"name": "cancel-async","args": [{"name": "token","type": "string","nullable": false}],"path": "api/"}]'
|
||||
|
||||
[PSCustomObject]$MSApiClient = @{Credentials = $Credentials; Server = $Server; Port = $Port; SecurityProtocol = $SecurityProtocol; IgnoreInvalidSSLCerts = $IgnoreInvalidSSLCerts.IsPresent; SupportedApiFunctions = $API_SUPPORTEDFUNCTIONS | ConvertFrom-Json}
|
||||
|
||||
# Retrieve a list of all API functions that this installation of MS supports and convert it into a JSON object. Use a parsing depth of 10 levels just be sure and the default of 2 (!) is a bit ... insufficient.
|
||||
|
||||
$SupportedApiFunctions = InternalMSApiCall -MSApiClient $MSApiClient -ApiFunction "get-metadata" | ConvertTo-Json -Depth 10
|
||||
|
||||
# Join our basic set with the retrieved set because "get-metadata" omits some base API functions.
|
||||
|
||||
$MSApiClient.SupportedApiFunctions = ($API_SUPPORTEDFUNCTIONS.Substring(0,$API_SUPPORTEDFUNCTIONS.Length-1) + "," + $SupportedApiFunctions.Substring(1) ) | ConvertFrom-Json
|
||||
|
||||
return $MSApiClient
|
||||
}
|
||||
|
||||
<#
|
||||
.SYNOPSIS
|
||||
Sends an API call to the MailStore or SPE Management Server.
|
||||
|
||||
.DESCRIPTION
|
||||
Sends an API call to the MailStore or SPE Management Server.
|
||||
If the server decides to run the called function asynchronously, this commandlet waits for the final result.
|
||||
Use <Start-MSApiCall> for asynchronous function handling.
|
||||
Returns a JSON <PSCustomObject>.
|
||||
|
||||
.PARAMETER MSApiClient
|
||||
MS API client object created by "New-MSApiClient".
|
||||
|
||||
.PARAMETER ApiFunction
|
||||
A valid MS API function.
|
||||
|
||||
.PARAMETER ApiFunctionParameters
|
||||
The parameters for the API function.
|
||||
Provide as a hashtable, e.g. @{parameter1 = value1; parameter2 = value2; ...},
|
||||
or PSCustomObject with parameters mapped to properties.
|
||||
|
||||
.PARAMETER StatusTimeout
|
||||
Time in milliseconds until the the server stops waiting for a new status update to send.
|
||||
|
||||
.LINK
|
||||
http://en.help.mailstore.com/MailStore_Server_Administration_API
|
||||
|
||||
.LINK
|
||||
http://en.help.mailstore.com/spe/Management_API_-_Using_the_API
|
||||
|
||||
.LINK
|
||||
http://en.help.mailstore.com/MailStore_Server_Administration_API_Commands
|
||||
|
||||
.LINK
|
||||
http://en.help.mailstore.com/spe/Management_API_-_Function_Reference
|
||||
|
||||
.OUTPUTS
|
||||
A JSON <PSCustomObject> that encapsulates the HTTP response of the MS server.
|
||||
#>
|
||||
|
||||
function Invoke-MSApiCall {
|
||||
Param(
|
||||
[Parameter(Mandatory = $True, Position = 1)]
|
||||
[ValidateNotNullOrEmpty()]
|
||||
[PSCustomObject]$MSApiClient,
|
||||
[Parameter(Mandatory = $True, Position = 2)]
|
||||
[ValidateScript({$MSApiClient.SupportedApiFunctions.name.Contains($_)})]
|
||||
[string]$ApiFunction,
|
||||
[Parameter(Position = 3)]
|
||||
[System.Object]$ApiFunctionParameters = @{},
|
||||
[Parameter(Position = 4)]
|
||||
[ValidateNotNull()]
|
||||
[int]$StatusTimeout = 5000
|
||||
)
|
||||
|
||||
return InternalMSApiCall -MSApiClient $MSApiClient -ApiFunction $ApiFunction -ApiFunctionParameters $ApiFunctionParameters -StatusTimeout $StatusTimeout
|
||||
}
|
||||
|
||||
<#
|
||||
.SYNOPSIS
|
||||
Sends an API call to the MailStore or SPE Management Server.
|
||||
|
||||
.DESCRIPTION
|
||||
Sends an API call to the MailStore or SPE Management Server.
|
||||
If the server decides to run the called function asynchronously, this commandlet runs the call as a background job.
|
||||
Use <Invoke-MSApiCall> for synchronous function handling.
|
||||
Returns an object that contains information about the result (see Output).
|
||||
|
||||
.PARAMETER MSApiClient
|
||||
MS API client object created by "New-MSApiClient".
|
||||
|
||||
.PARAMETER ApiFunction
|
||||
A valid MS API function.
|
||||
|
||||
.PARAMETER ApiFunctionParameters
|
||||
The parameters for the API function.
|
||||
Provide as a hashtable, e.g. @{parameter1 = value1; parameter2 = value2; ...},
|
||||
or PSCustomObject with parameters mapped to properties.
|
||||
|
||||
.PARAMETER StatusTimeout
|
||||
Time in milliseconds until the the server stops waiting for a new status update to send.
|
||||
|
||||
.LINK
|
||||
http://en.help.mailstore.com/MailStore_Server_Administration_API
|
||||
|
||||
.LINK
|
||||
http://en.help.mailstore.com/spe/Management_API_-_Using_the_API
|
||||
|
||||
.LINK
|
||||
http://en.help.mailstore.com/MailStore_Server_Administration_API_Commands
|
||||
|
||||
.LINK
|
||||
http://en.help.mailstore.com/spe/Management_API_-_Function_Reference
|
||||
|
||||
.OUTPUTS
|
||||
A JSON <PSCustomObject> that encapsulates the HTTP response of the MS server.
|
||||
If that object's <statusCode> property is "running", a Windows PowerShell background job handles the Status of the server process.
|
||||
The job fires PSEngineEvents with the status token as SourceIdentifier and the current status in MessageData as a JSON <PSCustomObject>.
|
||||
Once the job is finished, it returns the final Status as a JSON <PSCustomObject>.
|
||||
#>
|
||||
|
||||
function Start-MSApiCall {
|
||||
Param(
|
||||
[Parameter(Mandatory = $True, Position = 1)]
|
||||
[ValidateNotNullOrEmpty()]
|
||||
[PSCustomObject]$MSApiClient,
|
||||
[Parameter(Mandatory = $True, Position = 2)]
|
||||
[ValidateScript({$MSApiClient.SupportedApiFunctions.name.Contains($_)})]
|
||||
[string]$ApiFunction,
|
||||
[Parameter(Position = 3)]
|
||||
[System.Object]$ApiFunctionParameters = @{},
|
||||
[Parameter(Position = 4)]
|
||||
[ValidateNotNull()]
|
||||
[int]$StatusTimeout = 5000
|
||||
)
|
||||
|
||||
return InternalMSApiCall -MSApiClient $MSApiClient -ApiFunction $ApiFunction -ApiFunctionParameters $ApiFunctionParameters -StatusTimeout $StatusTimeout -RunAsynchronously
|
||||
|
||||
}
|
||||
<#
|
||||
.SYNOPSIS
|
||||
Cancels a long running MS server process.
|
||||
|
||||
.DESCRIPTION
|
||||
Cancels a long running MS server process.
|
||||
Returns an object that contains the Status.
|
||||
|
||||
.PARAMETER MSApiClient
|
||||
MS API client object created by "New-MSApiClient".
|
||||
|
||||
.PARAMETER AsyncReturnObject
|
||||
JSON <PSCustomObject> that encapsulates the initial Status returned by the server in answer to the original API request.
|
||||
|
||||
.PARAMETER Token
|
||||
The Status token returned by the initial API request.
|
||||
Alternative to AsyncReturnObject.
|
||||
|
||||
.LINK
|
||||
http://en.help.mailstore.com/MailStore_Server_Administration_API#Long_Running_Processes
|
||||
|
||||
.LINK
|
||||
http://en.help.mailstore.com/spe/Management_API_-_Using_the_API#Long_Running_Processes
|
||||
|
||||
.LINK
|
||||
http://en.help.mailstore.com/MailStore_Server_Administration_API#Initial_HTTP_Response
|
||||
|
||||
.LINK
|
||||
http://en.help.mailstore.com/spe/Management_API_-_Using_the_API#Initial_HTTP_Response
|
||||
|
||||
.OUTPUTS
|
||||
JSON <PSCustomObject> that encapsulates the Status returned by the server.
|
||||
|
||||
.NOTES
|
||||
This function sends an API call to the MailStore or SPE Management Server to request a specific long running process to be cancelled.
|
||||
The server decides if and when the cancellation occurs; it does not necessarily cancel the process immediately.
|
||||
The background job that does the Status handling continues to run until it receives the server's cancellation signal.
|
||||
#>
|
||||
|
||||
function Stop-MSApiCall {
|
||||
Param(
|
||||
[Parameter(Mandatory = $True, Position = 1)]
|
||||
[ValidateNotNullorEmpty()]
|
||||
[PSCustomObject]$MSApiClient,
|
||||
[Parameter(ParameterSetName = "JobByObject", Mandatory = $True, Position = 2)]
|
||||
[ValidateNotNullorEmpty()]
|
||||
[PSCustomObject]$AsyncReturnObject,
|
||||
[Parameter(ParameterSetName = "JobByToken", Mandatory = $True, Position = 2)]
|
||||
[ValidateNotNullOrEmpty()]
|
||||
[string]$Token
|
||||
)
|
||||
if ($PSCmdlet.ParameterSetName -eq "JobByObject") {
|
||||
$Token = $AsyncReturnObject.token
|
||||
}
|
||||
if ($Token -ne "") {
|
||||
return Invoke-MSApiCall $MSApiClient "cancel-async" @{token = $Token}
|
||||
}
|
||||
}
|
||||
|
||||
# Aliases to support MailStore SPE 8.5 scripts
|
||||
# Start-MSSPEApiCall is mapped to Invoke-MSApiCall to assure the correct behavior
|
||||
|
||||
Set-Alias -Name New-MSSPEApiClient -Value New-MSApiClient
|
||||
Set-Alias -Name Invoke-MSSPEApiCall -Value Invoke-MSApiCall
|
||||
Set-Alias -Name Start-MSSPEApiCall -Value Invoke-MSApiCall
|
||||
Set-Alias -Name Stop-MSSPEApiCall -Value Stop-MSApiCall
|
||||
|
||||
# Aliases to support MailStore Server 7/8 scripts
|
||||
# Start-MSSApiCall is mapped to Invoke-MSApiCall to assure the correct behavior
|
||||
|
||||
Set-Alias -Name New-MSSApiClient -Value New-MSApiClient
|
||||
Set-Alias -Name Invoke-MSSApiCall -Value Invoke-MSApiCall
|
||||
Set-Alias -Name Start-MSSApiCall -Value Invoke-MSApiCall
|
||||
|
||||
# Public members that should be visible through Import-Module
|
||||
|
||||
Export-ModuleMember -Function New-MSApiClient, Invoke-MSApiCall, Start-MSApiCall, Stop-MSApiCall -Alias New-MSSPEApiClient, Invoke-MSSPEApiCall, Start-MSSPEApiCall, Stop-MSSPEApiCall, New-MSSApiClient, Invoke-MSSApiCall, Start-MSSApiCall
|
||||
292
current/DD-Core/Modules/MoveOrCopy-Item-withLogging.psm1
Normal file
292
current/DD-Core/Modules/MoveOrCopy-Item-withLogging.psm1
Normal file
@@ -0,0 +1,292 @@
|
||||
Function MoveOrCopy-Item-withLogging {
|
||||
|
||||
<#
|
||||
.SYNOPSIS
|
||||
Function will copy or move File(s).
|
||||
|
||||
.DESCRIPTION
|
||||
If File already exists in target Path new File will get a Version ~2.
|
||||
|
||||
.REQUIREMENT General
|
||||
PowerShell V2
|
||||
|
||||
.REQUIREMENT Assembly
|
||||
<NONE>
|
||||
|
||||
.REQUIREMENT Variables
|
||||
Datei, Datei1, DateiName, DateiEndung, DateiTest, DateiVersion,ZielPath, MoveorCopy, SourcePath
|
||||
|
||||
.REQUIREMENT Variables preSet
|
||||
VersionSeperator
|
||||
|
||||
.REQUIREMENT Functions
|
||||
Write-Logfile
|
||||
|
||||
.VERSION
|
||||
1.2.1.2 / 23.02.2024
|
||||
|
||||
.PARAMETER SourceFile
|
||||
Give the full Path and Filename to one File.
|
||||
|
||||
.PARAMETER DestinationPath
|
||||
Give the Target Path you want to move or copy the specified File.
|
||||
|
||||
.PARAMETER Action
|
||||
Determine which Action you want to perform <Copy|Move>. Default Value is "Copy".
|
||||
|
||||
.PARAMETER NewFileName
|
||||
Give a String, which get the new Name of the File you are moving.
|
||||
|
||||
.PARAMETER NewFileName_prefix
|
||||
Give a String, which get the new prefix Name of the File you are moving.
|
||||
|
||||
.PARAMETER NewFileName_suffix
|
||||
Give a String, which get the new suffix Name of the File you are moving.
|
||||
|
||||
.EXAMPLE
|
||||
MoveOrCopy-Item-withLogging -SourceFile "E:\Quellpfad\Test.txt" -DestinationPath "E:\Zielpfad" -move_or_copy move
|
||||
|
||||
.EXAMPLE
|
||||
MoveOrCopy-Item-withLogging -SourceFile "E:\Quellpfad\Test.txt" -DestinationPath "E:\Zielpfad" -move_or_copy copy
|
||||
#>
|
||||
|
||||
Param (
|
||||
|
||||
[Parameter(Position=0,Mandatory=$True,HelpMessage='Give the full Path and Filename to one File.')]
|
||||
[ValidateNotNullOrEmpty()]
|
||||
[String]$SourceFile,
|
||||
|
||||
[Parameter(Mandatory=$True,HelpMessage='Give the Target Path you want to move or copy the specified File.')]
|
||||
[ValidateNotNullOrEmpty()]
|
||||
[String]$DestinationPath,
|
||||
|
||||
[Parameter(Mandatory=$True,HelpMessage='Determine which Action you want to perform <Copy|Move>. Default Value is "Copy".')]
|
||||
[ValidateSet("copy","move")]
|
||||
[String]$Action="copy",
|
||||
|
||||
[Parameter(Mandatory=$False,HelpMessage='Give a String, which get the new Name of the File you are moving.')]
|
||||
[ValidateNotNullOrEmpty()]
|
||||
[String]$NewFileName,
|
||||
|
||||
[Parameter(Mandatory=$False,HelpMessage='Give a String, which get the new prefix Name of the File you are moving.')]
|
||||
[ValidateNotNullOrEmpty()]
|
||||
[String]$NewFileName_prefix,
|
||||
|
||||
[Parameter(Mandatory=$False,HelpMessage='Give a String, which get the new suffix Name of the File you are moving.')]
|
||||
[ValidateNotNullOrEmpty()]
|
||||
[String]$NewFileName_suffix
|
||||
|
||||
) #end param
|
||||
|
||||
#Clear Error Variable
|
||||
$error.clear()
|
||||
|
||||
#Checking if "Write-LogFile" Module was loaded
|
||||
IF (Get-Module -Name "Write-LogFile") {
|
||||
|
||||
IF ((Test-Path $SourceFile -PathType Leaf) -eq $True) {
|
||||
|
||||
Write-Logfile -LogLine ""
|
||||
$SourcePath = ([System.IO.Path]::GetDirectoryName($SourceFile).ToString())
|
||||
$FileName = ([System.IO.Path]::GetFileName($SourceFile).ToString())
|
||||
$FileName_noExt = ([System.IO.Path]::GetFileNameWithoutExtension($SourceFile).ToString())
|
||||
$FileExtension = ([System.IO.Path]::GetExtension($SourceFile).ToString())
|
||||
|
||||
IF (!$VersionSeperator) {
|
||||
|
||||
Write-Logfile -LogLine "ERROR: Wrong Function call."
|
||||
Write-Logfile -LogLine "INFO: Variable VersionSeperator is not valid."
|
||||
Write-Logfile -LogLine "Application was unplannd terminated."
|
||||
EXIT
|
||||
|
||||
} #end if
|
||||
|
||||
IF ($newfilename) {
|
||||
|
||||
Write-Logfile -LogLine "New Filename ($newfilename) will replace the old one."
|
||||
Set-Variable -Name Filename -Value ($newfilename+$FileExtension)
|
||||
Set-Variable -Name Filename_noExt -Value ($newfilename)
|
||||
|
||||
} #end if
|
||||
|
||||
IF ($newfilename_prefix) {
|
||||
|
||||
Write-Logfile -LogLine "New prefix ($newfilename_prefix) has been set for file."
|
||||
Set-Variable -Name Filename -Value (($newfilename_prefix+$FileSeperator+$Filename) -replace "$FileSeperator$FileSeperator","$FileSeperator")
|
||||
Set-Variable -Name Filename_noExt -Value (($newfilename_prefix+$FileSeperator+$Filename_noExt) -replace "$FileSeperator$FileSeperator","$FileSeperator")
|
||||
|
||||
} #end if
|
||||
|
||||
IF ($newfilename_suffix) {
|
||||
|
||||
Write-Logfile -LogLine "New suffix ($newfilename_suffix) has been set for file."
|
||||
Set-Variable -Name FileName -Value (($Filename -split "$VersionSeperator")[0])
|
||||
Set-Variable -Name FileName_noExt -Value (($Filename_noExt -split "$VersionSeperator")[0])
|
||||
Set-Variable -Name Filename -Value (($Filename_noExt+$FileSeperator+$newfilename_suffix+$FileExtension) -replace "$FileSeperator$FileSeperator","$FileSeperator")
|
||||
Set-Variable -Name Filename_noExt -Value (($Filename_noExt+$FileSeperator+$newfilename_suffix) -replace "$FileSeperator$FileSeperator","$FileSeperator")
|
||||
|
||||
} #end if
|
||||
|
||||
# Does file already exist in the target directory?
|
||||
$FileTest = Test-Path "$DestinationPath\$FileName" -PathType Leaf
|
||||
|
||||
IF ($Filetest -eq $True) {
|
||||
|
||||
Write-Logfile -LogLine "The File ($Filename) already exists in the target directory, starting Version Check."
|
||||
|
||||
[String]$FileNameSplit = ($Filename_noExt -split $VersionSeperator)
|
||||
[Int]$FileVersion = 0
|
||||
|
||||
IF ($FileNameSplit[1] -is [Int]) {
|
||||
[Int]$FileVersion = $FileNameSplit[1]
|
||||
} #end if
|
||||
|
||||
# Has the new file already a Version tag?
|
||||
IF ($FileVersion -eq 0) {
|
||||
|
||||
Write-Host "DEBUG Info: Sourcefile includes no VersionSeperator."
|
||||
# To skip Version ~1.
|
||||
$FileVersion++
|
||||
|
||||
} #end if
|
||||
|
||||
ELSE {
|
||||
|
||||
Write-Host "DEBUG Info: Sourcefile includes VersionSeperator."
|
||||
$FileName_noExt = $FilenameSplit[0]
|
||||
|
||||
} #end else
|
||||
|
||||
DO {
|
||||
|
||||
Write-Host "DEBUG Info: Count file version:" $FileVersion; $FileVersion++
|
||||
}
|
||||
|
||||
WHILE (($Filetest = Test-Path -Path "$DestinationPath\$FileName_noExt$VersionSeperator$FileVersion$FileExtension") -eq 'True')
|
||||
|
||||
# code block for the copy or move process
|
||||
Try {
|
||||
|
||||
Set-Variable -Name FileHash_befor -Value (Get-FileHash -Path "$SourceFile" -Algorithm SHA512 | Select-Object Hash | Foreach-Object {$_ -replace "@{Hash=", ""} | Foreach-Object {$_ -replace "}", ""})
|
||||
Set-Variable -Name FileTemp -Value (Copy-Item -Path "$SourceFile" -Destination "$DestinationPath\$Timestamp3`_$FileName" -PassThru -Force)
|
||||
Write-Logfile -LogLine "The $Action command has been completed."
|
||||
Set-Variable -Name FileFinal -Value (Rename-Item -Path "$FileTemp" -NewName "$FileName_noExt$VersionSeperator$FileVersion$FileExtension" -PassThru -Force )
|
||||
Write-Logfile -LogLine "File was renamed to: $FileName_noExt$VersionSeperator$FileVersion$FileExtension, and is now transferd to: $DestinationPath."
|
||||
Set-Variable -Name FileHash_after -Value (Get-FileHash -Path "$FileFinal" -Algorithm SHA512 | Select-Object Hash | Foreach-Object {$_ -replace "@{Hash=", ""} | Foreach-Object {$_ -replace "}", ""})
|
||||
Write-Host "DEBUG Info: Hash Value before: $FileHash_befor"
|
||||
Write-Host "DEBUG Info: Hash Value after: $FileHash_after"
|
||||
|
||||
IF ($Action -eq 'move') {
|
||||
|
||||
Write-Host "DEBUG Info: Moving action was choosen, will delete source file."
|
||||
|
||||
IF ($FileHash_befor -eq $FileHash_after) {
|
||||
|
||||
Try {
|
||||
|
||||
Remove-Item -Path "$SourceFile" -Force
|
||||
|
||||
} #end try
|
||||
|
||||
Catch {
|
||||
|
||||
Write-Logfile -LogLine "Error removing the source file."
|
||||
|
||||
} #end catch
|
||||
|
||||
} #end if
|
||||
|
||||
ELSE {
|
||||
|
||||
Write-Logfile -LogLine "HASH Value does mismatch!"
|
||||
Write-Logfile -LogLine "Aborting delete operation!"
|
||||
|
||||
} #end else
|
||||
|
||||
} #end if
|
||||
|
||||
Return $FileFinal.Fullname
|
||||
|
||||
} #end try
|
||||
|
||||
Catch {
|
||||
|
||||
Write-Logfile -LogLine "Error at $Action command, processing file: $SourceFile"
|
||||
Write-Logfile -LogLine "Please check your privileges"
|
||||
exit
|
||||
|
||||
} #end catch
|
||||
|
||||
} #end if
|
||||
|
||||
ELSE {
|
||||
|
||||
Set-Variable -Name FileHash_befor -Value (Get-FileHash -Path "$SourceFile" -Algorithm SHA512 | Select-Object Hash | Foreach-Object {$_ -replace "@{Hash=", ""} | Foreach-Object {$_ -replace "}", ""})
|
||||
Set-Variable -Name FileFinal -Value (Copy-Item -Path "$SourceFile" -Destination "$DestinationPath\$FileName" -PassThru -Force)
|
||||
Set-Variable -Name FileHash_after -Value (Get-FileHash -Path "$FileFinal" -Algorithm SHA512 | Select-Object Hash | Foreach-Object {$_ -replace "@{Hash=", ""} | Foreach-Object {$_ -replace "}", ""})
|
||||
Write-Logfile -LogLine "The $Action command has been completed for file: $SourceFile"
|
||||
Write-Logfile -LogLine "And is now transferd to: $DestinationPath"
|
||||
Write-Host "DEBUG Info: Hash Value before: $FileHash_befor"
|
||||
Write-Host "DEBUG Info: Hash Value after: $FileHash_after"
|
||||
|
||||
IF ($Action -eq 'move') {
|
||||
|
||||
Write-Host "DEBUG Info: Moving action was choosen, will delete source file."
|
||||
|
||||
IF ($FileHash_befor -eq $FileHash_after) {
|
||||
|
||||
Try {
|
||||
|
||||
Remove-Item -Path "$SourceFile" -Force
|
||||
|
||||
} #end try
|
||||
|
||||
Catch {
|
||||
|
||||
Write-Logfile -LogLine "Error removing the source file."
|
||||
|
||||
} #end catch
|
||||
|
||||
} #end if
|
||||
|
||||
ELSE {
|
||||
|
||||
Write-Logfile -LogLine "HASH Value does mismatch!"
|
||||
Write-Logfile -LogLine "Aborting delete operation!"
|
||||
|
||||
} #end else
|
||||
|
||||
} #end if
|
||||
|
||||
ELSEIF ($Action -eq 'copy') {
|
||||
|
||||
Write-Host "DEBUG Info: Coping action was choosen, will not delete original file."
|
||||
|
||||
} #end elseif
|
||||
|
||||
Return $FileFinal.Fullname
|
||||
|
||||
} #end else
|
||||
|
||||
} #end if
|
||||
|
||||
ELSE {
|
||||
|
||||
Write-LogFile -LogLine "Cannot find Source File!"
|
||||
Return $False
|
||||
|
||||
} #end else
|
||||
|
||||
} #end if
|
||||
|
||||
ELSE {
|
||||
|
||||
Write-Host ""
|
||||
Write-Host "DEBUG Info: Write-LogFile - Module does not exist!"
|
||||
Write-Host "DEBUG Info: Please load the Module and try again, running this Function/Module!"
|
||||
Write-Host "DEBUG Info: Exiting, because of this Issue."
|
||||
EXIT
|
||||
|
||||
} #end else
|
||||
|
||||
} #end function
|
||||
BIN
current/DD-Core/Modules/New-ComplexPassword-withLogging.psm1
Normal file
BIN
current/DD-Core/Modules/New-ComplexPassword-withLogging.psm1
Normal file
Binary file not shown.
BIN
current/DD-Core/Modules/Read-ConfigFile.psm1
Normal file
BIN
current/DD-Core/Modules/Read-ConfigFile.psm1
Normal file
Binary file not shown.
BIN
current/DD-Core/Modules/Read-ConfigFile2.psm1
Normal file
BIN
current/DD-Core/Modules/Read-ConfigFile2.psm1
Normal file
Binary file not shown.
114
current/DD-Core/Modules/Remove-Item-withLogging.psm1
Normal file
114
current/DD-Core/Modules/Remove-Item-withLogging.psm1
Normal file
@@ -0,0 +1,114 @@
|
||||
Function Remove-Item-withLogging {
|
||||
|
||||
<#
|
||||
.SYNOPSIS
|
||||
Function will delete Items selected by Path, Name and Age.
|
||||
|
||||
.DESCRIPTION
|
||||
Function will delete Items selected by Path, Name and Age, with logging this.
|
||||
For a successful performed deletion, Function will Return $True, for unccessful $False.
|
||||
|
||||
.REQUIREMENT General
|
||||
PowerShell V2
|
||||
|
||||
.REQUIREMENT Variables
|
||||
Path, FileKeepTime, FileBaseName, Item, Items
|
||||
|
||||
.REQUIREMENT Assembly
|
||||
<NONE>
|
||||
|
||||
.REQUIREMENT Functions
|
||||
Write-LogFile
|
||||
|
||||
.VERSION
|
||||
Number: 1.2.0.0 / Date: 25.06.2025
|
||||
|
||||
.PARAMETER Path
|
||||
Give the Full Path, where the Item(s) located, which should be deleted.
|
||||
|
||||
.PARAMETER FileKeepTime
|
||||
Give the time in Days, which Items should be deleted, which are older than...
|
||||
|
||||
.PARAMETER FileBaseName
|
||||
Give the <Filename> which will be selected, the Item(s) to delete. Given <Filename> will be set with Wildcards: *<Filename>*.
|
||||
|
||||
.PARAMETER FileExtension
|
||||
Give the FileExtension which Files will be selected for deletion (Default: log).
|
||||
|
||||
.EXAMPLE
|
||||
Remove-Item-withLogging -Path "E:\LogFiles" -FileKeepTime 5 -FileBaseName Filename
|
||||
#>
|
||||
|
||||
[cmdletbinding()]
|
||||
|
||||
Param (
|
||||
|
||||
[Parameter(Mandatory=$True,HelpMessage='Give the Full Path, where the Item(s) located, which should be deleted.')]
|
||||
[ValidateNotNullOrEmpty()]
|
||||
[String]$Path=$NULL,
|
||||
|
||||
[Parameter(Mandatory=$True,HelpMessage='Give the time in Days, which Item(s) should be deleted, which are older than...')]
|
||||
[ValidateRange(0,1000)]
|
||||
[Int]$FileKeepTime=$NULL,
|
||||
|
||||
[Parameter(Mandatory=$True,HelpMessage='Give the Filename which will be selected, the Item(s) to delete. Given <Filename> will be set with Wildcards: *<Filename>*.')]
|
||||
[ValidateNotNullOrEmpty()]
|
||||
[String]$FileBaseName=$NULL,
|
||||
|
||||
[Parameter(Mandatory=$False,HelpMessage='Give the FileExtension which Files will be selected for deletion (Default: log).')]
|
||||
[ValidateNotNullOrEmpty()]
|
||||
[String]$FileExtension="log"
|
||||
|
||||
) #end param
|
||||
|
||||
#Checking if "Write-LogFile" Module was loaded
|
||||
IF (Get-Module -Name "Write-LogFile") {
|
||||
|
||||
IF ($FileKeepTime -gt 0) {
|
||||
|
||||
Write-Logfile -LogLine "Files should be removed which are older than $FileKeepTime Day(s)."
|
||||
[Array]$Items = (Get-ChildItem -Path "$Path\*" -Filter *.$FileExtension | where {$_.Name -like "*$FileBaseName*" -and $_.lastwritetime -lt $((Get-Date).AddDays(-$FileKeepTime)) -and -not $_.psiscontainer})
|
||||
|
||||
IF ($Items.count -le 0) {
|
||||
|
||||
Write-Logfile -LogLine "Found no old Files."
|
||||
Return $False
|
||||
|
||||
} ELSE {
|
||||
|
||||
Write-Logfile -LogLine "Deleting old Files (Found: $($Items.count)) :"
|
||||
|
||||
Try {
|
||||
|
||||
$Items | Remove-Item -Force -Verbose -ErrorAction Stop
|
||||
Write-Logfile -LogLine "Files were removed!"
|
||||
Return $True
|
||||
|
||||
} Catch {
|
||||
|
||||
Write-Logfile -LogLine "Cannot remove Files!"
|
||||
Write-Logfile -LogLine "Please check your privileges!"
|
||||
Return $False
|
||||
|
||||
} #end catch
|
||||
|
||||
} #end else
|
||||
|
||||
} ELSE {
|
||||
|
||||
Write-Logfile -LogLine "You disabled File deletion, they all will be kept."
|
||||
Return $False
|
||||
|
||||
} #end else
|
||||
|
||||
} ELSE {
|
||||
|
||||
Write-Host ""
|
||||
Write-Host "DEBUG Info: Write-LogFile - Module does not exist!"
|
||||
Write-Host "DEBUG Info: Please load the Module and try again, running this Function/Module!"
|
||||
Write-Host "DEBUG Info: Exiting, because of this Issue."
|
||||
EXIT
|
||||
|
||||
} #end else
|
||||
|
||||
} #end function
|
||||
BIN
current/DD-Core/Modules/Remove-SpecialCharacter-withLogging.psm1
Normal file
BIN
current/DD-Core/Modules/Remove-SpecialCharacter-withLogging.psm1
Normal file
Binary file not shown.
367
current/DD-Core/Modules/Restart-windreamClient-withLogging.psm1
Normal file
367
current/DD-Core/Modules/Restart-windreamClient-withLogging.psm1
Normal file
@@ -0,0 +1,367 @@
|
||||
Function Restart-windreamClient-withLogging {
|
||||
|
||||
<#
|
||||
.SYNOPSIS
|
||||
Restart windream Client Components via COM Interface
|
||||
|
||||
.DESCRIPTION
|
||||
If Connection to the windream Server gets interrupted (network loss, eg.), it is neccessery to restart the Client Components.
|
||||
Otherwise you can Stop or Start Client Components with this Function.
|
||||
For a successful performed Action, Function will Return $True, for unccessful $False.
|
||||
|
||||
.REQUIREMENT General
|
||||
PowerShell V3, windream Client Connectivity (>=V3.6)
|
||||
|
||||
.REQUIREMENT Assembly
|
||||
<NONE>
|
||||
|
||||
.REQUIREMENT Variables
|
||||
windreamControlCenter, windreamIndexService, ServiceTest, Action
|
||||
|
||||
.REQUIREMENT Variables preSet
|
||||
<NONE>
|
||||
|
||||
.REQUIREMENT Functions
|
||||
Write-LogFile
|
||||
|
||||
.VERSION
|
||||
1.2.0.0 / 28.09.2018
|
||||
|
||||
.PARAMETER Action
|
||||
Determine which Action you want to perform <Stop|Restart|Start>. Default Value is <Restart>.
|
||||
|
||||
.PARAMETER ServiceTest
|
||||
Set on $True, if Function should check for a running windream vfs Client Service. If it is and Service is stopped, Function will try to start Service. Default Value is $True.
|
||||
|
||||
.PARAMETER StartTimeout
|
||||
|
||||
.EXAMPLE
|
||||
Restart-windreamClient
|
||||
|
||||
.EXAMPLE
|
||||
Restart-windreamClient -Action Start
|
||||
|
||||
.EXAMPLE
|
||||
Restart-windreamClient -Action Start -ServiceTest $False
|
||||
#>
|
||||
|
||||
Param (
|
||||
|
||||
[Parameter(Position=0,Mandatory=$False,HelpMessage='Determine which Action you want to perform <Stop|Restart|Start>. Default Value is "Restart".')]
|
||||
[ValidateSet("Stop","Restart","Start")]
|
||||
[String]$Action="Restart",
|
||||
|
||||
[Parameter(Position=1,Mandatory=$False,HelpMessage='Set on $True, if Function should check for a running windream vfs Client Service. If it is and Service is stopped, Function will try to start Service. Default Value is $True.')]
|
||||
[ValidateSet($True,$False)]
|
||||
[Switch]$ServiceTest=$True,
|
||||
|
||||
[Parameter(Position=2,Mandatory=$False,HelpMessage='Give the Timeout limit in Seconds for the windream Start/Restart procedure, ValidateRange(1 - 300). Default Value is "10".')]
|
||||
[ValidateRange(1,300)]
|
||||
[INT]$StartTimeout=10
|
||||
|
||||
) #end param
|
||||
|
||||
#Clear Error Variable
|
||||
$error.clear()
|
||||
|
||||
#Checking if "Write-LogFile" Module was loaded
|
||||
IF (Get-Module -Name "Write-LogFile") {
|
||||
|
||||
Write-Host "DEBUG Info: Write-LogFile - Module exists."
|
||||
|
||||
#If Servie Test was enabled (by default true) check if windream vfs Service is running
|
||||
IF ($ServiceTest -eq $True) {
|
||||
|
||||
Write-LogFile -LogLine " "
|
||||
Write-LogFile -LogLine "Service Test is enabled!"
|
||||
|
||||
#Check if windream vfs Service is installed
|
||||
Try {
|
||||
|
||||
[Object]$ServiceTest = $NULL
|
||||
[Object]$ServiceTest = Get-Service -Name vfssvc -ErrorAction Stop
|
||||
Write-LogFile -LogLine "Found Service: vfssvc"
|
||||
Write-LogFile -LogLine "Service is currently: $((Get-Service -Name vfssvc).Status)"
|
||||
|
||||
} #end try
|
||||
|
||||
Catch {
|
||||
|
||||
Write-LogFile -LogLine "WARNING: windream Client seems not to be installed completely."
|
||||
Write-LogFile -LogLine "Missing Service: vfssvc"
|
||||
|
||||
} #end catch
|
||||
|
||||
} #end if
|
||||
|
||||
#If Servie Test is disabled
|
||||
ELSE {
|
||||
|
||||
Write-LogFile -LogLine " "
|
||||
Write-LogFile -LogLine "Service Test is disabled!"
|
||||
|
||||
} #end else
|
||||
|
||||
#Try to create windream Objects
|
||||
Try {
|
||||
|
||||
[Object]$windreamControlCenter = New-Object -ComObject "Wmcc.ControlCenter" -ErrorAction Stop
|
||||
[Object]$windreamIndexService = New-Object -ComObject "WMIndexServer.WMIdxSvControl" -ErrorAction Stop
|
||||
|
||||
} #end try
|
||||
|
||||
Catch {
|
||||
|
||||
Write-Logfile -LogLine "Cannot create Object from windream Class Wmcc.ControlCenter or WMIndexServer.WMIdxSvControl!"
|
||||
Write-Logfile -LogLine $Error
|
||||
Return $False
|
||||
|
||||
} #end catch
|
||||
|
||||
#If Function was called to Stop windream Client Components
|
||||
IF ($Action -like "Stop") {
|
||||
|
||||
Write-LogFile -LogLine "Stop windream Client Components."
|
||||
|
||||
#Try to stop windream Client Components
|
||||
Try {
|
||||
|
||||
Write-Logfile -LogLine "Stopping windream Client Components!"
|
||||
$windreamControlCenter.StartVFSService(0) | Out-Null
|
||||
$windreamIndexService.Shutdown() | Out-Null
|
||||
$windreamControlCenter.ExitCC(0) | Out-Null
|
||||
|
||||
} #end try
|
||||
|
||||
Catch {
|
||||
|
||||
Write-Logfile -LogLine "Cannot stop windream Client Components!"
|
||||
Write-Logfile -LogLine $Error
|
||||
Return $False
|
||||
|
||||
} #end catch
|
||||
|
||||
Return $True
|
||||
|
||||
} #end if
|
||||
|
||||
#If Function was called to Restart windream Client Components and Service Test was enabled
|
||||
ELSEIF (($Action -like "Restart") -and ($ServiceTest -is [Object])) {
|
||||
|
||||
#Checking if windream vfs Service is running
|
||||
IF ((Get-Service -Name vfssvc).Status -ne 'running') {
|
||||
|
||||
Write-LogFile -LogLine "Warning: windream vfs Service is not running!"
|
||||
|
||||
Try {
|
||||
|
||||
Write-Logfile -LogLine "Trying to Start/Restart the windream vfs Service!"
|
||||
Stop-Service -Name vfssvc -ErrorAction SilentlyContinue
|
||||
Start-Service -Name vfssvc -ErrorAction Stop
|
||||
|
||||
} #end try
|
||||
|
||||
Catch {
|
||||
|
||||
Write-Logfile -LogLine "Cannot Start/Restart windream vfs Service!"
|
||||
Write-Logfile -LogLine $Error
|
||||
Return $False
|
||||
|
||||
} #end catch
|
||||
|
||||
} #end if
|
||||
|
||||
ELSE {
|
||||
|
||||
Write-Logfile -LogLine " "
|
||||
Write-LogFile -LogLine "windream vfs Service is running!"
|
||||
|
||||
} #end else
|
||||
|
||||
Write-LogFile -LogLine "Restart windream Client Components."
|
||||
|
||||
#Try to stop windream Client Components
|
||||
Try {
|
||||
|
||||
Write-Logfile -LogLine "Stopping windream Client Components!"
|
||||
$windreamControlCenter.StartVFSService(0) | Out-Null
|
||||
$windreamIndexService.Shutdown() | Out-Null
|
||||
|
||||
} #end try
|
||||
|
||||
Catch {
|
||||
|
||||
Write-Logfile -LogLine "Cannot stop windream Client Components!"
|
||||
Write-Logfile -LogLine $Error
|
||||
Return $False
|
||||
|
||||
} #end catch
|
||||
|
||||
#Try to start windream Client Components
|
||||
Try {
|
||||
|
||||
Write-Logfile -LogLine "Starting windream Client Components!"
|
||||
$windreamControlCenter.StartVFSService(1) | Wait-Process -Timeout $StartTimeout | Out-Null
|
||||
$windreamIndexService.Start() | Out-Null
|
||||
|
||||
} #end try
|
||||
|
||||
Catch {
|
||||
|
||||
Write-Logfile -LogLine "Cannot start windream Client Components!"
|
||||
Write-Logfile -LogLine $Error
|
||||
Return $False
|
||||
|
||||
} #end catch
|
||||
|
||||
Return $True
|
||||
|
||||
} #end elseif
|
||||
|
||||
#If Function was called to Restart windream Client Components and Service Test was disabled
|
||||
ELSEIF (($Action -like "Restart") -and ($ServiceTest -is [Switch])) {
|
||||
|
||||
Write-LogFile -LogLine "Restart windream Client Components."
|
||||
|
||||
#Try to stop windream Client Components
|
||||
Try {
|
||||
|
||||
Write-Logfile -LogLine "Stopping windream Client Components!"
|
||||
$windreamControlCenter.StartVFSService(0) | Out-Null
|
||||
$windreamIndexService.Shutdown() | Out-Null
|
||||
|
||||
} #end try
|
||||
|
||||
Catch {
|
||||
|
||||
Write-Logfile -LogLine "Cannot stop windream Client Components!"
|
||||
Write-Logfile -LogLine $Error
|
||||
Return $False
|
||||
|
||||
} #end catch
|
||||
|
||||
#Try to start windream Client Components
|
||||
Try {
|
||||
|
||||
Write-Logfile -LogLine "Starting windream Client Components!"
|
||||
$windreamControlCenter.StartVFSService(1) | Wait-Process -Timeout $StartTimeout | Out-Null
|
||||
$windreamIndexService.Start() | Out-Null
|
||||
|
||||
} #end try
|
||||
|
||||
Catch {
|
||||
|
||||
Write-Logfile -LogLine "Cannot start windream Client Components!"
|
||||
Write-Logfile -LogLine $Error
|
||||
Return $False
|
||||
|
||||
} #end catch
|
||||
|
||||
Return $True
|
||||
|
||||
} #end elseif
|
||||
|
||||
#If Function was called to Start windream Client Components and Service Test was enabled
|
||||
ELSEIF (($Action -like "Start") -and ($ServiceTest -is [Object])) {
|
||||
|
||||
#Checking if windream vfs Service is running
|
||||
IF ((Get-Service -Name vfssvc).Status -ne 'running') {
|
||||
|
||||
Write-LogFile -LogLine "Warning: windream vfs Service is not running!"
|
||||
|
||||
Try {
|
||||
|
||||
Write-Logfile -LogLine "Trying to Start/Restart the windream vfs Service!"
|
||||
Stop-Service -Name vfssvc -ErrorAction SilentlyContinue
|
||||
Start-Service -Name vfssvc -ErrorAction Stop
|
||||
|
||||
} #end try
|
||||
|
||||
Catch {
|
||||
|
||||
Write-Logfile -LogLine "Cannot Start/Restart windream vfs Service!"
|
||||
Write-Logfile -LogLine $Error
|
||||
Return $False
|
||||
|
||||
} #end catch
|
||||
|
||||
} #end if
|
||||
|
||||
ELSE {
|
||||
|
||||
Write-Logfile -LogLine " "
|
||||
Write-LogFile -LogLine "windream vfs Service is running!"
|
||||
|
||||
} #end else
|
||||
|
||||
Write-LogFile -LogLine "Start windream Client Components."
|
||||
|
||||
#Try to start windream Client Components
|
||||
Try {
|
||||
|
||||
Write-Logfile -LogLine "Starting windream Client Components!"
|
||||
$windreamControlCenter.StartVFSService(1) | Wait-Process -Timeout $StartTimeout | Out-Null
|
||||
$windreamIndexService.Start() | Out-Null
|
||||
|
||||
} #end try
|
||||
|
||||
Catch {
|
||||
|
||||
Write-Logfile -LogLine "Cannot start windream Client Components!"
|
||||
Write-Logfile -LogLine $Error
|
||||
Return $False
|
||||
|
||||
} #end catch
|
||||
|
||||
Return $True
|
||||
|
||||
} #end elseif
|
||||
|
||||
#If Function was called to Start windream Client Components and Service Test was disabled
|
||||
ELSEIF (($Action -like "Start") -and ($ServiceTest -is [Switch])) {
|
||||
|
||||
Write-LogFile -LogLine "Start windream Client Components."
|
||||
|
||||
#Try to start windream Client Components
|
||||
Try {
|
||||
|
||||
Write-Logfile -LogLine "Starting windream Client Components!"
|
||||
$windreamControlCenter.StartVFSService(1) | Wait-Process -Timeout $StartTimeout | Out-Null
|
||||
$windreamIndexService.Start() | Out-Null
|
||||
|
||||
} #end try
|
||||
|
||||
Catch {
|
||||
|
||||
Write-Logfile -LogLine "Cannot start windream Client Components!"
|
||||
Write-Logfile -LogLine $Error
|
||||
Return $False
|
||||
|
||||
} #end catch
|
||||
|
||||
Return $True
|
||||
|
||||
} #end elseif
|
||||
|
||||
#If Function was called invalid Values, which should be not possible be the ValidateSet of the Function Parameters
|
||||
ELSE {
|
||||
|
||||
Write-Logfile -LogLine "Function Call went wrong, please check the ValidateSet"
|
||||
Write-Logfile -LogLine $Error
|
||||
Return $False
|
||||
|
||||
} #end else
|
||||
|
||||
} #end if
|
||||
|
||||
ELSE {
|
||||
|
||||
Write-Host ""
|
||||
Write-Host "DEBUG Info: Write-LogFile - Module does not exist!"
|
||||
Write-Host "DEBUG Info: Please load the Module and try again, running this Function/Module!"
|
||||
Write-Host "DEBUG Info: Exiting, because of this Issue."
|
||||
EXIT
|
||||
|
||||
} #end else
|
||||
|
||||
} #end function
|
||||
367
current/DD-Core/Modules/Start-ErrorEscalation.psm1
Normal file
367
current/DD-Core/Modules/Start-ErrorEscalation.psm1
Normal file
@@ -0,0 +1,367 @@
|
||||
Function Restart-windreamClient-withLogging {
|
||||
|
||||
<#
|
||||
.SYNOPSIS
|
||||
Restart windream Client Components via COM Interface
|
||||
|
||||
.DESCRIPTION
|
||||
If Connection to the windream Server gets interrupted (network loss, eg.), it is neccessery to restart the Client Components.
|
||||
Otherwise you can Stop or Start Client Components with this Function.
|
||||
For a successful performed Action, Function will Return $True, for unccessful $False.
|
||||
|
||||
.REQUIREMENT General
|
||||
PowerShell V3, windream Client Connectivity (>=V3.6)
|
||||
|
||||
.REQUIREMENT Assembly
|
||||
<NONE>
|
||||
|
||||
.REQUIREMENT Variables
|
||||
windreamControlCenter, windreamIndexService, ServiceTest, Action
|
||||
|
||||
.REQUIREMENT Variables preSet
|
||||
<NONE>
|
||||
|
||||
.REQUIREMENT Functions
|
||||
Write-LogFile
|
||||
|
||||
.VERSION
|
||||
1.2.0.0 / 28.09.2018
|
||||
|
||||
.PARAMETER Action
|
||||
Determine which Action you want to perform <Stop|Restart|Start>. Default Value is <Restart>.
|
||||
|
||||
.PARAMETER ServiceTest
|
||||
Set on $True, if Function should check for a running windream vfs Client Service. If it is and Service is stopped, Function will try to start Service. Default Value is $True.
|
||||
|
||||
.PARAMETER StartTimeout
|
||||
|
||||
.EXAMPLE
|
||||
Restart-windreamClient
|
||||
|
||||
.EXAMPLE
|
||||
Restart-windreamClient -Action Start
|
||||
|
||||
.EXAMPLE
|
||||
Restart-windreamClient -Action Start -ServiceTest $False
|
||||
#>
|
||||
|
||||
Param (
|
||||
|
||||
[Parameter(Position=0,Mandatory=$False,HelpMessage='Determine which Action you want to perform <Stop|Restart|Start>. Default Value is "Restart".')]
|
||||
[ValidateSet("Stop","Restart","Start")]
|
||||
[String]$Action="Restart",
|
||||
|
||||
[Parameter(Position=1,Mandatory=$False,HelpMessage='Set on $True, if Function should check for a running windream vfs Client Service. If it is and Service is stopped, Function will try to start Service. Default Value is $True.')]
|
||||
[ValidateSet($True,$False)]
|
||||
[Switch]$ServiceTest=$True,
|
||||
|
||||
[Parameter(Position=2,Mandatory=$False,HelpMessage='Give the Timeout limit in Seconds for the windream Start/Restart procedure, ValidateRange(1 - 300). Default Value is "10".')]
|
||||
[ValidateRange(1,300)]
|
||||
[INT]$StartTimeout=10
|
||||
|
||||
) #end param
|
||||
|
||||
#Clear Error Variable
|
||||
$error.clear()
|
||||
|
||||
#Checking if "Write-LogFile" Module was loaded
|
||||
IF (Get-Module -Name "Write-LogFile") {
|
||||
|
||||
Write-Host "DEBUG Info: Write-LogFile - Module exists."
|
||||
|
||||
#If Servie Test was enabled (by default true) check if windream vfs Service is running
|
||||
IF ($ServiceTest -eq $True) {
|
||||
|
||||
Write-LogFile -LogLine " "
|
||||
Write-LogFile -LogLine "Service Test is enabled!"
|
||||
|
||||
#Check if windream vfs Service is installed
|
||||
Try {
|
||||
|
||||
[Object]$ServiceTest = $NULL
|
||||
[Object]$ServiceTest = Get-Service -Name vfssvc -ErrorAction Stop
|
||||
Write-LogFile -LogLine "Found Service: vfssvc"
|
||||
Write-LogFile -LogLine "Service is currently: $((Get-Service -Name vfssvc).Status)"
|
||||
|
||||
} #end try
|
||||
|
||||
Catch {
|
||||
|
||||
Write-LogFile -LogLine "WARNING: windream Client seems not to be installed completely."
|
||||
Write-LogFile -LogLine "Missing Service: vfssvc"
|
||||
|
||||
} #end catch
|
||||
|
||||
} #end if
|
||||
|
||||
#If Servie Test is disabled
|
||||
ELSE {
|
||||
|
||||
Write-LogFile -LogLine " "
|
||||
Write-LogFile -LogLine "Service Test is disabled!"
|
||||
|
||||
} #end else
|
||||
|
||||
#Try to create windream Objects
|
||||
Try {
|
||||
|
||||
[Object]$windreamControlCenter = New-Object -ComObject "Wmcc.ControlCenter" -ErrorAction Stop
|
||||
[Object]$windreamIndexService = New-Object -ComObject "WMIndexServer.WMIdxSvControl" -ErrorAction Stop
|
||||
|
||||
} #end try
|
||||
|
||||
Catch {
|
||||
|
||||
Write-Logfile -LogLine "Cannot create Object from windream Class Wmcc.ControlCenter or WMIndexServer.WMIdxSvControl!"
|
||||
Write-Logfile -LogLine $Error
|
||||
Return $False
|
||||
|
||||
} #end catch
|
||||
|
||||
#If Function was called to Stop windream Client Components
|
||||
IF ($Action -like "Stop") {
|
||||
|
||||
Write-LogFile -LogLine "Stop windream Client Components."
|
||||
|
||||
#Try to stop windream Client Components
|
||||
Try {
|
||||
|
||||
Write-Logfile -LogLine "Stopping windream Client Components!"
|
||||
$windreamControlCenter.StartVFSService(0) | Out-Null
|
||||
$windreamIndexService.Shutdown() | Out-Null
|
||||
$windreamControlCenter.ExitCC(0) | Out-Null
|
||||
|
||||
} #end try
|
||||
|
||||
Catch {
|
||||
|
||||
Write-Logfile -LogLine "Cannot stop windream Client Components!"
|
||||
Write-Logfile -LogLine $Error
|
||||
Return $False
|
||||
|
||||
} #end catch
|
||||
|
||||
Return $True
|
||||
|
||||
} #end if
|
||||
|
||||
#If Function was called to Restart windream Client Components and Service Test was enabled
|
||||
ELSEIF (($Action -like "Restart") -and ($ServiceTest -is [Object])) {
|
||||
|
||||
#Checking if windream vfs Service is running
|
||||
IF ((Get-Service -Name vfssvc).Status -ne 'running') {
|
||||
|
||||
Write-LogFile -LogLine "Warning: windream vfs Service is not running!"
|
||||
|
||||
Try {
|
||||
|
||||
Write-Logfile -LogLine "Trying to Start/Restart the windream vfs Service!"
|
||||
Stop-Service -Name vfssvc -ErrorAction SilentlyContinue
|
||||
Start-Service -Name vfssvc -ErrorAction Stop
|
||||
|
||||
} #end try
|
||||
|
||||
Catch {
|
||||
|
||||
Write-Logfile -LogLine "Cannot Start/Restart windream vfs Service!"
|
||||
Write-Logfile -LogLine $Error
|
||||
Return $False
|
||||
|
||||
} #end catch
|
||||
|
||||
} #end if
|
||||
|
||||
ELSE {
|
||||
|
||||
Write-Logfile -LogLine " "
|
||||
Write-LogFile -LogLine "windream vfs Service is running!"
|
||||
|
||||
} #end else
|
||||
|
||||
Write-LogFile -LogLine "Restart windream Client Components."
|
||||
|
||||
#Try to stop windream Client Components
|
||||
Try {
|
||||
|
||||
Write-Logfile -LogLine "Stopping windream Client Components!"
|
||||
$windreamControlCenter.StartVFSService(0) | Out-Null
|
||||
$windreamIndexService.Shutdown() | Out-Null
|
||||
|
||||
} #end try
|
||||
|
||||
Catch {
|
||||
|
||||
Write-Logfile -LogLine "Cannot stop windream Client Components!"
|
||||
Write-Logfile -LogLine $Error
|
||||
Return $False
|
||||
|
||||
} #end catch
|
||||
|
||||
#Try to start windream Client Components
|
||||
Try {
|
||||
|
||||
Write-Logfile -LogLine "Starting windream Client Components!"
|
||||
$windreamControlCenter.StartVFSService(1) | Wait-Process -Timeout $StartTimeout | Out-Null
|
||||
$windreamIndexService.Start() | Out-Null
|
||||
|
||||
} #end try
|
||||
|
||||
Catch {
|
||||
|
||||
Write-Logfile -LogLine "Cannot start windream Client Components!"
|
||||
Write-Logfile -LogLine $Error
|
||||
Return $False
|
||||
|
||||
} #end catch
|
||||
|
||||
Return $True
|
||||
|
||||
} #end elseif
|
||||
|
||||
#If Function was called to Restart windream Client Components and Service Test was disabled
|
||||
ELSEIF (($Action -like "Restart") -and ($ServiceTest -is [Switch])) {
|
||||
|
||||
Write-LogFile -LogLine "Restart windream Client Components."
|
||||
|
||||
#Try to stop windream Client Components
|
||||
Try {
|
||||
|
||||
Write-Logfile -LogLine "Stopping windream Client Components!"
|
||||
$windreamControlCenter.StartVFSService(0) | Out-Null
|
||||
$windreamIndexService.Shutdown() | Out-Null
|
||||
|
||||
} #end try
|
||||
|
||||
Catch {
|
||||
|
||||
Write-Logfile -LogLine "Cannot stop windream Client Components!"
|
||||
Write-Logfile -LogLine $Error
|
||||
Return $False
|
||||
|
||||
} #end catch
|
||||
|
||||
#Try to start windream Client Components
|
||||
Try {
|
||||
|
||||
Write-Logfile -LogLine "Starting windream Client Components!"
|
||||
$windreamControlCenter.StartVFSService(1) | Wait-Process -Timeout $StartTimeout | Out-Null
|
||||
$windreamIndexService.Start() | Out-Null
|
||||
|
||||
} #end try
|
||||
|
||||
Catch {
|
||||
|
||||
Write-Logfile -LogLine "Cannot start windream Client Components!"
|
||||
Write-Logfile -LogLine $Error
|
||||
Return $False
|
||||
|
||||
} #end catch
|
||||
|
||||
Return $True
|
||||
|
||||
} #end elseif
|
||||
|
||||
#If Function was called to Start windream Client Components and Service Test was enabled
|
||||
ELSEIF (($Action -like "Start") -and ($ServiceTest -is [Object])) {
|
||||
|
||||
#Checking if windream vfs Service is running
|
||||
IF ((Get-Service -Name vfssvc).Status -ne 'running') {
|
||||
|
||||
Write-LogFile -LogLine "Warning: windream vfs Service is not running!"
|
||||
|
||||
Try {
|
||||
|
||||
Write-Logfile -LogLine "Trying to Start/Restart the windream vfs Service!"
|
||||
Stop-Service -Name vfssvc -ErrorAction SilentlyContinue
|
||||
Start-Service -Name vfssvc -ErrorAction Stop
|
||||
|
||||
} #end try
|
||||
|
||||
Catch {
|
||||
|
||||
Write-Logfile -LogLine "Cannot Start/Restart windream vfs Service!"
|
||||
Write-Logfile -LogLine $Error
|
||||
Return $False
|
||||
|
||||
} #end catch
|
||||
|
||||
} #end if
|
||||
|
||||
ELSE {
|
||||
|
||||
Write-Logfile -LogLine " "
|
||||
Write-LogFile -LogLine "windream vfs Service is running!"
|
||||
|
||||
} #end else
|
||||
|
||||
Write-LogFile -LogLine "Start windream Client Components."
|
||||
|
||||
#Try to start windream Client Components
|
||||
Try {
|
||||
|
||||
Write-Logfile -LogLine "Starting windream Client Components!"
|
||||
$windreamControlCenter.StartVFSService(1) | Wait-Process -Timeout $StartTimeout | Out-Null
|
||||
$windreamIndexService.Start() | Out-Null
|
||||
|
||||
} #end try
|
||||
|
||||
Catch {
|
||||
|
||||
Write-Logfile -LogLine "Cannot start windream Client Components!"
|
||||
Write-Logfile -LogLine $Error
|
||||
Return $False
|
||||
|
||||
} #end catch
|
||||
|
||||
Return $True
|
||||
|
||||
} #end elseif
|
||||
|
||||
#If Function was called to Start windream Client Components and Service Test was disabled
|
||||
ELSEIF (($Action -like "Start") -and ($ServiceTest -is [Switch])) {
|
||||
|
||||
Write-LogFile -LogLine "Start windream Client Components."
|
||||
|
||||
#Try to start windream Client Components
|
||||
Try {
|
||||
|
||||
Write-Logfile -LogLine "Starting windream Client Components!"
|
||||
$windreamControlCenter.StartVFSService(1) | Wait-Process -Timeout $StartTimeout | Out-Null
|
||||
$windreamIndexService.Start() | Out-Null
|
||||
|
||||
} #end try
|
||||
|
||||
Catch {
|
||||
|
||||
Write-Logfile -LogLine "Cannot start windream Client Components!"
|
||||
Write-Logfile -LogLine $Error
|
||||
Return $False
|
||||
|
||||
} #end catch
|
||||
|
||||
Return $True
|
||||
|
||||
} #end elseif
|
||||
|
||||
#If Function was called invalid Values, which should be not possible be the ValidateSet of the Function Parameters
|
||||
ELSE {
|
||||
|
||||
Write-Logfile -LogLine "Function Call went wrong, please check the ValidateSet"
|
||||
Write-Logfile -LogLine $Error
|
||||
Return $False
|
||||
|
||||
} #end else
|
||||
|
||||
} #end if
|
||||
|
||||
ELSE {
|
||||
|
||||
Write-Host ""
|
||||
Write-Host "DEBUG Info: Write-LogFile - Module does not exist!"
|
||||
Write-Host "DEBUG Info: Please load the Module and try again, running this Function/Module!"
|
||||
Write-Host "DEBUG Info: Exiting, because of this Issue."
|
||||
EXIT
|
||||
|
||||
} #end else
|
||||
|
||||
} #end function
|
||||
211
current/DD-Core/Modules/Start-SQLDB-Query-withLogging.psm1
Normal file
211
current/DD-Core/Modules/Start-SQLDB-Query-withLogging.psm1
Normal file
@@ -0,0 +1,211 @@
|
||||
Function Start-SQLDB-Query-withLogging {
|
||||
|
||||
<#
|
||||
.SYNOPSIS
|
||||
Function will send a SQL Query to a SQL DB.
|
||||
|
||||
.DESCRIPTION
|
||||
Function will send a SQL Query to a SQL DB. If you set a read command (SELECT ...), function will return a dataset.
|
||||
|
||||
.REQUIREMENT General
|
||||
PowerShell V2 and Function "Write-Logfile".
|
||||
|
||||
.REQUIREMENT Variables
|
||||
DBSQLQuery, DBSQLQueryType, DBSQLConnectServer, DBSQLConnectUser, DBSQLConnectPassword, DBSQLConnectDatabase, DBSQLConnectIntegratedSecurity, DBSQLCommand, DBSQLAdapter, DBSQLConnection
|
||||
|
||||
.REQUIREMENT Functions
|
||||
Write-Logfile
|
||||
|
||||
.VERSION
|
||||
Number: 1.0.1.0 / Date: 24.09.2017
|
||||
|
||||
.PARAMETER DBSQLQuery
|
||||
Give a Standard T-SQL Query
|
||||
|
||||
.PARAMETER DBSQLQueryType
|
||||
Give read or write, depends on your planned action ("select" is only read, "insert" and "update" are write)
|
||||
|
||||
.EXAMPLE
|
||||
Func-DB-SQL-Query -DBSQLQueryType read -DBSQLQuery "SELECT * from TABLE;"
|
||||
|
||||
.EXAMPLE
|
||||
Func-DB-SQL-Query -DBSQLQueryType write -DBSQLQuery "INSERT INTO TABLE (column1,column2,column3) VALUES ('Text1', Zahl1, Zahl2) WHERE column4 = 'Text2';"
|
||||
|
||||
.EXAMPLE
|
||||
Func-DB-SQL-Query -DBSQLQueryType write -DBSQLQuery "UPDATE TABLE SET column1='Text1',column2=Zahl1,column3=Zahl2 WHERE column4 = 'Text2';"
|
||||
#>
|
||||
|
||||
Param (
|
||||
|
||||
[Parameter(Position=0,Mandatory=$False,HelpMessage='Give the SQL Servername or Server name incl. Instance name')]
|
||||
[ValidateNotNullOrEmpty()]
|
||||
[STRING]$DBSQLConnectServer=(Get-Variable -Name DBSQLConnectServer -Scope Global -ValueOnly -ErrorAction SilentlyContinue),
|
||||
|
||||
[Parameter(Position=1,Mandatory=$False,HelpMessage='Give the database user name')]
|
||||
[ValidateNotNullOrEmpty()]
|
||||
[STRING]$DBSQLConnectUser=(Get-Variable -Name DBSQLConnectUser -Scope Global -ValueOnly -ErrorAction SilentlyContinue),
|
||||
|
||||
[Parameter(Position=2,Mandatory=$False,HelpMessage='Give the database user password')]
|
||||
[ValidateNotNullOrEmpty()]
|
||||
[STRING]$DBSQLConnectPassword=(Get-Variable -Name DBSQLConnectPassword -Scope Global -ValueOnly -ErrorAction SilentlyContinue),
|
||||
|
||||
[Parameter(Position=3,Mandatory=$False,HelpMessage='Give the database name')]
|
||||
[ValidateNotNullOrEmpty()]
|
||||
[STRING]$DBSQLConnectDatabase=(Get-Variable -Name DBSQLConnectDatabase -Scope Global -ValueOnly -ErrorAction SilentlyContinue),
|
||||
|
||||
[Parameter(Position=4,Mandatory=$False,HelpMessage='Determ if current login credentials should be used for database login ()')]
|
||||
[ValidateNotNullOrEmpty()]
|
||||
[STRING]$DBSQLConnectIntegratedSecurity=(Get-Variable -Name DBSQLConnectIntegratedSecurity -Scope Global -ValueOnly -ErrorAction SilentlyContinue),
|
||||
|
||||
[Parameter(Position=5,Mandatory=$True,HelpMessage='Specify the SQL Query')]
|
||||
[ValidateNotNullOrEmpty()]
|
||||
[STRING]$DBSQLQuery,
|
||||
|
||||
[Parameter(Position=6,Mandatory=$False,HelpMessage='Determ if Query was for read or write operations')]
|
||||
[ValidateSet("read","write")]
|
||||
[STRING]$DBSQLQueryType='read',
|
||||
|
||||
[Parameter(Position=7,Mandatory=$False,HelpMessage=')')]
|
||||
[ValidateNotNullOrEmpty()]
|
||||
[STRING]$DBSQLErrorAction='continue'
|
||||
|
||||
) #end param ValueFromPipeline=$True
|
||||
|
||||
|
||||
IF (Get-Module -Name "Write-LogFile") {
|
||||
|
||||
Write-Logfile -LogLine ""
|
||||
Write-Logfile -LogLine "Connecting with DB:"
|
||||
Write-Logfile -LogLine "Server = $DBSQLConnectServer, uid=$DBSQLConnectUser, pwd=<set in ConfigFile>, Database = $DBSQLConnectDatabase, Integrated Security = $DBSQLConnectIntegratedSecurity"
|
||||
|
||||
Try {
|
||||
|
||||
$DBSQLConnection = New-Object System.Data.SqlClient.SqlConnection
|
||||
$DBSQLConnection.ConnectionString = "Server = $DBSQLConnectServer; uid=$DBSQLConnectUser; pwd=$DBSQLConnectPassword; Database = $DBSQLConnectDatabase; Integrated Security = $DBSQLConnectIntegratedSecurity"
|
||||
|
||||
Write-Logfile -LogLine "Processing SQL Query:"
|
||||
Write-Logfile -LogLine $DBSQLQuery
|
||||
|
||||
IF ($DBSQLQueryType -eq 'read') {
|
||||
|
||||
Try {
|
||||
|
||||
$DBSQLCommand = New-Object System.Data.SqlClient.SqlCommand
|
||||
$DBSQLCommand.CommandText = $DBSQLQuery
|
||||
$DBSQLCommand.Connection = $DBSQLConnection
|
||||
|
||||
$DBSQLAdapter = New-Object System.Data.SqlClient.SqlDataAdapter
|
||||
$DBSQLAdapter.SelectCommand = $DBSQLCommand
|
||||
|
||||
$DBSQLDataSet = New-Object System.Data.DataSet
|
||||
|
||||
$DBSQLConnection.Open()
|
||||
$DBSQLAdapter.Fill($DBSQLDataSet)
|
||||
$DBSQLConnection.Close()
|
||||
|
||||
Write-Logfile -Logline "SQL Query result with $($DBSQLDataSet.Tables[0].Rows.Count) row(s)."
|
||||
#$DBSQLDataSet.Tables[0].Rows | Out-GridView
|
||||
|
||||
Return $DBSQLDataSet
|
||||
|
||||
} #end try
|
||||
|
||||
Catch {
|
||||
|
||||
Write-Logfile -LogLine "ERROR: Unable to process SQL Query (read)!"
|
||||
|
||||
IF ($ErrorAction -eq 'continue') {
|
||||
|
||||
Write-Logfile -LogLine "Program will continue, anyway."
|
||||
|
||||
} #end if
|
||||
|
||||
ELSEIF ($ErrorAction -eq 'stop') {
|
||||
|
||||
Write-Logfile -LogLine "Program will stop."
|
||||
exit
|
||||
|
||||
} #end elseif
|
||||
|
||||
ELSE {
|
||||
|
||||
Write-Logfile -LogLine "Invalid Value for Parameter DBSQLErrorAction detected."
|
||||
Write-Logfile -LogLine "Allowed Values are 'continue' or 'stop'."
|
||||
Write-Logfile -LogLine "Program will continue, anyway."
|
||||
|
||||
} #end else
|
||||
|
||||
} #end catch
|
||||
|
||||
} #end if
|
||||
|
||||
ELSEIF ($DBSQLQueryType -eq 'write') {
|
||||
|
||||
Try {
|
||||
|
||||
$DBSQLCommand = New-Object System.Data.SqlClient.SqlCommand
|
||||
$DBSQLCommand.CommandText = $DBSQLQuery
|
||||
$DBSQLCommand.Connection = $DBSQLConnection
|
||||
|
||||
$DBSQLConnection.Open()
|
||||
$DBSQLCommand.ExecuteNonQuery()
|
||||
$DBSQLConnection.Close()
|
||||
|
||||
} #end try
|
||||
|
||||
Catch {
|
||||
|
||||
Write-Logfile -LogLine "ERROR: Unable to process SQL Query (write)!"
|
||||
|
||||
IF ($ErrorAction -eq 'continue') {
|
||||
|
||||
Write-Logfile -LogLine "Program will continue, anyway."
|
||||
|
||||
} #end if
|
||||
|
||||
ELSEIF ($ErrorAction -eq 'stop') {
|
||||
|
||||
Write-Logfile -LogLine "Program will stop."
|
||||
exit
|
||||
|
||||
} #end elseif
|
||||
|
||||
ELSE {
|
||||
|
||||
Write-Logfile -LogLine "Invalid Value for parameter DBSQLErrorAction detected."
|
||||
Write-Logfile -LogLine "Allowed Values are 'continue' or 'stop'."
|
||||
Write-Logfile -LogLine "Program will continue, anyway."
|
||||
|
||||
} #end else
|
||||
|
||||
} #end catch
|
||||
|
||||
} #end elseif
|
||||
|
||||
ELSE {
|
||||
|
||||
Write-Logfile -LogLine "ERROR: Invalid parameter for function!"
|
||||
|
||||
} #end else
|
||||
|
||||
} #end try
|
||||
|
||||
Catch {
|
||||
|
||||
Write-Logfile -LogLine "ERROR: Unable to etablish a DB Connection!"
|
||||
|
||||
} #end catch
|
||||
|
||||
} #end if
|
||||
|
||||
ELSE {
|
||||
|
||||
Write-Host ""
|
||||
Write-Host "DEBUG Info: Write-LogFile - Module does not exist!"
|
||||
Write-Host "DEBUG Info: Please load the Module and try again, running this Function/Module!"
|
||||
Write-Host "DEBUG Info: Exiting, because of this Issue."
|
||||
EXIT
|
||||
|
||||
} #end else
|
||||
|
||||
} #end function
|
||||
351
current/DD-Core/Modules/Start-windreamSession-withLogging.psm1
Normal file
351
current/DD-Core/Modules/Start-windreamSession-withLogging.psm1
Normal file
@@ -0,0 +1,351 @@
|
||||
Function Start-windreamSession-withLogging {
|
||||
|
||||
<#
|
||||
.SYNOPSIS
|
||||
Start a connection / Session with a windream Server.
|
||||
|
||||
.DESCRIPTION
|
||||
To work in or with windream, you need to start a Session with a windream Server, to access its files, folders and indices.
|
||||
The windream Drive letter which was retrived by running this module, will be set for the whole Script.
|
||||
For Impersonation Login Methode, all these Parameters must be set: windreamServer, windreamDomain, windreamUserName and windreamUserPassword.
|
||||
Function returns with the whole windreamSession Object if connection was successfully established, otherwise with a $False.
|
||||
|
||||
.REQUIREMENT General
|
||||
PowerShell V3, windream Client Connectivity (>=V3.6)
|
||||
|
||||
.REQUIREMENT Assembly
|
||||
<NONE>
|
||||
|
||||
.REQUIREMENT Variables
|
||||
windreamServer, windreamVersion, windreamServerBrowser, windreamConnect, windreamSession, windreamDriveLetter, windreamDriveLetterMapping, PathTest
|
||||
|
||||
.REQUIREMENT Variables preSet
|
||||
<NONE>
|
||||
|
||||
.REQUIREMENT Functions
|
||||
Write-LogFile
|
||||
|
||||
.VERSION
|
||||
1.2.0.0 / 02.12.2016
|
||||
|
||||
.PARAMETER windreamServer
|
||||
Optional Parameter. Give Server Name of a specific windream Server, you want to connect with. Otherwise default will be choosen.
|
||||
|
||||
.PARAMETER windreamDomain
|
||||
Optional Parameter. Give a Windows Domain (which is windream autorisiered) for Impersonation Login Methode. Otherwise current domain will be choosen.
|
||||
|
||||
.PARAMETER windreamUserName
|
||||
Optional Parameter. Give a Windows User Name (who is windream autorisiered) for Impersonation Login Methode. Otherwise current User Name will be choosen.
|
||||
|
||||
.PARAMETER windreamUserPassword
|
||||
Optional Parameter. Give the Password for the User name you set bevor in $windreamUserName for Impersonation Login Methode.
|
||||
|
||||
.PARAMETER windreamVersion
|
||||
Optional Parameter. Give the minimum Version of windream, to make sure later function calls will work (Example 3.6, 4.0, ...).
|
||||
|
||||
.PARAMETER windream64Bit
|
||||
Optional Parameter. Available since windream 6.0. Necessary, if following functions need 64Bit Integer Support (eg. GetWMObjectByIdEx64(WMEntity aWMEntity, int64 aWMObjectId)).
|
||||
|
||||
.PARAMETER windreamDriveLetterMapping
|
||||
Optional Parameter. If windream Drive Letter was set in the windream Client config, call this Parameter using $true, to check the Mapping in the Windows Explorer. Default Value is "$True".
|
||||
|
||||
.EXAMPLE
|
||||
Start-windreamSession
|
||||
|
||||
.EXAMPLE
|
||||
Start-windreamSession -windreamVersion "3.6" -windream64Bit <$True|$False>
|
||||
|
||||
.EXAMPLE
|
||||
Start-windreamSession -windreamServer <ServerName> -windreamDomain <domain.local> -windreamUserName <UserName> -windreamUserPassword <UserPassword>
|
||||
|
||||
.EXAMPLE
|
||||
Start-windreamSession -windreamVersion "3.6" -windream64Bit <$True|$False> -windreamServer <ServerName> -windreamDomain <domain.local> -windreamUserName <UserName> -windreamUserPassword <UserPassword>
|
||||
#>
|
||||
|
||||
[cmdletbinding()]
|
||||
|
||||
Param (
|
||||
|
||||
[Parameter(Mandatory=$False,HelpMessage='Optional Parameter. Give Server Name of a specific windream Server, you want to connect with. Otherwise default will be choosen.')]
|
||||
[AllowEmptyString()]
|
||||
[String]$windreamServer=$NULL,
|
||||
|
||||
[Parameter(Mandatory=$False,HelpMessage='Optional Parameter. Give a Windows Domain (which is windream autorisiered) for Impersonation Login Methode. Otherwise current domain will be choosen.')]
|
||||
[ValidateNotNullOrEmpty()]
|
||||
[String]$windreamDomain=$NULL,
|
||||
|
||||
[Parameter(Mandatory=$False,HelpMessage='Optional Parameter. Give a Windows User Name (who is windream autorisiered) for Impersonation Login Methode. Otherwise current User Name will be choosen.')]
|
||||
[ValidateNotNullOrEmpty()]
|
||||
[String]$windreamUserName=$NULL,
|
||||
|
||||
[Parameter(Mandatory=$False,HelpMessage='Optional Parameter. Give the Password for the User name you set bevor in $windreamUserName for Impersonation Login Methode.')]
|
||||
[ValidateNotNullOrEmpty()]
|
||||
[String]$windreamUserPassword=$NULL,
|
||||
|
||||
[Parameter(Mandatory=$False,HelpMessage='Optional Parameter. Give the minimum Version of windream, to make sure later function calls will work (Example 3.6, 4.0, ...). Default Value is 4.0.')]
|
||||
[ValidateNotNullOrEmpty()]
|
||||
[String]$windreamVersion="4.0",
|
||||
|
||||
[Parameter(Mandatory=$False,HelpMessage='Optional Parameter. Available since windream 6.0. Necessary, if following functions need 64Bit Integer Support (eg. GetWMObjectByIdEx64(WMEntity aWMEntity, int64 aWMObjectId)). Default Value is $False')]
|
||||
[ValidateSet($True,$False)]
|
||||
[Switch]$windream64Bit=$False,
|
||||
|
||||
[Parameter(Mandatory=$False,HelpMessage='Optional Parameter. If windream Drive Letter was set in the windream Client config, call this Parameter using $true, to check the Mapping in the Windows Explorer. Default Value is "$True".')]
|
||||
[ValidateSet($True,$False)]
|
||||
[Switch]$windreamDriveLetterMapping=$True
|
||||
|
||||
) #end param
|
||||
|
||||
#Clear Error Variable
|
||||
$error.clear()
|
||||
|
||||
#Checking if "Write-LogFile" Module was loaded
|
||||
IF (Get-Module -Name "Write-LogFile") {
|
||||
|
||||
Write-Host "DEBUG Info: Write-LogFile - Module exists."
|
||||
|
||||
#If Function was called without an explicite windream Server, try to get the default
|
||||
IF (!$windreamServer) {
|
||||
|
||||
Write-Logfile -LogLine " "
|
||||
Write-Logfile -LogLine "Function was called without a specific windream Server,"
|
||||
Write-Logfile -LogLine "trying to find the default windream Server."
|
||||
|
||||
Try {
|
||||
|
||||
$windreamServerBrowser = New-Object -ComObject "WMOBrws.ServerBrowser" -ErrorAction Stop
|
||||
$windreamServer = $windreamServerBrowser.GetCurrentServer()
|
||||
Write-Logfile -LogLine "windream Server is: $windreamServer"
|
||||
|
||||
} #end try
|
||||
|
||||
Catch {
|
||||
|
||||
Write-Logfile -LogLine "Cannot create Object from windream Class WMOBrws.ServerBrowser!"
|
||||
Write-Logfile -LogLine "And/Or unable the retrieve default windream Server!"
|
||||
$windreamServer = $NULL
|
||||
|
||||
} #end catch
|
||||
|
||||
} #end if
|
||||
|
||||
#If Function was called with an explicite windream Server
|
||||
ELSE {
|
||||
|
||||
Write-Logfile -LogLine " "
|
||||
Write-Logfile -LogLine "Function was called with specific windream Server, trying to connect to $windreamServer"
|
||||
Write-Logfile -LogLine "Remember: Since windream 4.0, this will only work if you are using Impersonation Login Methode."
|
||||
Write-LogFile -Logline "windreamServer, windreamDomain, windreamUserName and windreamUserPassword"
|
||||
|
||||
Try {
|
||||
|
||||
$windreamServerBrowser = New-Object -ComObject "WMOBrws.ServerBrowser" -ErrorAction Stop
|
||||
|
||||
} #end try
|
||||
|
||||
Catch {
|
||||
|
||||
Write-Logfile -LogLine "Cannot create Object from windream Class WMOBrws.ServerBrowser!"
|
||||
Return $False
|
||||
|
||||
} #end catch
|
||||
|
||||
} #end else
|
||||
|
||||
#Go ahead if windreamServer is not null and is reachable via network ping
|
||||
IF (($windreamServer) -and (Test-Connection -ComputerName $windreamServer -Count 1 -ErrorAction SilentlyContinue)) {
|
||||
|
||||
Try {
|
||||
|
||||
$windreamConnect = New-Object -ComObject "Windream.WMConnect" -ErrorAction Stop
|
||||
$windreamConnect.MinReqVersion = $windreamVersion
|
||||
$windreamConnect.ClientSupports64BitID = $windream64Bit
|
||||
Write-Logfile -LogLine "windream Connect created!"
|
||||
|
||||
} # end try
|
||||
|
||||
Catch {
|
||||
|
||||
Write-Logfile -LogLine "Cannot create Object from windream Class Windream.WMSession!"
|
||||
Write-Logfile -LogLine $Error
|
||||
Return $False
|
||||
|
||||
} #end catch
|
||||
|
||||
Try {
|
||||
|
||||
$windreamSession = New-Object -ComObject "Windream.WMSession" #-ErrorAction Stop
|
||||
Write-Logfile -LogLine "windream Session created!"
|
||||
|
||||
} #end try
|
||||
|
||||
Catch {
|
||||
|
||||
Write-Logfile -LogLine "Cannot create Object from windream Class Windream.WMSession!"
|
||||
Write-Logfile -LogLine $Error
|
||||
Return $False
|
||||
|
||||
} #end catch
|
||||
|
||||
#Use Impersonation Login methode, if these three Parameters are set (-gt $NULL).
|
||||
IF (($windreamUserName) -and ($windreamUserPassword) -and ($windreamDomain)) {
|
||||
|
||||
Try {
|
||||
|
||||
$windreamConnect.ModuleId = 9
|
||||
|
||||
$windreamImpersonation = New-Object -ComObject "WMOTool.WMUserIdentity" -ErrorAction Stop
|
||||
$windreamImpersonation.aDomain = $windreamDomain
|
||||
$windreamImpersonation.aPassword = $windreamUserPassword
|
||||
$windreamImpersonation.aServerName = $windreamServer
|
||||
$windreamImpersonation.aUserName = $windreamUserName
|
||||
|
||||
Try {
|
||||
|
||||
Write-Logfile -LogLine "Try to Login Impersonation"
|
||||
$windreamSession = $windreamConnect.Login($windreamImpersonation)
|
||||
|
||||
} #end try
|
||||
|
||||
Catch {
|
||||
|
||||
Write-Logfile -LogLine "Cannot Login into windream Session!"
|
||||
Write-Logfile -LogLine $Error
|
||||
Return $False
|
||||
|
||||
} #end catch
|
||||
|
||||
} #end try
|
||||
|
||||
Catch {
|
||||
|
||||
Write-Logfile -LogLine "Cannot create Object from windream Class WMOTool.WMUserIdentity!"
|
||||
Write-Logfile -LogLine $Error
|
||||
Return $False
|
||||
|
||||
} #end catch
|
||||
|
||||
} #end if
|
||||
|
||||
#If Impersonation Login methode was not set, try to login with current username, domain and password
|
||||
ELSE {
|
||||
|
||||
Try {
|
||||
|
||||
Write-Logfile -LogLine "Try to Login with current credentials."
|
||||
$windreamConnect.LoginSession($windreamSession)
|
||||
|
||||
} #end try
|
||||
|
||||
Catch {
|
||||
|
||||
Write-Logfile -LogLine "Cannot Login into windream Session!"
|
||||
Write-Logfile -LogLine $Error
|
||||
Return $False
|
||||
|
||||
} #end catch
|
||||
|
||||
} #end else
|
||||
|
||||
IF ($windreamSession.aLoggedin -eq $True) {
|
||||
|
||||
Write-Logfile -LogLine " "
|
||||
Write-Logfile -LogLine "Connection established"
|
||||
Write-Logfile -LogLine "You are connected with $($windreamConnect.ServerName) as $($windreamSession.aUser.aName)"
|
||||
Write-Host "DEBUG Info: Do not forget to Logout Session after finished work."
|
||||
|
||||
$windreamDriveLetter = $windreamServerBrowser.GetServerValue($windreamServer, "DriveLetter", 0)
|
||||
|
||||
IF ($windreamDriveLetter) {
|
||||
|
||||
Write-Logfile -LogLine "The configured windream Drive Letter is: $windreamDriveLetter"
|
||||
Set-Variable -Name windreamDriveLetter -Value $windreamDriveLetter -Scope Global -ErrorAction SilentlyContinue
|
||||
|
||||
$PathTest = Test-Path -Path "$windreamDriveLetter`:\" -PathType Container
|
||||
|
||||
IF ($PathTest -eq $True) {
|
||||
|
||||
Write-Logfile -LogLine "The configured windream Drive Letter seems to be connected, as well!"
|
||||
|
||||
} #end if
|
||||
|
||||
ELSE {
|
||||
|
||||
Write-Logfile -LogLine "The configured windream Drive Letter seems not to be connected!"
|
||||
|
||||
IF ($windreamDriveLetterMapping -eq $True) {
|
||||
|
||||
Try {
|
||||
|
||||
Write-Logfile -LogLine "Try to connect the windream Drive ..."
|
||||
Remove-PSDrive -Name "$windreamDriveLetter" -Force -Scope Global -ErrorAction SilentlyContinue
|
||||
$PathTest = New-PSDrive -Name "$windreamDriveLetter" -PSProvider FileSystem -Root "\\windream\objects" -Persist -Scope Global -ErrorAction Stop
|
||||
Write-Logfile -LogLine "windream Drive Letter $PathTest should be connected, now!"
|
||||
|
||||
} #end try
|
||||
|
||||
Catch {
|
||||
|
||||
Write-Logfile -LogLine "Cannot map the windream Drive!"
|
||||
Set-Variable -Name windreamDriveLetter -Value $NULL -Scope Global -ErrorAction SilentlyContinue
|
||||
|
||||
} #end catch
|
||||
|
||||
} #end if
|
||||
|
||||
ELSE {
|
||||
|
||||
Write-Logfile -LogLine "Will not try to map the windream Drive..."
|
||||
|
||||
} #end else
|
||||
|
||||
} #end else
|
||||
|
||||
} #end if
|
||||
|
||||
ELSE {
|
||||
|
||||
Write-Logfile -LogLine "WARNING: There is no windream Drive Letter configured."
|
||||
Write-Logfile -LogLine "This could cause access problems!"
|
||||
Write-Logfile -LogLine "Please check your windream Alias Settings!"
|
||||
|
||||
} #end else
|
||||
|
||||
Return $windreamSession
|
||||
|
||||
} #end if
|
||||
|
||||
ELSE {
|
||||
|
||||
Write-Logfile -LogLine " "
|
||||
Write-Logfile -LogLine "Connection refused"
|
||||
Write-Logfile -LogLine $Error
|
||||
Return $False
|
||||
|
||||
} #end else
|
||||
|
||||
} #end if
|
||||
|
||||
#Stop if windream Server was unavailable
|
||||
ELSE {
|
||||
|
||||
Write-Logfile -LogLine "Cannot retrieve windream Server to connect with or test connection failed!"
|
||||
Write-Logfile -LogLine $Error
|
||||
Return $False
|
||||
|
||||
} #end else
|
||||
|
||||
} #end if
|
||||
|
||||
ELSE {
|
||||
|
||||
Write-Host ""
|
||||
Write-Host "DEBUG Info: Write-LogFile - Module does not exist!"
|
||||
Write-Host "DEBUG Info: Please load the Module and try again, running this Function/Module!"
|
||||
Write-Host "DEBUG Info: Exiting, because of this Issue."
|
||||
EXIT
|
||||
|
||||
} #end else
|
||||
|
||||
} #end function
|
||||
|
||||
167
current/DD-Core/Modules/Test-FileState-withLogging.psm1
Normal file
167
current/DD-Core/Modules/Test-FileState-withLogging.psm1
Normal file
@@ -0,0 +1,167 @@
|
||||
Function Test-FileState-withLogging {
|
||||
|
||||
<#
|
||||
.SYNOPSIS
|
||||
Function will check if given File is accessible.
|
||||
|
||||
.DESCRIPTION
|
||||
This Function will check the accessibility of a File.
|
||||
If the given File was readable, Function will Return "readable"
|
||||
Additional Function can be called with the Parameter "-Action writetest",
|
||||
then after a successful readtest, there will be a writetest.
|
||||
On Success Return Value will be "writeable".
|
||||
If File doesn exist Function will return $NULL.
|
||||
If File Attribute was not editable (by resetting them),
|
||||
Function will return "noteditable".
|
||||
|
||||
.REQUIREMENT General
|
||||
PowerShell V3
|
||||
|
||||
.REQUIREMENT Assembly
|
||||
<NONE>
|
||||
|
||||
.REQUIREMENT Variables
|
||||
SourceFile, SourceFileAttributeReset, Action, FileInfo, FileCheckResult, FileStream
|
||||
|
||||
.REQUIREMENT Variables preSet
|
||||
<NONE>
|
||||
|
||||
.REQUIREMENT Functions
|
||||
Write-Logfile
|
||||
|
||||
.VERSION
|
||||
Number: 1.1.0.0 / Date: 21.03.2017
|
||||
|
||||
.PARAMETER SourceFile
|
||||
Give the full Path and Filename you want to check.
|
||||
|
||||
.PARAMETER SourceFileAttributeReset
|
||||
Set on $True, if Function should reset the File Attributes (if ReadOnly was set). Default Value is $True.
|
||||
|
||||
.PARAMETER Action
|
||||
Determine which Action you want to perform <readtest|writetest>. Default Value is "readtest".
|
||||
|
||||
.EXAMPLE
|
||||
Test-FileState-withLogging -SourceFile "E:\Path\file_to_check.txt"
|
||||
|
||||
.EXAMPLE
|
||||
Test-FileState-withLogging -SourceFile "E:\Path\file_to_check.txt" -Action writetest
|
||||
#>
|
||||
|
||||
Param (
|
||||
|
||||
[Parameter(Mandatory=$True,HelpMessage='Give the full Path and Filename you want to check.')]
|
||||
[ValidateNotNullOrEmpty()]
|
||||
[String]$SourceFile,
|
||||
|
||||
[Parameter(Mandatory=$False,HelpMessage='Set on $True, if Function should reset the File Attributes (if ReadOnly was set). Default Value is $True.')]
|
||||
[ValidateSet($True,$False)]
|
||||
[Switch]$SourceFileAttributeReset=$True,
|
||||
|
||||
[Parameter(Mandatory=$False,HelpMessage='Determine which Action you want to perform <readtest|writetest>. Default Value is "readtest".')]
|
||||
[ValidateSet("readtest","writetest")]
|
||||
[String]$Action="readtest"
|
||||
|
||||
) #end param
|
||||
|
||||
#Checking if "Write-LogFile" Module was loaded
|
||||
IF (Get-Module -Name "Write-LogFile") {
|
||||
|
||||
IF ((Test-Path -Path $SourceFile) -eq 'True') {
|
||||
|
||||
$FileInfo = (New-Object System.IO.FileInfo $SourceFile)
|
||||
$FileCheckResult = "unknown"
|
||||
|
||||
Write-Logfile -LogLine " "
|
||||
Write-Logfile -LogLine "Checking if file: $SourceFile is locked/readonly..."
|
||||
|
||||
IF (($FileInfo.Attributes -match "ReadOnly") -and ($SourceFileAttributeReset -eq $True)) {
|
||||
|
||||
Write-Host "DEBUG Info: ReadOnly Attribute found, removing if possible"
|
||||
|
||||
Try {
|
||||
|
||||
$FileInfo.Attributes="Archive","Temporary"
|
||||
Write-Host "DEBUG Info: File Attributes has been recessed!"
|
||||
|
||||
} #end try
|
||||
|
||||
Catch {
|
||||
|
||||
Write-Logfile -LogLine "WARNING: Cannot recessed File Attributes!"
|
||||
Return "noteditable"
|
||||
|
||||
} #end catch
|
||||
|
||||
} #end if
|
||||
|
||||
Write-Logfile -LogLine "Checking if file: $SourceFile is readable."
|
||||
|
||||
# Check if file is readable
|
||||
Try {
|
||||
|
||||
$FileStream = $FileInfo.Open([System.IO.FileMode]::Open, [System.IO.FileAccess]::Read, [System.IO.FileShare]::Read)
|
||||
Write-Host "DEBUG Info: Is file readable?" $FileStream.CanRead
|
||||
$FileStream.Close()
|
||||
$FileCheckResult = "readable"
|
||||
|
||||
} #end try
|
||||
|
||||
Catch {
|
||||
|
||||
Write-Logfile -LogLine "File: $SourceFile is not even readable."
|
||||
Write-Host "DEBUG Info: Is file readable?" $FileStream.CanRead
|
||||
$FileCheckResult = "notreadable"
|
||||
|
||||
} #end catch
|
||||
|
||||
# Check if file is writeable
|
||||
IF (($FileCheckResult -eq "readable") -and ($Action -eq 'writetest')) {
|
||||
|
||||
Write-Logfile -LogLine "Checking if file: $SourceFile is writeable."
|
||||
|
||||
Try {
|
||||
|
||||
$FileStream = $FileInfo.Open([System.IO.FileMode]::Open, [System.IO.FileAccess]::Write, [System.IO.FileShare]::Write)
|
||||
Write-Host "DEBUG Info: Is file writeable?" $FileStream.CanWrite
|
||||
$FileStream.Close()
|
||||
$FileCheckResult = "writeable"
|
||||
|
||||
} #end try
|
||||
|
||||
Catch {
|
||||
|
||||
Write-Logfile -LogLine "File: $SourceFile is not writeable."
|
||||
Write-Host "DEBUG Info: Is file writeable?" $FileStream.CanWrite
|
||||
$FileCheckResult = "notwriteable"
|
||||
|
||||
} #end catch
|
||||
|
||||
} #end if
|
||||
|
||||
Write-Logfile -LogLine "File $SourceFile checked with result: $FileCheckResult"
|
||||
Return $FileCheckResult
|
||||
|
||||
} #end if
|
||||
|
||||
ELSE {
|
||||
|
||||
Write-Logfile -LogLine " "
|
||||
Write-Logfile -LogLine "Given file: $SourceFile seems not to exist, or access is denied."
|
||||
Return $NULL
|
||||
|
||||
} #end else
|
||||
|
||||
} #end if
|
||||
|
||||
ELSE {
|
||||
|
||||
Write-Host " "
|
||||
Write-Host "DEBUG Info: Write-LogFile - Module does not exist!"
|
||||
Write-Host "DEBUG Info: Please load the Module and try again, running this Function/Module!"
|
||||
Write-Host "DEBUG Info: Exiting, because of this Issue."
|
||||
EXIT
|
||||
|
||||
} #end else
|
||||
|
||||
} #end function
|
||||
114
current/DD-Core/Modules/Test-Path-withLogging.psm1
Normal file
114
current/DD-Core/Modules/Test-Path-withLogging.psm1
Normal file
@@ -0,0 +1,114 @@
|
||||
Function Test-Path-withLogging {
|
||||
|
||||
<#
|
||||
.SYNOPSIS
|
||||
Function will check the given Path for existence.
|
||||
|
||||
.DESCRIPTION
|
||||
If Path doesn´t exist, Function will try to create it.
|
||||
You can disable the create Function by calling with "-Action "ignore"".
|
||||
|
||||
.REQUIREMENT General
|
||||
PowerShell V2
|
||||
|
||||
.REQUIREMENT Assembly
|
||||
<NONE>
|
||||
|
||||
.REQUIREMENT Variables
|
||||
Path, PathTest
|
||||
|
||||
.REQUIREMENT Variables preSet
|
||||
<NONE>
|
||||
|
||||
.REQUIREMENT Functions
|
||||
Write-Logfile
|
||||
|
||||
.VERSION
|
||||
Number: 1.0.1.0 / Date: 17.12.2016
|
||||
|
||||
.PARAMETER Path
|
||||
Give the full Path you want to check or create.
|
||||
|
||||
.PARAMETER Action
|
||||
Determine which Action you want to perform <create|ignore". Default Value is "create".
|
||||
|
||||
.EXAMPLE
|
||||
Test-Path-withLogging -Path "E:\Path\to\create"
|
||||
|
||||
.EXAMPLE
|
||||
Test-Path-withLogging -Path "E:\Path\to\check" -Action "ignore"
|
||||
#>
|
||||
|
||||
Param (
|
||||
|
||||
[Parameter(Mandatory=$True,HelpMessage='Give the full Path you want to check.')]
|
||||
[ValidateNotNullOrEmpty()]
|
||||
[String]$Path,
|
||||
|
||||
[Parameter(Mandatory=$False,HelpMessage='Determine which Action you want to perform <create|ignore". Default Value is "create".')]
|
||||
[ValidateSet("create","ignore")]
|
||||
[String]$Action="create"
|
||||
|
||||
) #end param
|
||||
|
||||
#Checking if "Write-LogFile" Module was loaded
|
||||
IF (Get-Module -Name "Write-LogFile") {
|
||||
|
||||
Write-Logfile -LogLine " "
|
||||
Write-Logfile -LogLine "Checking Path $Path for existence."
|
||||
$PathTest = Test-Path -PathType Container $Path
|
||||
|
||||
#If given Path already exists
|
||||
IF ($PathTest -eq "True") {
|
||||
|
||||
Write-Logfile -LogLine "Path $Path already exists and can be used."
|
||||
Return $True
|
||||
|
||||
} #end if
|
||||
|
||||
#If given Path does not exist
|
||||
ELSE {
|
||||
|
||||
Write-Logfile -LogLine "Path $Path does not exist."
|
||||
|
||||
IF ($Action -eq "create") {
|
||||
|
||||
Try {
|
||||
|
||||
Write-Logfile -LogLine "Path $Path has to been created."
|
||||
New-Item -Path $Path -ItemType directory -Force -ErrorAction Stop
|
||||
Return $True
|
||||
|
||||
} #end try
|
||||
|
||||
Catch {
|
||||
|
||||
Write-Logfile -LogLine "ERROR: Unable to create Path."
|
||||
Write-Logfile -LogLine "INFO: Maybe there is an access or rights Problem."
|
||||
Return $False
|
||||
|
||||
} #end catch
|
||||
|
||||
} #end if
|
||||
|
||||
ELSE {
|
||||
|
||||
Return $False
|
||||
|
||||
} #end else
|
||||
|
||||
} #end else
|
||||
|
||||
} #end if
|
||||
|
||||
ELSE {
|
||||
|
||||
Write-Host " "
|
||||
Write-Host "DEBUG Info: Write-LogFile - Module does not exist!"
|
||||
Write-Host "DEBUG Info: Please load the Module and try again, running this Function/Module!"
|
||||
Write-Host "DEBUG Info: Exiting, because of this Issue."
|
||||
EXIT
|
||||
|
||||
} #end else
|
||||
|
||||
} #end function
|
||||
Binary file not shown.
232
current/DD-Core/Modules/Write-LogFile.psm1
Normal file
232
current/DD-Core/Modules/Write-LogFile.psm1
Normal file
@@ -0,0 +1,232 @@
|
||||
Function Write-LogFile {
|
||||
|
||||
<#
|
||||
.SYNOPSIS
|
||||
Function will write a given String to a Logfile.
|
||||
|
||||
.DESCRIPTION
|
||||
Just like the cmdlet Write-Host, this Function will display Output on the Console.
|
||||
Parallel Output will be written into a designated LogFile.
|
||||
It is recommended to init the LogPath Variable with $Null and the LogPaths Variable with a possible Path,
|
||||
which has to be checked for accessible.
|
||||
This is important, because if given Path was inaccessible (-> Access Test failed), Function will try some other Paths for accessible.
|
||||
These are: The ScriptPath (\Logs) from, which triggerd this Function and $env:temp\Digital Data\$ScriptName\Logs.
|
||||
After a successful Access Test, Function will set the Variable LogPath, with the first accessible Path tested.
|
||||
Function will not give any Return Values, because if it is impossible to write a LogFile, Function will force the whole Script to exit.
|
||||
|
||||
.REQUIREMENT General
|
||||
PowerShell V2
|
||||
|
||||
.REQUIREMENT Assembly
|
||||
<NONE>
|
||||
|
||||
.REQUIREMENT Variables
|
||||
PathTest, FileTest, LogPaths, Counter1, LogLine
|
||||
|
||||
.REQUIREMENT Variables preSet
|
||||
LogFile, LogPath, ScriptName, ScriptPath
|
||||
|
||||
.REQUIREMENT Functions
|
||||
<NONE>
|
||||
|
||||
.VERSION
|
||||
Number: 2.1.0.1 / Date: 23.09.2017
|
||||
|
||||
.PARAMETER LogLine
|
||||
Give the String you want to be written into the Logfile.
|
||||
|
||||
.EXAMPLE
|
||||
Write-LogFile -LogLine "Write this in my Log, please."
|
||||
|
||||
.EXAMPLE
|
||||
Write-LogFile -LogLine "Write this Variabel $Variable in my Log, please."
|
||||
#>
|
||||
|
||||
Param (
|
||||
|
||||
[Parameter(Position=0,Mandatory=$True,HelpMessage='Give the String you want to be written into the Logfile.')]
|
||||
[AllowEmptyString()]
|
||||
[STRING]$LogLine,
|
||||
|
||||
[Parameter(Position=1,Mandatory=$False,HelpMessage='Give the String you want to be written into the Logfile.')]
|
||||
[ValidateNotNullOrEmpty()]
|
||||
[STRING]$LogFile=(Get-Variable -Name LogFile -Scope Global -ValueOnly -ErrorAction SilentlyContinue),
|
||||
|
||||
[Parameter(Position=2,Mandatory=$False,HelpMessage='Give the String you want to be written into the Logfile.')]
|
||||
[ValidateNotNullOrEmpty()]
|
||||
[STRING]$LogPath=(Get-Variable -Name LogPath -Scope Global -ValueOnly -ErrorAction SilentlyContinue),
|
||||
|
||||
[Parameter(Position=3,Mandatory=$False,HelpMessage='Give the String you want to be written into the Logfile.')]
|
||||
[ValidateNotNullOrEmpty()]
|
||||
[STRING]$ScriptName=(Get-Variable -Name ScriptName -Scope Global -ValueOnly -ErrorAction SilentlyContinue),
|
||||
|
||||
[Parameter(Position=4,Mandatory=$False,HelpMessage='Give the String you want to be written into the Logfile.')]
|
||||
[ValidateNotNullOrEmpty()]
|
||||
[STRING]$ScriptPath=(Get-Variable -Name ScriptPath -Scope Global -ValueOnly -ErrorAction SilentlyContinue)
|
||||
|
||||
) #end param
|
||||
|
||||
#Clear Error Variable
|
||||
$error.clear()
|
||||
|
||||
IF (!$LogFile) {
|
||||
|
||||
$LogFile = ((($MyInvocation.MyCommand.Name) -split "\.")[0].ToString())+".log"
|
||||
Write-Host "DEBUG Info - Write-LogFile: FailSafe Setting for LogFile, was set to: $LogFile"
|
||||
|
||||
} #end if
|
||||
|
||||
IF (!$LogPath) {
|
||||
|
||||
$LogPath = $PSScriptRoot+"\Logs"
|
||||
Write-Host "DEBUG Info - Write-LogFile: FailSafe Setting for LogPath, was set to: $LogPath"
|
||||
|
||||
} #end if
|
||||
|
||||
IF (!$ScriptName) {
|
||||
|
||||
$ScriptName = ((($MyInvocation.MyCommand.Name) -split "\.")[0].ToString())
|
||||
Write-Host "DEBUG Info - Write-LogFile: FailSafe Setting for ScriptName, was set to: $ScriptName"
|
||||
|
||||
} #end if
|
||||
|
||||
IF (!$ScriptPath) {
|
||||
|
||||
$ScriptPath = $PSScriptRoot
|
||||
Write-Host "DEBUG Info - Write-LogFile: FailSafe Setting for ScriptPath, was set to: $ScriptPath"
|
||||
|
||||
} #end if
|
||||
|
||||
# This if / else block is only for determine the LogPath
|
||||
IF ((!$LogPath) -or ($LogPath -eq $PSScriptRoot+"\Logs")) {
|
||||
|
||||
Write-Host ""
|
||||
Write-Host "DEBUG Info - Write-LogFile: LogPath is currently not set!"
|
||||
[Array]$LogPaths = $LogPaths
|
||||
[Array]$LogPaths = ($LogPaths += "$ScriptPath\Logs","$env:temp\Digital Data\$ScriptName\Logs")
|
||||
[int]$Counter1 = 0
|
||||
|
||||
DO {
|
||||
|
||||
#Determine the current Array object
|
||||
[String]$LogPath = [Array]$($LogPaths[$Counter1])
|
||||
|
||||
Write-Host ""
|
||||
Write-Host "DEBUG Info - Write-LogFile: Testing LogPath: $LogPath"
|
||||
$PathTest = Test-Path -PathType Container "$LogPath"
|
||||
|
||||
#Check if Path already exists
|
||||
IF ($PathTest -eq $True) {
|
||||
|
||||
Write-Host "DEBUG Info - Write-LogFile: LogPath seems already to exists: $LogPath"
|
||||
|
||||
} #end if
|
||||
|
||||
ELSE {
|
||||
|
||||
#If Path doesnt exist, try to create it!
|
||||
Try {
|
||||
|
||||
Write-Host "DEBUG Info - Write-LogFile: Trying to create LogPath: $LogPath"
|
||||
New-Item -ItemType Directory -Path "$LogPath" -Force -ErrorAction Stop | Out-Null
|
||||
Write-Host "DEBUG Info - Write-LogFile: Trying seems to be successful!"
|
||||
|
||||
} #end try
|
||||
|
||||
Catch {
|
||||
|
||||
Write-Host "DEBUG Info - Write-LogFile: Cannot create LogPath or access denied!"
|
||||
Write-Host $Error
|
||||
|
||||
} #end catch
|
||||
|
||||
} #end else
|
||||
|
||||
#Check again if path exists
|
||||
$PathTest = Test-Path -PathType Container "$LogPath"
|
||||
|
||||
IF ($PathTest -eq $True) {
|
||||
|
||||
Try {
|
||||
|
||||
Write-Host "DEBUG Info - Write-LogFile: Trying to write a TestFile into the LogPath."
|
||||
New-Item -ItemType File -Path "$LogPath\AccessTest.txt" -Force -ErrorAction Stop | Out-Null
|
||||
Add-content "$LogPath\AccessTest.txt" -Value "This is a Test!" -Force -ErrorAction Stop | Out-Null
|
||||
$FileTest = Test-Path -Path "$LogPath\AccessTest.txt" -PathType Leaf -ErrorAction Stop
|
||||
Remove-Item -Path "$LogPath\AccessTest.txt" -Force -ErrorAction Stop | Out-Null
|
||||
Write-Host "DEBUG Info - Write-LogFile: Write Test seems to be successful."
|
||||
Set-Variable -Name LogPath -Value $LogPath -Scope Global -Force
|
||||
|
||||
} #end try
|
||||
|
||||
Catch {
|
||||
|
||||
Write-Host "DEBUG Info - Write-LogFile: Cannot write into LogPath or access denied!"
|
||||
Write-Host $Error
|
||||
|
||||
} #end catch
|
||||
|
||||
} #end if
|
||||
|
||||
ELSE {
|
||||
|
||||
Write-Host "DEBUG Info - Write-LogFile: Cannot create LogPath or access denied!"
|
||||
Write-Host $Error
|
||||
|
||||
} #end else
|
||||
|
||||
[int]$Counter1++ | Out-Null
|
||||
|
||||
} #end do
|
||||
|
||||
UNTIL ((($PathTest -eq $True) -and ($FileTest -eq $True)) -or ($Counter1 -eq $($LogPaths.count)) )
|
||||
|
||||
} #end if
|
||||
|
||||
ELSEIF ($LogPath) {
|
||||
|
||||
#Write-Host "DEBUG Info - Write-LogFile: LogPath was already been set!"
|
||||
#Write-Host "DEBUG Info - Write-LogFile: LogPath is $LogPath"
|
||||
|
||||
} #end elseif
|
||||
|
||||
ELSE {
|
||||
|
||||
Write-Host "Unexpected Error!"
|
||||
Write-Host $Error
|
||||
Return $False
|
||||
|
||||
} #end else
|
||||
|
||||
IF ($LogPath) {
|
||||
|
||||
#After LogPath determination - try to log the string
|
||||
Try {
|
||||
|
||||
Write-Host "$LogLine"
|
||||
Add-content $LogPath\$LogFile -value "$(Get-Date -Format 'dd.MM.yyyy')-$(Get-Date -Format 'HH:mm:ss'): $LogLine" -ErrorAction Stop
|
||||
#Return $True
|
||||
|
||||
} #end try
|
||||
|
||||
Catch {
|
||||
|
||||
Write-Host "DEBUG Info - Write-LogFile: Cannot write to LogFile!"
|
||||
Write-Host "DEBUG Info - Write-LogFile: Exiting, because of this Issue."
|
||||
Write-Host $Error
|
||||
EXIT
|
||||
|
||||
} #end catch
|
||||
|
||||
} #end if
|
||||
|
||||
ELSE {
|
||||
|
||||
Write-Host "DEBUG Info - Write-LogFile: Cannot write to LogFile!"
|
||||
Write-Host "DEBUG Info - Write-LogFile: Exiting, because of this Issue."
|
||||
Write-Host $Error
|
||||
EXIT
|
||||
|
||||
} #end else
|
||||
|
||||
} #end function
|
||||
@@ -0,0 +1,141 @@
|
||||
####################################################################################################
|
||||
# Digital Data Configuration File (Template Date: 29.07.2016) #
|
||||
# UTF-8 Coding required! #
|
||||
# incl. FailSafe functions that are active when information is missing. #
|
||||
####################################################################################################
|
||||
|
||||
#==================================================================================================#
|
||||
########################################## General Setup ###########################################
|
||||
#==================================================================================================#
|
||||
|
||||
####################################################################################################
|
||||
# Path in which the log files will be stored. #
|
||||
# Example: E:\LogFiles\<ScriptName> #
|
||||
# FailSafe Setting is: <ScriptPath> #
|
||||
####################################################################################################
|
||||
LogPath =
|
||||
|
||||
####################################################################################################
|
||||
# Numerical value how long (in days) log files will be kept. #
|
||||
# Value of 0 disables the delete function completely. #
|
||||
# FailSafe Setting is: 60 #
|
||||
####################################################################################################
|
||||
LogFileKeepTime = 30
|
||||
|
||||
####################################################################################################
|
||||
# Special characters which is used to separate file versions. #
|
||||
# Example: File_4711_1606~2.pdf #
|
||||
####################################################################################################
|
||||
VersionSeperator = ~
|
||||
|
||||
####################################################################################################
|
||||
# Numerical value how old (in minutes) must be a File to be processed. #
|
||||
# Example: 1 #
|
||||
# FailSafe Setting is: 5 #
|
||||
####################################################################################################
|
||||
FileDelayAge = 0
|
||||
|
||||
####################################################################################################
|
||||
# Numeric Value for attempts to process locked files. #
|
||||
# Example: 10000000 #
|
||||
# FailSafe Setting is: 1000 #
|
||||
####################################################################################################
|
||||
FileCheckCounterLimit = 1000
|
||||
|
||||
#==================================================================================================#
|
||||
########################################## Profile Setup ###########################################
|
||||
#==================================================================================================#
|
||||
|
||||
####################################################################################################
|
||||
# Define Profiles in this config file for mapping network resources. #
|
||||
# Syntax: #
|
||||
# MountProfile = <SourcePath> ; <TargetLetter> ; <UserName|Domain\UserName> ; <Password> #
|
||||
# Example: #
|
||||
# MountProfile = \\path\share ; T ; domain\username ; password #
|
||||
#--------------------------------------------------------------------------------------------------#
|
||||
# First Parameter: <SourcePath> #
|
||||
# Set the path, you want to connect to. #
|
||||
# Example: \\path\share #
|
||||
#--------------------------------------------------------------------------------------------------#
|
||||
# Second Parameter: <SourceFile> #
|
||||
# Set the local letter or PSDrive Share name. #
|
||||
# Example: T #
|
||||
# Example: Testdrive #
|
||||
#--------------------------------------------------------------------------------------------------#
|
||||
# Third Parameter: <UserName|Domain\UserName> #
|
||||
# Set the Username (or domain\UserName) who has access rights to the share. #
|
||||
# Example: Administrator #
|
||||
#--------------------------------------------------------------------------------------------------#
|
||||
# Fourth Parameter: <Password> #
|
||||
# Set the password for the Username above. #
|
||||
# Example: SecurePassword #
|
||||
####################################################################################################
|
||||
|
||||
####################################################################################################
|
||||
# Define up to 99 MoveOrCopy Profiles in this config file for the executing Script. #
|
||||
# Syntax: #
|
||||
# MOCF_Profile = move|copy ; *.<FileType>, ; <SourcePath> ; true|false ; writetest|readtest ; #
|
||||
# <DestinationPath> #
|
||||
# Example: #
|
||||
# MOCF_Profile = move ; *.* ; E:\SourcePath ; true ; writetest ; E:\DestinationPath #
|
||||
#--------------------------------------------------------------------------------------------------#
|
||||
# Special Parameter: 3 - <SourcePath> #
|
||||
# -> Instead of the SourcePath you can write "%ProcessOnlyLastProfileFiles". #
|
||||
# If you do so, the files from the last Profile run will be processed by the current Profile. #
|
||||
# Because of this the set up FileType will be ignored! #
|
||||
# MOCF_Profile = move ; *.* ; %ProcessOnlyLastProfileFiles ; E:\DestinationPath #
|
||||
# #
|
||||
# Fourth Parameter: <ReclusiveSwitch> #
|
||||
# Determine if the SourcePath should be searched only in the main dir or even in every subfolder. #
|
||||
# Example: True --Search in every Subfolder under the specified Sourcefolder. #
|
||||
# Example: False --Search only in the specified Sourcefolder. #
|
||||
# #
|
||||
# Fifth Parameter: <filechecktyp> #
|
||||
# Determine if the SourceFile should be check only for readstate or read- and writestate. #
|
||||
# Remember, writetest could fail with some filetypes like pdfA or encrypted zip files. #
|
||||
# Example: writetest --Test File before processing if it is read and writeable. #
|
||||
# Example: readtest --Test File before processing if it is readable. #
|
||||
# #
|
||||
# NOTE: #
|
||||
# It is possible, to work with multiple Placeholders in the Sourcepath: #
|
||||
# Runtime Variable = %Date% #
|
||||
# File specific variables = %CreationTimeYear%, %CreationTimeMonth%, %CreationTimeDay%, #
|
||||
# %LastAccessTimeYear%, %LastAccessTimeMonth%, %LastAccessTimeDay%, #
|
||||
# %LastWriteTimeYear%, %LastWriteTimeMonth%, %LastWriteTimeDay% #
|
||||
#--------------------------------------------------------------------------------------------------#
|
||||
# Optional Parameter: %FileDelayAge<Minutes> #
|
||||
# Numerical value how old (in minutes) must be a File to be processed. #
|
||||
# If you not using this Parameter, Script will use FileDelayAge Setting from the general setting. #
|
||||
# Example: #
|
||||
# MOCF_Profile = move ; *.pdf ; E:\SourcePath ; E:\DestinationPath ; %FileDelayAge15 #
|
||||
#--------------------------------------------------------------------------------------------------#
|
||||
# Optional Parameter: %RegExGroup<GroupNumber> #
|
||||
# Regular Expression with selects the definied GroupNumber. Group 1 to 9 are available. #
|
||||
# Only defined RegEx Groups will be found, by this setting. Define Groups by using () in RegEx. #
|
||||
# If RegEx setting is matching file(s), the DestinationPath will be added with the \<RegExResult> #
|
||||
# Example: #
|
||||
# MOCF_Profile = move ; *.pdf ; E:\SourcePath ; E:\DestinationPath ; #
|
||||
# %RegExGroup1(?:%SCAN%&(DD-[a-zA-Z-]{1,})) #
|
||||
#--------------------------------------------------------------------------------------------------#
|
||||
# Optional Parameter: %Replace<OldValue>,<NewValue> #
|
||||
# String which you can set to be replaced with an other String, or a blank Value. #
|
||||
# Replace setting will affect even results from the RegEx setting. #
|
||||
# Example: #
|
||||
# MOCF_Profile = move ; *.pdf ; E:\SourcePath ; E:\DestinationPath ; %Replace%SCAN%&, #
|
||||
#--------------------------------------------------------------------------------------------------#
|
||||
# Argument call: #
|
||||
# If you need to run the Script with dynamic Values, you can do so, by calling it with arguments. #
|
||||
# Even the Special and Optional Parameters are available in this case. #
|
||||
# Example: #
|
||||
# powershell.exe -command "E:\MoveOrCopy.ps1 -argOperation copy -argFileTypes *.pdf #
|
||||
# -argSourcePath E:\SourcePath -argDestinationPath E:\DestinationPath -argFileDelayAge 15" #
|
||||
####################################################################################################
|
||||
|
||||
#MountProfile = \\path\share ; T ; domain\username ; password
|
||||
|
||||
MOCF_Profile = move; *Attm0.pdf ; E:\Testordner\input ; true ; writetest ; E:\Testordner\output1
|
||||
MOCF_Profile = move; %not% *Attm0.pdf ; E:\Testordner\input ; true ; writetest ; E:\Testordner\output2
|
||||
|
||||
#MOCF_Profile = copy; *.pdf ; E:\Testordner\input ; true ; writetest ; E:\Testordner\output
|
||||
#MOCF_Profile = copy; *.pdf ; %ProcessOnlyLastProfileFiles ; true ; writetest ; E:\Testordner\output ; %FileDelayAge5
|
||||
#MOCF_Profile = copy; *.pdf ; E:\Testordner\input ; true ; writetest ; E:\Testordner\output ; %FileDelayAge15 ; %RegExGroup1(?:%SCAN%&(DD-[a-zA-Z-]{1,})) ; %Replace%SCAN%&,
|
||||
BIN
current/DD-Core/MoveOrCopy-Files/MoveOrCopy-Files.ps1
Normal file
BIN
current/DD-Core/MoveOrCopy-Files/MoveOrCopy-Files.ps1
Normal file
Binary file not shown.
45
current/DD-Core/MoveOrCopy-Files/MoveOrCopy-Files_Caller.cmd
Normal file
45
current/DD-Core/MoveOrCopy-Files/MoveOrCopy-Files_Caller.cmd
Normal file
@@ -0,0 +1,45 @@
|
||||
@ECHO OFF
|
||||
TITLE DIGITAL DATA - Run all files in directory with current permissions
|
||||
ECHO -
|
||||
ECHO Batch Script
|
||||
ECHO Run all files in directory with current permissions
|
||||
ECHO -
|
||||
ECHO Digital Data
|
||||
ECHO Ludwig-Rinn-Strasse 16
|
||||
ECHO 35452 Heuchelheim
|
||||
ECHO Tel.: 0641 / 202360
|
||||
ECHO E-Mail: info@didalog.de
|
||||
ECHO -
|
||||
ECHO Version 1.0.0.0
|
||||
ECHO Date: 13.08.2015
|
||||
ECHO -
|
||||
ECHO Program Startup %date% at %time:~0,8% oclock, on %computername%.
|
||||
|
||||
REM --------------------------------------------------------------
|
||||
REM ------------------------set variables-------------------------
|
||||
REM --------------------------------------------------------------
|
||||
|
||||
setlocal enableextensions
|
||||
|
||||
SET DIRECTORY="%cd%"
|
||||
SET FILEEXTENSION=*.ps1
|
||||
SET COUNT=0
|
||||
|
||||
REM --------------------------------------------------------------
|
||||
REM ---------------------Program 1 / Script 1---------------------
|
||||
REM --------------------------------------------------------------
|
||||
|
||||
FOR /F "tokens=*" %%f in ('dir /S /b %FILEEXTENSION%') do (ECHO %%f && set /a count+=1)
|
||||
ECHO -
|
||||
ECHO Found %count% File(s) with File Extension %FILEEXTENSION% in Directory:
|
||||
ECHO %DIRECTORY%.
|
||||
|
||||
ECHO -
|
||||
ECHO Running this/them now, with your permissions!
|
||||
FOR /F "tokens=*" %%f in ('dir /S /b %FILEEXTENSION%') do (PowerShell.exe -Command "& {Start-Process PowerShell.exe -WindowStyle hidden '-ExecutionPolicy Bypass -File "%%f"'}")
|
||||
|
||||
ECHO -
|
||||
ECHO This Window will close in:
|
||||
#timeout /T 10
|
||||
endlocal
|
||||
exit
|
||||
37
current/DD-Core/MoveOrCopy-Files/MoveOrCopy-Files_Caller.vbs
Normal file
37
current/DD-Core/MoveOrCopy-Files/MoveOrCopy-Files_Caller.vbs
Normal file
@@ -0,0 +1,37 @@
|
||||
' VB Script Document
|
||||
' option explicit
|
||||
|
||||
' MoveOrCopy-Files_Caller
|
||||
' Verschiebe Dateien nacheinander nach einem definierten Muster
|
||||
|
||||
' Digital Data
|
||||
' Ludwig-Rinn-Straße 16
|
||||
' 35452 Heuchelheim
|
||||
' Tel.: 0641 / 202360
|
||||
' E-Mail: info@didalog.de
|
||||
|
||||
' Version 1.0.0.1
|
||||
' Letzte Aktualisierung: 05.08.2016
|
||||
|
||||
'------------------------------------------------------------------------------------------------------------------
|
||||
' Run a command. Copy that script block and paste it after this one, for step by step processing.
|
||||
'------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
' Create object
|
||||
Set objShell = CreateObject("Wscript.shell")
|
||||
|
||||
objShell.run("powershell -file D:\ScriptFiles\MoveOrCopy-Files\BatchBarcodeSeperator_Ende\MoveOrCopyFiles.ps1")
|
||||
|
||||
' Deallocate WScript Shell object
|
||||
Set objShell = Nothing
|
||||
|
||||
' Connect to Windows Management Instrumentation (WMI) object using a moniker
|
||||
Set objWMIService = GetObject("winmgmts:\\.\root\cimv2")
|
||||
|
||||
' Execute a query to monitor process deletion
|
||||
Set colEvents = objWMIService.ExecNotificationQuery("Select * From __InstanceDeletionEvent " _
|
||||
& "Within 1 Where TargetInstance ISA 'Win32_Process' And TargetInstance.Name = 'powershell.exe'")
|
||||
|
||||
' Wait for process deletion event
|
||||
Set objEvent = colEvents.NextEvent
|
||||
'------------------------------------------------------------------------------------------------------------------
|
||||
152
current/DD-Core/MoveOrCopy-Files/MoveOrCopy-Files_History.txt
Normal file
152
current/DD-Core/MoveOrCopy-Files/MoveOrCopy-Files_History.txt
Normal file
@@ -0,0 +1,152 @@
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
Version 1.5.2.1 - 18.08.2025
|
||||
NEW: -
|
||||
FIX: -
|
||||
CHG: - Script accepts only one config file now
|
||||
REM: -
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Version 1.5.2.0 - 09.11.2024
|
||||
NEW: -
|
||||
FIX: -
|
||||
CHG: - Updated Module loader to current "Import-CustomModule"
|
||||
REM: -
|
||||
|
||||
-----------------------------------------------------------
|
||||
|
||||
Version 1.5.1.0 - 07.11.2024
|
||||
NEW: - Logging if files cannot get read (get-childitem)
|
||||
FIX: -
|
||||
CHG: - Using now "LiteralPath" instead of "Path" in copy, move and hash functions
|
||||
REM: -
|
||||
|
||||
-----------------------------------------------------------
|
||||
|
||||
Version 1.5.0.0 - 21.02.2024
|
||||
NEW: - Es können nun Netzlaufwerke per "MountProfile" eingebunden werden
|
||||
FIX: -
|
||||
CHG: - Der aktuelle Module Loader wurde implementiert
|
||||
REM: -
|
||||
|
||||
-----------------------------------------------------------
|
||||
|
||||
Version 1.3.3.0 - 12.12.2023
|
||||
NEW: - Man kann nun den Parameter %not% als negatives Suchkriterium verwenden
|
||||
FIX: -
|
||||
CHG: -
|
||||
REM: -
|
||||
|
||||
-----------------------------------------------------------
|
||||
|
||||
Version 1.3.2.0 - 08.07.2021
|
||||
NEW: -
|
||||
FIX: - Fehler beim L schen von Logs behoben.
|
||||
CHG: -
|
||||
REM: -
|
||||
|
||||
-----------------------------------------------------------
|
||||
|
||||
Version 1.3.1.0 - 30.04.2021
|
||||
NEW: -
|
||||
FIX: - Fehler in File Collector Funktion behoben.
|
||||
- Fehler in Zielpfadbestimmung behoben, wenn Datei Attribute ausgelesen wurden.
|
||||
CHG: - File Collector listet nun vorab nicht mehr alle Dateien auf (machte das Skript zu langsam und die Logs zu gro ).
|
||||
REM: -
|
||||
|
||||
-----------------------------------------------------------
|
||||
|
||||
Version 1.3.0.0 - 22.04.2021
|
||||
NEW: - Neuer Parameter f r Profile, es muss nun bestimmt werden, ob auch Unterverzeichnisse durchsucht werden (ReclusiveSwitch).
|
||||
- Neuer Parameter f r Profile, es muss nun bestimmt werden, wie eine Datei vor der Verarbeitung gepr ft wird (filechecktyp).
|
||||
FIX: -
|
||||
CHG: -
|
||||
REM: -
|
||||
|
||||
-----------------------------------------------------------
|
||||
|
||||
Version 1.2.0.0 - 20.04.2021
|
||||
NEW: - Diverse Datumsplatzhalter f r den Zielpfad eingef gt (z.b.: %CreationTimeYear%, ...)
|
||||
FIX: -
|
||||
CHG: -
|
||||
REM: -
|
||||
|
||||
-----------------------------------------------------------
|
||||
|
||||
Version 1.1.4.0 - 15.03.2019
|
||||
NEW: -
|
||||
FIX: - Schleifen Fehler bei %ProcessOnlyLastProfileFiles behoben
|
||||
CHG: -
|
||||
REM: -
|
||||
|
||||
-----------------------------------------------------------
|
||||
|
||||
Version 1.1.3.0 - 13.03.2019
|
||||
NEW: -
|
||||
FIX: -
|
||||
CHG: - Log Dateien entschlackt
|
||||
REM: -
|
||||
|
||||
-----------------------------------------------------------
|
||||
|
||||
Version 1.1.2.0 - 28.02.2019
|
||||
NEW: - %date% Variable hinzugef gt
|
||||
FIX: -
|
||||
CHG: -
|
||||
REM: -
|
||||
|
||||
-----------------------------------------------------------
|
||||
|
||||
Version 1.1.1.0 - 24.02.2017
|
||||
NEW: -
|
||||
FIX: - Fehler in Schleifenz hler korrigiert.
|
||||
CHG: -
|
||||
REM: -
|
||||
|
||||
-----------------------------------------------------------
|
||||
|
||||
Version 1.1.0.1 - 01.08.2016
|
||||
NEW: -
|
||||
FIX: - Variablen Bereinigung vervollst ndigt.
|
||||
CHG: -
|
||||
REM: -
|
||||
|
||||
-----------------------------------------------------------
|
||||
|
||||
Version 1.1.0.0 - 29.07.2016
|
||||
NEW: - Neue optionale Parameter verf gbar: %RegExGroup and %Replace.
|
||||
FIX: -
|
||||
CHG: - Optionale Parameter folgen nun keiner spezifischen Reihenfolge mehr.
|
||||
REM: -
|
||||
|
||||
-----------------------------------------------------------
|
||||
|
||||
|
||||
Version 1.0.1.2 - 07.02.2016
|
||||
NEW: - Aufrufparameter nun verf gbar.
|
||||
FIX: -
|
||||
CHG: -
|
||||
REM: -
|
||||
|
||||
-----------------------------------------------------------
|
||||
|
||||
Version 1.0.1.0 - 30.09.2015
|
||||
NEW: - Funktion "Func-File-check-state" nun eingebaut.
|
||||
FIX: -
|
||||
CHG: - Umbennung von "Simply_copy_or_move_Files" zu "MoveOrCopyFiles".
|
||||
REM: -
|
||||
|
||||
-----------------------------------------------------------
|
||||
|
||||
Version 1.0.0.0 - 08.12.2014 - Erste funktionierende Version!
|
||||
NEW: -
|
||||
FIX: -
|
||||
CHG: -
|
||||
REM: -
|
||||
|
||||
--------------------------Legende--------------------------
|
||||
NEW: = Hinzuf gen einer neuen Funktion
|
||||
FIX: = Korrektur einer vorhandenen Funktion
|
||||
CHG: = nderung oder Erweiterung einer vorhandenen Funktion
|
||||
REM: = Entfernen einer Funktion
|
||||
-----------------------------------------------------------
|
||||
Binary file not shown.
9
current/DD-Core/Purge-windream/WMPurge-nach356Tagen.bat
Normal file
9
current/DD-Core/Purge-windream/WMPurge-nach356Tagen.bat
Normal file
@@ -0,0 +1,9 @@
|
||||
set LOGFILE="..\Reporting\WMPurge.log"
|
||||
echo --------------------------------------------- >> %LOGFILE% 2>&1
|
||||
echo --------------------------------------------- >> %LOGFILE% 2>&1
|
||||
echo %DATE% %TIME% >> %LOGFILE% 2>&1
|
||||
|
||||
|
||||
REM --- purge documents that were deleted 356 days before or earlier
|
||||
echo WMPurge.exe -v -c -a 356d >> %LOGFILE% 2>&1
|
||||
WMPurge.exe -v -c -a 356d >> %LOGFILE% 2>&1
|
||||
BIN
current/DD-Core/Purge-windream/windream Filestore Bereinigen.xml
Normal file
BIN
current/DD-Core/Purge-windream/windream Filestore Bereinigen.xml
Normal file
Binary file not shown.
BIN
current/DD-Core/Remove-EmptyFolders/Remove-EmptyFolders.ps1
Normal file
BIN
current/DD-Core/Remove-EmptyFolders/Remove-EmptyFolders.ps1
Normal file
Binary file not shown.
@@ -0,0 +1,98 @@
|
||||
####################################################################################################
|
||||
# Digital Data Configuration File (Template Date: 30.07.2016) #
|
||||
# UTF-8 Coding required! #
|
||||
# incl. FailSafe functions that are active when information is missing. #
|
||||
####################################################################################################
|
||||
|
||||
#==================================================================================================#
|
||||
########################################## General Setup ###########################################
|
||||
#==================================================================================================#
|
||||
|
||||
####################################################################################################
|
||||
# Path in which the log files will be stored. #
|
||||
# Example: E:\LogFiles\<ScriptName> #
|
||||
# FailSafe Setting is: <ScriptPath>\Logs #
|
||||
####################################################################################################
|
||||
LogPath =
|
||||
|
||||
####################################################################################################
|
||||
# Numerical value how long (in days) log files will be kept. ValidateRange is 0 - 1000 #
|
||||
# Setting the Value to 0 disables this Function. #
|
||||
# FailSafe Setting is: 60 #
|
||||
####################################################################################################
|
||||
LogFileKeepTime = 30
|
||||
|
||||
#==================================================================================================#
|
||||
########################################## Profile Setup ###########################################
|
||||
#==================================================================================================#
|
||||
|
||||
####################################################################################################
|
||||
# Define Profiles in this config file for the executing Script. #
|
||||
# Syntax: #
|
||||
# Profile = <ProfileType>;<SourcePath>;<FileType>;<ReclusiveSwitch>;<DeleteItemsOlderThen>; #
|
||||
# <DeleteItemsFileSystemAttribute> #
|
||||
# Example: #
|
||||
# Profile = E:\SourcePath ; *.log ; true ; 10minutes ; LastWriteTime #
|
||||
#--------------------------------------------------------------------------------------------------#
|
||||
# First Parameter: <ProfileType> #
|
||||
# Determine which kind of Objects should be processed. #
|
||||
# By choosing Folders for deletion, ONLY EMPTY Folders will be deleted #
|
||||
# (Hidden System Files will be ignored). #
|
||||
# FailSafe Setting is: FoldersOnly #
|
||||
# Example: FilesOnly #
|
||||
# Example: FoldersOnly #
|
||||
# Example: FilesAndFolders #
|
||||
#--------------------------------------------------------------------------------------------------#
|
||||
# Second Parameter: <SourcePath> #
|
||||
# Give the Path to the files you want to process. #
|
||||
# Example: E:\SourcePath #
|
||||
#--------------------------------------------------------------------------------------------------#
|
||||
# Third Parameter: <FileType> #
|
||||
# Set the File extensions you want to search for, in the specified SourcePath. #
|
||||
# Example: *.* --This means every File Extension. #
|
||||
# Example: *.pdf --This means only Files with the Extension "pdf". #
|
||||
#--------------------------------------------------------------------------------------------------#
|
||||
# Fourth Parameter: <ReclusiveSwitch> #
|
||||
# Determine if the SourcePath should be searched only in the main dir or even in every subfolder. #
|
||||
# Example: True --Search in every Subfolder under the specified Sourcefolder. #
|
||||
# Example: False --Search only in the specified Sourcefolder. #
|
||||
#--------------------------------------------------------------------------------------------------#
|
||||
# Fifth Parameter: <DeleteItemsOlderThen> #
|
||||
# Define how old file/folder must be, before deletion. Minutes, Hours, Days and Years are possible.#
|
||||
# Example: 15minutes #
|
||||
# Example: 5hours #
|
||||
# Example: 3days #
|
||||
# Example: 4years #
|
||||
#--------------------------------------------------------------------------------------------------#
|
||||
# Sixth Parameter: <DeleteItemsFileSystemAttribute> #
|
||||
# Define which FileSystem Attribut will be used in correspondence with the fifth Parameter. #
|
||||
# FailSafe Setting is: LastWriteTime #
|
||||
# Example: CreationTime #
|
||||
# Example: LastAccessTime #
|
||||
# Example: LastWriteTime #
|
||||
#--------------------------------------------------------------------------------------------------#
|
||||
# Argument call: #
|
||||
# If you need to run the Script with dynamic Values, you can do so, by calling it with Arguments. #
|
||||
# Configured Profiles in INI-File will be ignored! #
|
||||
# The Arguments are the same as the Parameters in the configuration below. #
|
||||
# Every Argument can be used by position or name. #
|
||||
# Example: #
|
||||
# Remove-ItemByAge.ps1 "FilesAndFolders" "E:\OldFiles" "*.*" "true" "1days" "CreationTime" #
|
||||
# Example: #
|
||||
# Remove-ItemByAge.ps1 -ProfileType "FilesAndFolders" -SourcePath "E:\OldFiles" -FileType "*.*" #
|
||||
# -ReclusiveSwitch "true" -DeleteItemsOlderThen "1days" #
|
||||
# -DeleteItemsFileSystemAttribute "CreationTime" #
|
||||
####################################################################################################
|
||||
|
||||
Profile = FilesAndFolders ; E:\KammM - Kopie ; *.* ; true; 5minutes ; CreationTime
|
||||
|
||||
#Profile = FilesOnly ; E:\LogFiles\SomeApp ; *.log ; true ; 15minutes ; LastWriteTime
|
||||
#Profile = FoldersOnly ; E:\LogFiles\SomeApp ; *.log ; true ; 5hours ; CreationTime
|
||||
#Profile = FilesAndFolders ; E:\LogFiles\SomeApp ; *.log ; true ; 3days ; LastWriteTime
|
||||
#Profile = FilesAndFolders ; E:\LogFiles\SomeApp ; *.log ; true ; 4years ; LastAccessTime
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
BIN
current/DD-Core/Remove-ItemByAge/Remove-ItemByAge.ps1
Normal file
BIN
current/DD-Core/Remove-ItemByAge/Remove-ItemByAge.ps1
Normal file
Binary file not shown.
45
current/DD-Core/Remove-ItemByAge/Remove-ItemByAge_Caller.cmd
Normal file
45
current/DD-Core/Remove-ItemByAge/Remove-ItemByAge_Caller.cmd
Normal file
@@ -0,0 +1,45 @@
|
||||
@ECHO OFF
|
||||
TITLE DIGITAL DATA - Run all files in directory with current permissions
|
||||
ECHO -
|
||||
ECHO Batch Script
|
||||
ECHO Run all files in directory with current permissions
|
||||
ECHO -
|
||||
ECHO Digital Data
|
||||
ECHO Ludwig-Rinn-Strasse 16
|
||||
ECHO 35452 Heuchelheim
|
||||
ECHO Tel.: 0641 / 202360
|
||||
ECHO E-Mail: info@didalog.de
|
||||
ECHO -
|
||||
ECHO Version 1.0.0.0
|
||||
ECHO Date: 13.08.2015
|
||||
ECHO -
|
||||
ECHO Program Startup %date% at %time:~0,8% oclock, on %computername%.
|
||||
|
||||
REM --------------------------------------------------------------
|
||||
REM ------------------------set variables-------------------------
|
||||
REM --------------------------------------------------------------
|
||||
|
||||
setlocal enableextensions
|
||||
|
||||
SET DIRECTORY="%cd%"
|
||||
SET FILEEXTENSION=*.ps1
|
||||
SET COUNT=0
|
||||
|
||||
REM --------------------------------------------------------------
|
||||
REM ---------------------Program 1 / Script 1---------------------
|
||||
REM --------------------------------------------------------------
|
||||
|
||||
FOR /F "tokens=*" %%f in ('dir /S /b %FILEEXTENSION%') do (ECHO %%f && set /a count+=1)
|
||||
ECHO -
|
||||
ECHO Found %count% File(s) with File Extension %FILEEXTENSION% in Directory:
|
||||
ECHO %DIRECTORY%.
|
||||
|
||||
ECHO -
|
||||
ECHO Running this/them now, with your permissions!
|
||||
FOR /F "tokens=*" %%f in ('dir /S /b %FILEEXTENSION%') do (PowerShell.exe -Command "& {Start-Process PowerShell.exe -WindowStyle hidden '-ExecutionPolicy Bypass -File "%%f"'}")
|
||||
|
||||
ECHO -
|
||||
ECHO This Window will close in:
|
||||
#timeout /T 10
|
||||
endlocal
|
||||
exit
|
||||
@@ -0,0 +1,31 @@
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
Version 1.1.0.1 - 18.08.2025
|
||||
NEW: -
|
||||
FIX: -
|
||||
CHG: - Script accepts only one config file now
|
||||
REM: -
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
Version 1.1.0.0 - 24.03.2019
|
||||
NEW: - Selectable FileSystem Attribute
|
||||
- Add Argument call
|
||||
FIX: -
|
||||
CHG: - Code optimization for Item Array
|
||||
REM: -
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
Version 1.0.0.0 - 20.03.2019
|
||||
NEW: -
|
||||
FIX: -
|
||||
CHG: -
|
||||
REM: -
|
||||
|
||||
-------------------------------------legend------------------------------------
|
||||
NEW: = Added a new functionality
|
||||
FIX: = Fixed a Issue with existing functionality
|
||||
CHG: = Changed a existing functionality
|
||||
REM: = Removed a functionality
|
||||
-------------------------------------------------------------------------------
|
||||
Binary file not shown.
@@ -0,0 +1,137 @@
|
||||
####################################################################################################
|
||||
# Digital Data Configuration File (Template Date: 30.07.2016) #
|
||||
# UTF-8 Coding required! #
|
||||
# incl. FailSafe functions that are active when information is missing. #
|
||||
####################################################################################################
|
||||
|
||||
#==================================================================================================#
|
||||
########################################## General Setup ###########################################
|
||||
#==================================================================================================#
|
||||
|
||||
####################################################################################################
|
||||
# Path in which the log files will be stored. #
|
||||
# Example: E:\LogFiles\<ScriptName> #
|
||||
# FailSafe Setting is: <ScriptPath> #
|
||||
####################################################################################################
|
||||
LogPath = e:\KammM\Logs
|
||||
|
||||
####################################################################################################
|
||||
# Numerical value how long (in days) log files will be kept. ValidateRange is 0 - 1000 #
|
||||
# Setting the Value to 0 disables this Function. #
|
||||
# FailSafe Setting is: 60 #
|
||||
####################################################################################################
|
||||
LogFileKeepTime = 3
|
||||
|
||||
####################################################################################################
|
||||
# Special characters which is used to separate file versions. #
|
||||
# Example: File_4711_1606~2.pdf #
|
||||
# FailSafe Setting is: ~ #
|
||||
####################################################################################################
|
||||
VersionSeperator = ~
|
||||
|
||||
####################################################################################################
|
||||
# Numerical value how long (in Minutes) a File has to be there, before processing it. #
|
||||
# FailSafe Setting is: 5 #
|
||||
####################################################################################################
|
||||
FileDelayAge = 1
|
||||
|
||||
#==================================================================================================#
|
||||
######################################## Database settings ########################################
|
||||
#==================================================================================================#
|
||||
|
||||
####################################################################################################
|
||||
# Name or IP-Adress of the Database Server. #
|
||||
# Example: 192.168.0.1 #
|
||||
# Example: 192.168.0.1\<SQLInstance> #
|
||||
####################################################################################################
|
||||
DBSQLConnectServer = 172.24.12.41\tests
|
||||
|
||||
####################################################################################################
|
||||
# UserName for the SQL Connection. #
|
||||
# This Setting is not neccessary if DBSQLConnectIntegratedSecurity is set to "true". #
|
||||
# Example: sa #
|
||||
####################################################################################################
|
||||
DBSQLConnectUserName = sa
|
||||
|
||||
####################################################################################################
|
||||
# Password for the specified UserName you set before. #
|
||||
# This Setting is not neccessary if DBSQLConnectIntegratedSecurity is set to "true". #
|
||||
####################################################################################################
|
||||
DBSQLConnectUserPassword = dd
|
||||
|
||||
####################################################################################################
|
||||
# Set the Database Name which exists on the Database Server. #
|
||||
# Example: windream60 #
|
||||
####################################################################################################
|
||||
DBSQLConnectDatabase = windream60
|
||||
|
||||
####################################################################################################
|
||||
# Set this to "True" if the Windows Login credentials should be used of Database Login. #
|
||||
# In this case DBSQLConnectUserName and DBSQLConnectUserPassword setting will be ignored! #
|
||||
# Example: True #
|
||||
# Example: False #
|
||||
####################################################################################################
|
||||
DBSQLConnectIntegratedSecurity = false
|
||||
|
||||
#==================================================================================================#
|
||||
#################################### Directory and rule settings ###################################
|
||||
#==================================================================================================#
|
||||
|
||||
####################################################################################################
|
||||
# Give the Path and FullName of the Allocation File, #
|
||||
# which includes the relations between the Database returns and the new file Names. #
|
||||
# Example: AllocationFile = E:\mime.cfg #
|
||||
####################################################################################################
|
||||
AllocationFile = \\dd-sto01\DD-STO01-A2\UserObjects\UserFiles\KammM\Desktop\mime.cfg
|
||||
|
||||
#==================================================================================================#
|
||||
########################################## Profile Setup ###########################################
|
||||
#==================================================================================================#
|
||||
|
||||
####################################################################################################
|
||||
# Define Profiles in this config file for the executing Script. #
|
||||
# Syntax: #
|
||||
# Profile = <SourcePath> ; <FileType> ; <ReclusiveSwitch> ; <FileConstructor> ; <SQLQuery> #
|
||||
# Example: #
|
||||
# Profile = E:\dir;*.*;Extension;true;select szLongName from Table where dwdocid LIKE %filename% #
|
||||
#--------------------------------------------------------------------------------------------------#
|
||||
# First Parameter: <SourcePath> #
|
||||
# Give the Path to the files you want to process. #
|
||||
# Example: E:\dir #
|
||||
#--------------------------------------------------------------------------------------------------#
|
||||
# Second Paramenter: <FileType> #
|
||||
# Set the File extensions you want to search for, in the specified SourcePath. #
|
||||
# Example: *.* --This means every File Extension. #
|
||||
#--------------------------------------------------------------------------------------------------#
|
||||
# Third Paramenter: <ReclusiveSwitch> #
|
||||
# Determ if the SourcePath should be searched only in the main dir or even in every subfolder. #
|
||||
# Example: True --Search in every Subfolder under the specified Sourcefolder. #
|
||||
# Example: False --Search only in the specified Sourcefolder. #
|
||||
#--------------------------------------------------------------------------------------------------#
|
||||
# Fourth Paramenter: <FileConstructor> #
|
||||
# The FileConstructor Parameter let you determ, how the new File name will be generated. #
|
||||
# Example: prefix --FileName will be in prefix modified. File Extension will be kept. #
|
||||
# Example: complete --The complete Filename including the File Extension will be renamend. #
|
||||
# Example: suffix --FileName will be in suffix modified. File Extension will be kept. #
|
||||
# Example: Extension --Only the File Extension will be renamed. #
|
||||
#--------------------------------------------------------------------------------------------------#
|
||||
# Fifth Paramenter: <SQLQuery> #
|
||||
# Set the SQL Query which returns the correct File Name or the reference for the AllocationFile. #
|
||||
# In the SQL Statement, you can use these variables: #
|
||||
# %filename% = Current file Name incl. Extension, excl. Path. #
|
||||
# %username% = Current Username from Windows Session. #
|
||||
# %SourcePath% = Current Path in which File is stored. #
|
||||
# Example: select szLongName from Table where dwdocid LIKE %filename% #
|
||||
#--------------------------------------------------------------------------------------------------#
|
||||
# Argument call: #
|
||||
# If you need to run the Script with dynamic Values, you can do so, by calling it with arguments. #
|
||||
# Even the Special and Optional Parameters are available in this case. #
|
||||
# Example: #
|
||||
# This Function currently not implement! #
|
||||
####################################################################################################
|
||||
Profile = E:\KammM\test ; *.* ; true ; Extension ; select szLongName from baseattributes where dwdocid LIKE %filename%
|
||||
#Profile = E:\KammM\test ; *.* ; true ; Extension ; select szLongName from baseattributes where dwdocid LIKE %filename%
|
||||
|
||||
|
||||
|
||||
|
||||
BIN
current/DD-Core/Rename-ItemByDBValue/Rename-ItemByDBValue.ps1
Normal file
BIN
current/DD-Core/Rename-ItemByDBValue/Rename-ItemByDBValue.ps1
Normal file
Binary file not shown.
@@ -0,0 +1,45 @@
|
||||
@ECHO OFF
|
||||
TITLE DIGITAL DATA - Run all files in directory with current permissions
|
||||
ECHO -
|
||||
ECHO Batch Script
|
||||
ECHO Run all files in directory with current permissions
|
||||
ECHO -
|
||||
ECHO Digital Data
|
||||
ECHO Ludwig-Rinn-Strasse 16
|
||||
ECHO 35452 Heuchelheim
|
||||
ECHO Tel.: 0641 / 202360
|
||||
ECHO E-Mail: info@didalog.de
|
||||
ECHO -
|
||||
ECHO Version 1.0.0.0
|
||||
ECHO Date: 13.08.2015
|
||||
ECHO -
|
||||
ECHO Program Startup %date% at %time:~0,8% oclock, on %computername%.
|
||||
|
||||
REM --------------------------------------------------------------
|
||||
REM ------------------------set variables-------------------------
|
||||
REM --------------------------------------------------------------
|
||||
|
||||
setlocal enableextensions
|
||||
|
||||
SET DIRECTORY="%cd%"
|
||||
SET FILEEXTENSION=*.ps1
|
||||
SET COUNT=0
|
||||
|
||||
REM --------------------------------------------------------------
|
||||
REM ---------------------Program 1 / Script 1---------------------
|
||||
REM --------------------------------------------------------------
|
||||
|
||||
FOR /F "tokens=*" %%f in ('dir /S /b %FILEEXTENSION%') do (ECHO %%f && set /a count+=1)
|
||||
ECHO -
|
||||
ECHO Found %count% File(s) with File Extension %FILEEXTENSION% in Directory:
|
||||
ECHO %DIRECTORY%.
|
||||
|
||||
ECHO -
|
||||
ECHO Running this/them now, with your permissions!
|
||||
FOR /F "tokens=*" %%f in ('dir /S /b %FILEEXTENSION%') do (PowerShell.exe -Command "& {Start-Process PowerShell.exe -WindowStyle hidden '-ExecutionPolicy Bypass -File "%%f"'}")
|
||||
|
||||
ECHO -
|
||||
ECHO This Window will close in:
|
||||
#timeout /T 10
|
||||
endlocal
|
||||
exit
|
||||
@@ -0,0 +1,21 @@
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
Version 1.0.0.1 - 18.08.2025
|
||||
NEW: -
|
||||
FIX: -
|
||||
CHG: - Script accepts only one config file now
|
||||
REM: -
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
Version 1.0.0.0 - 04.10.2017
|
||||
NEW: -
|
||||
FIX: -
|
||||
CHG: -
|
||||
REM: -
|
||||
|
||||
-------------------------------------legend------------------------------------
|
||||
NEW: = Added a new functionality
|
||||
FIX: = Fixed a Issue with existing functionality
|
||||
CHG: = Changed a existing functionality
|
||||
REM: = Removed a functionality
|
||||
-------------------------------------------------------------------------------
|
||||
@@ -0,0 +1,76 @@
|
||||
# PowerShell 2.0 Script
|
||||
# Änderung des windream Servers
|
||||
|
||||
# Digital Data
|
||||
# Ludwig-Rinn-Strasse 16
|
||||
# 35452 Heuchelheim
|
||||
# Tel.: 0641 / 202360
|
||||
# E-Mail: info@didalog.de
|
||||
|
||||
# Version 1.0
|
||||
# Letzte Aktualisierung: 15.10.2014
|
||||
|
||||
# WICHTIG: Falls sich dieses Skript nicht ausführen lässt,
|
||||
# muss dieser PS-Befehl noch mit administrativen Rechten ausgeführt werden:
|
||||
# set-executionpolicy unrestricted
|
||||
|
||||
#Requires –Version 2.0
|
||||
|
||||
#-----------------------------------------------------------------------------------------------------
|
||||
############################ Zusätzliche Assemblys hinzufügen bzw. laden. ############################
|
||||
#-----------------------------------------------------------------------------------------------------
|
||||
|
||||
[void][System.Reflection.Assembly]::LoadWithPartialName('Microsoft.VisualBasic')
|
||||
[void][System.Reflection.Assembly]::LoadwithPartialName("System.Windows.Forms")
|
||||
|
||||
#-----------------------------------------------------------------------------------------------------
|
||||
######################################## Variablen definieren. #######################################
|
||||
#-----------------------------------------------------------------------------------------------------
|
||||
|
||||
Set-variable -Name IdXPolling -Value 1000
|
||||
Set-variable -Name wdServerAlt -Value "windreamserver2"
|
||||
Set-variable -Name wdServerNeu -Value "windreamserver"
|
||||
|
||||
#-----------------------------------------------------------------------------------------------------
|
||||
####################################### Funktionen definieren. #######################################
|
||||
#-----------------------------------------------------------------------------------------------------
|
||||
|
||||
# Funktion für eine VBScript-typische Messagebox. Der Inhalt der Meldung wird in die Log Datei geschrieben.
|
||||
Function Func-Show-MsgBox
|
||||
{
|
||||
Param
|
||||
(
|
||||
[Parameter(Mandatory=$true)]
|
||||
[String]$Text,
|
||||
[String]$Title = 'Message',
|
||||
[String]$Icon = 'YesNo,Information'
|
||||
)
|
||||
|
||||
#Func-Write-LogDatei -LogEintrag -LogEintrag "MessageBox-Inhalt: $Text"
|
||||
[Microsoft.VisualBasic.Interaction]::MsgBox($text, $icon, $title)
|
||||
}
|
||||
|
||||
$PathTest = Test-Path -Path "HKCU:\Software\A.I.S. GmbH\windream\3.6\ServerShareSelector\$wdServerAlt" -PathType Container
|
||||
|
||||
IF ($PathTest -eq 'True')
|
||||
{
|
||||
Write-Host "Alter Servereintrag wurde erkannt $wdServerAlt, wird nun ersetzt mit $wdServerNeu"
|
||||
|
||||
Set-ItemProperty -Path "HKCU:\Software\A.I.S. GmbH\windream\3.6\IndexServer" -Name Policy -Value $IdxPolling -Type DWord
|
||||
Set-ItemProperty -Path "HKCU:\Software\A.I.S. GmbH\windream\3.6\ServerShareSelector\$wdServerAlt" -Name ClientHostName -Value $wdServerNeu -Type String
|
||||
Set-ItemProperty -Path "HKCU:\Software\A.I.S. GmbH\windream\3.6\ServerShareSelector\$wdServerAlt" -Name DMSServer -Value $wdServerNeu -Type String
|
||||
Set-ItemProperty -Path "HKCU:\Software\A.I.S. GmbH\windream\3.6\ServerShareSelector\$wdServerAlt" -Name TCPServer -Value $wdServerNeu -Type String
|
||||
|
||||
Rename-Item -Path "HKCU:\Software\A.I.S. GmbH\windream\3.6\ServerShareSelector\$wdServerAlt" -NewName $wdServerNeu
|
||||
|
||||
Set-ItemProperty -Path "HKCU:\Software\A.I.S. GmbH\windream\3.6\ServerShareSelector" -Name CurrentAlias -Value $wdServerNeu -Type String
|
||||
Set-ItemProperty -Path "HKCU:\Software\A.I.S. GmbH\windream\3.6\ServerShareSelector" -Name VFSAlias -Value $wdServerNeu -Type String
|
||||
|
||||
Func-Show-MsgBox -Text "Bitte diesen Benutzer ab und wieder anmelden, damit die Änderungen wirksam werden!" -Title "$wdServerAlt -> $wdServerNeu" -Icon OKonly
|
||||
|
||||
}
|
||||
|
||||
ELSE
|
||||
{
|
||||
Func-Show-MsgBox -Text "Der zu ändernde Servereintrag $wdServerAlt, konnte nicht gefunden werden!" -Title "$wdServerAlt -> $wdServerNeu" -Icon OKonly
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
sfcontrol -t <Servername>/InvoiceMatchingServer
|
||||
sfcontrol -start <Servername>/InvoiceMatchingServer
|
||||
@@ -0,0 +1,52 @@
|
||||
# Restart-InsidersInvoiceMatchingServer
|
||||
# ----------------------------------------------------------------------------
|
||||
# This Script provides the insiders DB with new data
|
||||
#
|
||||
# Returns: -
|
||||
# ----------------------------------------------------------------------------
|
||||
# Copyright (c) 2023 by Digital Data GmbH
|
||||
#
|
||||
# Digital Data GmbH • Ludwig-Rinn-Strasse 16 • D-35452 Heuchelheim
|
||||
# Tel.: 0641/202360 • E-Mail: info-flow@digitaldata.works
|
||||
# ----------------------------------------------------------------------------
|
||||
# Creation Date / Author: 28.09.2023 / MK
|
||||
# Version Date / Editor: 28.09.2023 / MK
|
||||
# Version Number: 1.0.0.0
|
||||
|
||||
# ========================================================================================================================================
|
||||
# First check if system wide PowerShell SQL Cmdlet ist installed: "Install-Module -Name SqlServer"
|
||||
# Check if named Pipes on the SQL Server is enabled
|
||||
# Configure ConnString like:
|
||||
# ConnString="Data Source=SERVERNAME\INSTANCE;Initial Catalog=DD_ECM;Trusted_Connection=True;TrustServerCertificate=true;"
|
||||
# Or
|
||||
# ConnString="Data Source=SERVERNAME\INSTANCE;Initial Catalog=DD_ECM;User Id=SQLUSERNAME;Password=SQLPASSWORD;TrustServerCertificate=true;"
|
||||
# ========================================================================================================================================
|
||||
|
||||
#-----------------------------------------------------------------------------------------------------#
|
||||
############################################ set variables ############################################
|
||||
#-----------------------------------------------------------------------------------------------------#
|
||||
|
||||
[String]$ConnString = "Data Source=sdb01\DIGITALDATA;Initial Catalog=DD_ECM;Trusted_Connection=True;TrustServerCertificate=true;"
|
||||
[String]$smartFIXPath = "D:\ProgramFiles\smartFIX_50"
|
||||
[String]$smartFIXServer = "sdmsapp1"
|
||||
|
||||
#-----------------------------------------------------------------------------------------------------#
|
||||
############################################# main part ###############################################
|
||||
#-----------------------------------------------------------------------------------------------------#
|
||||
|
||||
Write-Host "Start SQL Procedure"
|
||||
Invoke-Sqlcmd -Query "EXEC [dbo].[PRCUST_SYNC_SMARTFIX_ORDER_ITEMS] 1" -ConnectionString $ConnString
|
||||
|
||||
Write-Host "Stop Matching Server"
|
||||
& "$smartFIXPath\System\bin\SFControl.exe" -t $smartFIXServer/InvoiceMatchingServer
|
||||
|
||||
Write-Host "Start Matching Server"
|
||||
& "$smartFIXPath\System\bin\SFControl.exe" -start $smartFIXServer/InvoiceMatchingServer
|
||||
|
||||
#-----------------------------------------------------------------------------------------------------#
|
||||
########################################### finishing part ############################################
|
||||
#-----------------------------------------------------------------------------------------------------#
|
||||
|
||||
Remove-Variable -Name ConnString -Force -ErrorAction SilentlyContinue
|
||||
Remove-Variable -Name smartFIXPath -Force -ErrorAction SilentlyContinue
|
||||
Remove-Variable -Name smartFIXServer -Force -ErrorAction SilentlyContinue
|
||||
Binary file not shown.
@@ -0,0 +1,2 @@
|
||||
sfcontrol -TerminateAfterStack sdmsapp1/InvoiceMatchingServer
|
||||
sfcontrol -start sdmsapp1/InvoiceMatchingServer
|
||||
@@ -0,0 +1,76 @@
|
||||
####################################################################################################
|
||||
# Digital Data Configuration File (Template Date: 30.07.2016) #
|
||||
# UTF-8 Coding required! #
|
||||
# incl. FailSafe functions that are active when information is missing. #
|
||||
####################################################################################################
|
||||
|
||||
#==================================================================================================#
|
||||
########################################## General Setup ###########################################
|
||||
#==================================================================================================#
|
||||
|
||||
####################################################################################################
|
||||
# Path in which the log files will be stored. #
|
||||
# Example: E:\LogFiles\<ScriptName> #
|
||||
# FailSafe Setting is: <ScriptPath> #
|
||||
####################################################################################################
|
||||
LogPath =
|
||||
|
||||
####################################################################################################
|
||||
# Numerical value how long (in days) log files will be kept. ValidateRange is 0 - 1000 #
|
||||
# Setting the Value to 0 disables this Function. #
|
||||
# FailSafe Setting is: 60 #
|
||||
####################################################################################################
|
||||
LogFileKeepTime = 3
|
||||
|
||||
####################################################################################################
|
||||
# Special characters which is used to separate file versions. #
|
||||
# Example: File_4711_1606~2.pdf #
|
||||
# FailSafe Setting is: ~ #
|
||||
####################################################################################################
|
||||
VersionSeperator = ~
|
||||
|
||||
####################################################################################################
|
||||
# Numerical value how long (in Minutes) a File has to be there, before processing it. #
|
||||
# FailSafe Setting is: 5 #
|
||||
####################################################################################################
|
||||
FileDelayAge = 1
|
||||
|
||||
#==================================================================================================#
|
||||
######################################## MailStore settings ########################################
|
||||
#==================================================================================================#
|
||||
|
||||
####################################################################################################
|
||||
# Define the Directory, where MailStore was installed to. #
|
||||
# Example: D:\ProgramFiles\MailStore #
|
||||
####################################################################################################
|
||||
MailStoreAppDir =
|
||||
|
||||
####################################################################################################
|
||||
# Set the ServerName to connect with (MailStore Server). #
|
||||
# Example: localhost #
|
||||
####################################################################################################
|
||||
MailStoreServer = localhost
|
||||
|
||||
####################################################################################################
|
||||
# Set the UserName for the MailStore Admin Account. #
|
||||
# Example: admin #
|
||||
####################################################################################################
|
||||
MailStoreAdminUserName = admin
|
||||
|
||||
####################################################################################################
|
||||
# Set the Password for the MailStore Admin Account. #
|
||||
# Example: admin #
|
||||
####################################################################################################
|
||||
MailStoreAdminUserPassword = 123456789dd!
|
||||
|
||||
####################################################################################################
|
||||
# Set the Fingerprint from the MailStore Server certificate. #
|
||||
# Example: 899a313f82b79b013d5e20f833926b110808f1bd #
|
||||
####################################################################################################
|
||||
MailStoreServerPublicKey = 899a313f82b79b013d5e20f833926b110808f1bd
|
||||
|
||||
####################################################################################################
|
||||
# Set your local AD Domain. #
|
||||
# Example: @my-domain.com #
|
||||
####################################################################################################
|
||||
LocalDomain = @didalog.local
|
||||
Binary file not shown.
@@ -0,0 +1,45 @@
|
||||
@ECHO OFF
|
||||
TITLE DIGITAL DATA - Run all files in directory with current permissions
|
||||
ECHO -
|
||||
ECHO Batch Script
|
||||
ECHO Run all files in directory with current permissions
|
||||
ECHO -
|
||||
ECHO Digital Data
|
||||
ECHO Ludwig-Rinn-Strasse 16
|
||||
ECHO 35452 Heuchelheim
|
||||
ECHO Tel.: 0641 / 202360
|
||||
ECHO E-Mail: info@didalog.de
|
||||
ECHO -
|
||||
ECHO Version 1.0.0.0
|
||||
ECHO Date: 13.08.2015
|
||||
ECHO -
|
||||
ECHO Program Startup %date% at %time:~0,8% oclock, on %computername%.
|
||||
|
||||
REM --------------------------------------------------------------
|
||||
REM ------------------------set variables-------------------------
|
||||
REM --------------------------------------------------------------
|
||||
|
||||
setlocal enableextensions
|
||||
|
||||
SET DIRECTORY="%cd%"
|
||||
SET FILEEXTENSION=*.ps1
|
||||
SET COUNT=0
|
||||
|
||||
REM --------------------------------------------------------------
|
||||
REM ---------------------Program 1 / Script 1---------------------
|
||||
REM --------------------------------------------------------------
|
||||
|
||||
FOR /F "tokens=*" %%f in ('dir /S /b %FILEEXTENSION%') do (ECHO %%f && set /a count+=1)
|
||||
ECHO -
|
||||
ECHO Found %count% File(s) with File Extension %FILEEXTENSION% in Directory:
|
||||
ECHO %DIRECTORY%.
|
||||
|
||||
ECHO -
|
||||
ECHO Running this/them now, with your permissions!
|
||||
FOR /F "tokens=*" %%f in ('dir /S /b %FILEEXTENSION%') do (PowerShell.exe -Command "& {Start-Process PowerShell.exe -WindowStyle hidden '-ExecutionPolicy Bypass -File "%%f"'}")
|
||||
|
||||
ECHO -
|
||||
ECHO This Window will close in:
|
||||
#timeout /T 10
|
||||
endlocal
|
||||
exit
|
||||
@@ -0,0 +1,30 @@
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
Version 1.0.1.1 - 18.08.2025
|
||||
NEW: -
|
||||
FIX: -
|
||||
CHG: - Script accepts only one config file now
|
||||
REM: -
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
Version 1.0.1.0 - 26.04.2017
|
||||
NEW: -
|
||||
FIX: -
|
||||
CHG: - Changed the way of getting the MailStoreAppDir, for PS4 compatibility.
|
||||
REM: -
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
Version 1.0.0.0 - 24.04.2017
|
||||
NEW: -
|
||||
FIX: -
|
||||
CHG: -
|
||||
REM: -
|
||||
|
||||
-------------------------------------legend------------------------------------
|
||||
NEW: = Added a new functionality
|
||||
FIX: = Fixed a Issue with existing functionality
|
||||
CHG: = Changed a existing functionality
|
||||
REM: = Removed a functionality
|
||||
-------------------------------------------------------------------------------
|
||||
Binary file not shown.
@@ -0,0 +1,31 @@
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
Version 1.0.1.1 - 18.08.2025
|
||||
NEW: -
|
||||
FIX: -
|
||||
CHG: - Script accepts only one config file now
|
||||
REM: -
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
Version 1.0.1.0 - 15.02.2017
|
||||
NEW: -
|
||||
FIX: -
|
||||
CHG: - Additional SourcePath check
|
||||
- Changes for new Read-ConfigFile Module
|
||||
REM: -
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
Version 1.0.0.0 - 07.02.2017
|
||||
NEW: -
|
||||
FIX: -
|
||||
CHG: -
|
||||
REM: -
|
||||
|
||||
-------------------------------------legend------------------------------------
|
||||
NEW: = Added a new functionality
|
||||
FIX: = Fixed a Issue with existing functionality
|
||||
CHG: = Changed a existing functionality
|
||||
REM: = Removed a functionality
|
||||
-------------------------------------------------------------------------------
|
||||
@@ -0,0 +1,109 @@
|
||||
####################################################################################################
|
||||
# Digital Data Configuration File (Template Date: 30.07.2016) #
|
||||
# UTF-8 Coding required! #
|
||||
# incl. FailSafe functions that are active when information is missing. #
|
||||
####################################################################################################
|
||||
|
||||
#==================================================================================================#
|
||||
########################################## General Setup ###########################################
|
||||
#==================================================================================================#
|
||||
|
||||
####################################################################################################
|
||||
# Path in which the log files will be stored. #
|
||||
# Example: E:\LogFiles\<ScriptName> #
|
||||
# FailSafe Setting is: <ScriptPath> #
|
||||
####################################################################################################
|
||||
LogPath =
|
||||
|
||||
####################################################################################################
|
||||
# Numerical value how long (in days) log files will be kept. ValidateRange is 0 - 1000 #
|
||||
# Setting the Value to 0 disables this Function. #
|
||||
# FailSafe Setting is: 60 #
|
||||
####################################################################################################
|
||||
LogFileKeepTime = 3
|
||||
|
||||
####################################################################################################
|
||||
# Special characters which is used to separate file versions. #
|
||||
# Example: File_4711_1606~2.pdf #
|
||||
# FailSafe Setting is: ~ #
|
||||
####################################################################################################
|
||||
VersionSeperator = ~
|
||||
|
||||
####################################################################################################
|
||||
# Numerical value how long (in Minutes) a File has to be there, before processing it. #
|
||||
# FailSafe Setting is: 5 #
|
||||
####################################################################################################
|
||||
FileDelayAge = 1
|
||||
|
||||
#==================================================================================================#
|
||||
################################## E-Mail and Directory settings ###################################
|
||||
#==================================================================================================#
|
||||
|
||||
####################################################################################################
|
||||
# Define the Directory, where unindexed EML are stored. #
|
||||
# Example: W:\MailArchiv #
|
||||
####################################################################################################
|
||||
SourcePath =
|
||||
|
||||
####################################################################################################
|
||||
# Choose if the Search in the Sourcepath you configured before should search even in Subfolders. #
|
||||
# Example: True #
|
||||
# FailSafe Setting is: False #
|
||||
####################################################################################################
|
||||
SourcePathRecurse = False
|
||||
|
||||
####################################################################################################
|
||||
# Set your own SMTP Mail Domain(s) for outgoining Mails (The ".*" is very important!). #
|
||||
# Example: .*@my-domain.com;'.*@my-second-domain.com' #
|
||||
####################################################################################################
|
||||
SMTPDomains = .*@.*
|
||||
|
||||
####################################################################################################
|
||||
# Set a Regular Expression, to get the E-Mail TO Adresses, if EML Object Attribut is empty. #
|
||||
# Example: \sTo:\s{0,}((?:[A-Za-z0-9\|\@\!\"\§\$\&\/\(\)\=\?\+\*\~\'\,\;\.\-_\s]{0,} #
|
||||
# (?:\<[A-Za-z0-9-_\.\S]{1,}\@[A-Za-z0-9-_\.\S]{1,}\>\,\s|\<[A-Za-z0-9-_\.\S]{1,} #
|
||||
# \@[A-Za-z0-9-_\.\S]{1,}\>\s|[A-Za-z0-9-_\.\S]{1,}\@[A-Za-z0-9-_\.\S]{1,}\,\s| #
|
||||
# [A-Za-z0-9-_\.\S]{1,}\@[A-Za-z0-9-_\.\S]{1,}\s)){0,}){1} #
|
||||
####################################################################################################
|
||||
EMailAddressToRegEx = \sTo:\s{0,}((?:[A-Za-z0-9\|\@\!\"\§\$\&\/\\\(\)\=\?\+\*\~\'\,\;\.\-_\s]{0,}(?:\<[A-Za-z0-9-_\.\S]{1,}\@[A-Za-z0-9-_\.\S]{1,}\>\,\s|\<[A-Za-z0-9-_\.\S]{1,}\@[A-Za-z0-9-_\.\S]{1,}\>\s|[A-Za-z0-9-_\.\S]{1,}\@[A-Za-z0-9-_\.\S]{1,}\,\s|[A-Za-z0-9-_\.\S]{1,}\@[A-Za-z0-9-_\.\S]{1,}\s)){0,}){1}
|
||||
|
||||
####################################################################################################
|
||||
# Set a Regular Expression, to get the E-Mail FROM Adresses, if EML Object Attribut is empty. #
|
||||
# Example: From:[A-Za-z0-9\|\@\!\"\§\$\&\/\(\)\=\?\+\*\~\'\,\;\.\-_\s]{0,} #
|
||||
# (\<[A-Za-z0-9-_\.]{1,}\@[A-Za-z0-9-_\.]{1,}\>){1} #
|
||||
####################################################################################################
|
||||
EMailAddressFromRegEx = From:[A-Za-z0-9\|\@\!\"\§\$\&\/\\\(\)\=\?\+\*\~\'\,\;\.\-_\s]{0,}(\<[A-Za-z0-9-_\.]{1,}\@[A-Za-z0-9-_\.]{1,}\>){1}
|
||||
|
||||
#==================================================================================================#
|
||||
######################################## windream settings #########################################
|
||||
#==================================================================================================#
|
||||
|
||||
####################################################################################################
|
||||
# Set the windream Document Objecttyp. #
|
||||
# Example: myCompany - BusinessProcess #
|
||||
####################################################################################################
|
||||
WDObjecttyp =
|
||||
|
||||
####################################################################################################
|
||||
# Set the windream Index Field, for the E-Mail To Adresses (Type: String). #
|
||||
# Example: String 01 #
|
||||
####################################################################################################
|
||||
WDIndexEMailTo =
|
||||
|
||||
####################################################################################################
|
||||
# Set the windream Index Field, for the E-Mail From Adresses (Type: String). #
|
||||
# Example: String 34 #
|
||||
####################################################################################################
|
||||
WDIndexEMailFrom =
|
||||
|
||||
####################################################################################################
|
||||
# Set the windream Index Field, for the E-Mail Date SentOn (Type: Date). #
|
||||
# Example: Date 08 #
|
||||
####################################################################################################
|
||||
WDIndexEMailDate =
|
||||
|
||||
####################################################################################################
|
||||
# Set the windream Index Field, for the E-Mail Subject (Type: String). #
|
||||
# Example: String 06 #
|
||||
####################################################################################################
|
||||
WDIndexEMailSubject =
|
||||
@@ -0,0 +1,2 @@
|
||||
ECHO "TEST"
|
||||
pause
|
||||
@@ -0,0 +1,2 @@
|
||||
Write-Host "Test"
|
||||
pause
|
||||
@@ -0,0 +1 @@
|
||||
msgbox "TEST"
|
||||
225
current/DD-Core/Start-ExeOrScriptFile/Start-ExeOrScriptFile.cmd
Normal file
225
current/DD-Core/Start-ExeOrScriptFile/Start-ExeOrScriptFile.cmd
Normal file
@@ -0,0 +1,225 @@
|
||||
@ECHO OFF
|
||||
TITLE DIGITAL DATA - %~n0
|
||||
ECHO -
|
||||
ECHO Windows Command Line Script
|
||||
ECHO CMD Version %CMDEXTVERSION% active!
|
||||
ECHO -
|
||||
ECHO Digital Data
|
||||
ECHO Ludwig-Rinn-Strasse 16
|
||||
ECHO 35452 Heuchelheim
|
||||
ECHO Tel.: 0641 / 202360
|
||||
ECHO E-Mail: info@didalog.de
|
||||
ECHO -
|
||||
ECHO Version Number: 1.0.0.0
|
||||
ECHO Version Date: 03.06.2018
|
||||
|
||||
pushd "%~dp0"
|
||||
setlocal
|
||||
|
||||
REM --------------------------------------------------------------
|
||||
REM ----------------------- set variables ------------------------
|
||||
REM --------------------------------------------------------------
|
||||
|
||||
SET ScriptName=%~n0
|
||||
REM Automatic defined Variable, do not change!
|
||||
REM Write WITHOUT double Quotes("")!
|
||||
|
||||
SET ScriptPath=%~dp0
|
||||
REM Automatic defined Variable, do not change!
|
||||
REM Write WITHOUT double Quotes("")!
|
||||
|
||||
SET SearchPath=%cd%\
|
||||
REM Automatic defined Variable, maybe change, if you want to search in designated folder - dont forget the "\" in the end!
|
||||
REM Write WITHOUT double Quotes("")!
|
||||
|
||||
SET SearchFileFilter="*-Example.cmd,*-Example.vbs,*-Example.ps1,*-Example.exe"
|
||||
REM Set File extension *.exe, *.ps1, *.vbs or *.cmd. Or set whole Filename like test.ps1. Wildcard is also possible: test*.ps1. Also a comma seperated list is possible like *.ps1, *.vbs.
|
||||
REM Write WITHOUT double Quotes(""), for a single value! Write WITH double Quotes(""), for comma seperated values.
|
||||
|
||||
SET Counter=0
|
||||
REM Predefined Variable, do not change!
|
||||
REM Write WITHOUT double Quotes("")!
|
||||
|
||||
SET PowerShellCMD=powershell.exe -ExecutionPolicy Bypass -WindowStyle Hidden -File
|
||||
REM Predefined Variable, do not change!
|
||||
REM Write WITHOUT double Quotes("")!
|
||||
|
||||
SET PowerShellRuntimeScript="%ScriptPath%\%ScriptName%_PowerShellRuntimeScript.ps1"
|
||||
REM Automatic defined Variable, do not change!
|
||||
REM Write WITH double Quotes("")!
|
||||
|
||||
SET PowerShellWaitForExit=True
|
||||
REM Set to "True" if found EXE or Scripts Files should be processed one after another. Otherwise set to "False".
|
||||
REM Write WITHOUT double Quotes("")!
|
||||
|
||||
SET RunAsUserName=
|
||||
REM Set an Username, if you want the EXE or Scripts Files run in an other context, like: "Administrator". But maybe: "domain\Administrator".
|
||||
REM Write WITHOUT double Quotes("")!
|
||||
|
||||
SET RunAsUserPassword=
|
||||
REM Set Password if you defined the RunAsUserName Variable.
|
||||
REM Write WITHOUT double Quotes("")!
|
||||
|
||||
REM --------------------------------------------------------------
|
||||
GOTO mainpart
|
||||
REM --------------------------------------------------------------
|
||||
REM ------------------------- subroutines ------------------------
|
||||
REM --------------------------------------------------------------
|
||||
:CreatePowerShellRuntimeScript
|
||||
REM GENERIC STARTING PART
|
||||
SET Item=%1
|
||||
ECHO -
|
||||
ECHO Creating PowerShellRuntimeScript for: %Item%
|
||||
ECHO #Automatic generated PowerShellRuntimeScript>%PowerShellRuntimeScript%
|
||||
ECHO Clear-Host>%PowerShellRuntimeScript%
|
||||
ECHO $UserName=^"%RunASUserName%^">>%PowerShellRuntimeScript%
|
||||
ECHO $UserPassword=^"%RunAsUserPassword%^">>%PowerShellRuntimeScript%
|
||||
ECHO $Item=(Get-Item %Item%)>>%PowerShellRuntimeScript%
|
||||
ECHO $Credentials = New-Object System.Management.Automation.PSCredential -ArgumentList @($UserName,(ConvertTo-SecureString -String $UserPassword -AsPlainText -Force))>>%PowerShellRuntimeScript%
|
||||
ECHO.>>%PowerShellRuntimeScript%
|
||||
REM BLOCK FOR CMD FILES
|
||||
IF NOT x%Item:.cmd=%==x%Item% (
|
||||
ECHO #Runtime File is exclusive build for %SearchFileFilter%>>%PowerShellRuntimeScript%
|
||||
ECHO $Process = New-Object System.Diagnostics.Process>>%PowerShellRuntimeScript%
|
||||
ECHO $Process.StartInfo.Filename = ^"cmd.exe^">>%PowerShellRuntimeScript%
|
||||
IF [%RunASUserName%] EQU [] (
|
||||
ECHO #Start Process in current context.>>%PowerShellRuntimeScript%
|
||||
ECHO.>>%PowerShellRuntimeScript%
|
||||
ECHO $Process.StartInfo.UseShellExecute = $True>>%PowerShellRuntimeScript%
|
||||
) ELSE (
|
||||
ECHO #Start Process in RunAs context.>>%PowerShellRuntimeScript%
|
||||
ECHO $Process.StartInfo.UserName = $Credentials.UserName>>%PowerShellRuntimeScript%
|
||||
ECHO $Process.StartInfo.Password = $Credentials.Password>>%PowerShellRuntimeScript%
|
||||
ECHO $Process.StartInfo.UseShellExecute = $False>>%PowerShellRuntimeScript%
|
||||
ECHO $Process.StartInfo.LoadUserProfile = $True>>%PowerShellRuntimeScript%
|
||||
)
|
||||
ECHO $Process.StartInfo.Arguments = "/c ""$($Item.FullName)""">>%PowerShellRuntimeScript%
|
||||
ECHO #$Process.StartInfo.RedirectStandardOutput = $False>>%PowerShellRuntimeScript%
|
||||
ECHO #$Process.StartInfo.RedirectStandardError = $True>>%PowerShellRuntimeScript%
|
||||
ECHO $Process.Start^(^)>>%PowerShellRuntimeScript%
|
||||
)
|
||||
REM BLOCK FOR PS1 FILES
|
||||
IF NOT x%Item:.ps1=%==x%Item% (
|
||||
ECHO #Runtime File is exclusive build for %SearchFileFilter%>>%PowerShellRuntimeScript%
|
||||
ECHO $Process = New-Object System.Diagnostics.Process>>%PowerShellRuntimeScript%
|
||||
ECHO $Process.StartInfo.Filename = ^"powershell.exe^">>%PowerShellRuntimeScript%
|
||||
IF [%RunASUserName%] EQU [] (
|
||||
ECHO #Start Process in current context.>>%PowerShellRuntimeScript%
|
||||
ECHO.>>%PowerShellRuntimeScript%
|
||||
ECHO $Process.StartInfo.UseShellExecute = $True>>%PowerShellRuntimeScript%
|
||||
) ELSE (
|
||||
ECHO #Start Process in RunAs context.>>%PowerShellRuntimeScript%
|
||||
ECHO $Process.StartInfo.UserName = $Credentials.UserName>>%PowerShellRuntimeScript%
|
||||
ECHO $Process.StartInfo.Password = $Credentials.Password>>%PowerShellRuntimeScript%
|
||||
ECHO $Process.StartInfo.UseShellExecute = $False>>%PowerShellRuntimeScript%
|
||||
ECHO $Process.StartInfo.LoadUserProfile = $True>>%PowerShellRuntimeScript%
|
||||
)
|
||||
ECHO $Process.StartInfo.Arguments = "-ExecutionPolicy Bypass -file ""$($Item.FullName)""">>%PowerShellRuntimeScript%
|
||||
ECHO #$Process.StartInfo.RedirectStandardOutput = $False>>%PowerShellRuntimeScript%
|
||||
ECHO #$Process.StartInfo.RedirectStandardError = $True>>%PowerShellRuntimeScript%
|
||||
ECHO $Process.Start^(^)>>%PowerShellRuntimeScript%
|
||||
)
|
||||
REM BLOCK FOR VBS FILES
|
||||
IF NOT x%Item:.vbs=%==x%Item% (
|
||||
ECHO #Runtime File is exclusive build for %SearchFileFilter%>>%PowerShellRuntimeScript%
|
||||
ECHO $Process = New-Object System.Diagnostics.Process>>%PowerShellRuntimeScript%
|
||||
ECHO $Process.StartInfo.Filename = ^"wscript.exe^">>%PowerShellRuntimeScript%
|
||||
IF [%RunASUserName%] EQU [] (
|
||||
ECHO #Start Process in current context.>>%PowerShellRuntimeScript%
|
||||
ECHO.>>%PowerShellRuntimeScript%
|
||||
ECHO $Process.StartInfo.UseShellExecute = $True>>%PowerShellRuntimeScript%
|
||||
) ELSE (
|
||||
ECHO #Start Process in RunAs context.>>%PowerShellRuntimeScript%
|
||||
ECHO $Process.StartInfo.UserName = $Credentials.UserName>>%PowerShellRuntimeScript%
|
||||
ECHO $Process.StartInfo.Password = $Credentials.Password>>%PowerShellRuntimeScript%
|
||||
ECHO $Process.StartInfo.UseShellExecute = $False>>%PowerShellRuntimeScript%
|
||||
ECHO $Process.StartInfo.LoadUserProfile = $True>>%PowerShellRuntimeScript%
|
||||
)
|
||||
ECHO $Process.StartInfo.Arguments = ^"^"^"^"^"^"^"^"^"^"^"^$^(^$Item.FullName^)^"^"^"^"^"^"^"^"^"^"^">>%PowerShellRuntimeScript%
|
||||
ECHO #$Process.StartInfo.RedirectStandardOutput = $False>>%PowerShellRuntimeScript%
|
||||
ECHO #$Process.StartInfo.RedirectStandardError = $True>>%PowerShellRuntimeScript%
|
||||
ECHO $Process.Start^(^)>>%PowerShellRuntimeScript%
|
||||
)
|
||||
REM BLOCK FOR EXE FILES
|
||||
IF NOT x%Item:.exe=%==x%Item% (
|
||||
ECHO #Runtime File is exclusive build for %SearchFileFilter%>>%PowerShellRuntimeScript%
|
||||
ECHO $Process = New-Object System.Diagnostics.Process>>%PowerShellRuntimeScript%
|
||||
ECHO $Process.StartInfo.Filename = ^"^$^(^$Item.FullName^)^">>%PowerShellRuntimeScript%
|
||||
IF [%RunASUserName%] EQU [] (
|
||||
ECHO #Start Process in current context.>>%PowerShellRuntimeScript%
|
||||
ECHO.>>%PowerShellRuntimeScript%
|
||||
ECHO $Process.StartInfo.UseShellExecute = $True>>%PowerShellRuntimeScript%
|
||||
) ELSE (
|
||||
ECHO #Start Process in RunAs context.>>%PowerShellRuntimeScript%
|
||||
ECHO $Process.StartInfo.UserName = $Credentials.UserName>>%PowerShellRuntimeScript%
|
||||
ECHO $Process.StartInfo.Password = $Credentials.Password>>%PowerShellRuntimeScript%
|
||||
ECHO $Process.StartInfo.UseShellExecute = $False>>%PowerShellRuntimeScript%
|
||||
ECHO $Process.StartInfo.LoadUserProfile = $True>>%PowerShellRuntimeScript%
|
||||
)
|
||||
ECHO #$Process.StartInfo.RedirectStandardOutput = $False>>%PowerShellRuntimeScript%
|
||||
ECHO #$Process.StartInfo.RedirectStandardError = $True>>%PowerShellRuntimeScript%
|
||||
ECHO $Process.Start^(^)>>%PowerShellRuntimeScript%
|
||||
)
|
||||
REM GENERIC FINISHING PART
|
||||
IF /i %PowerShellWaitForExit% EQU True (
|
||||
ECHO $Process.WaitForExit^(^)>>%PowerShellRuntimeScript%
|
||||
) ELSE (
|
||||
ECHO #$Process.WaitForExit^(^)>>%PowerShellRuntimeScript%
|
||||
)
|
||||
ECHO #[string] $Out = $Process.StandardOutput.ReadToEnd();>>%PowerShellRuntimeScript%
|
||||
ECHO.>>%PowerShellRuntimeScript%
|
||||
ECHO Remove-Variable -Name UserName -Force -ErrorAction SilentlyContinue>>%PowerShellRuntimeScript%
|
||||
ECHO Remove-Variable -Name UserPassword -Force -ErrorAction SilentlyContinue>>%PowerShellRuntimeScript%
|
||||
ECHO Remove-Variable -Name Item -Force -ErrorAction SilentlyContinue>>%PowerShellRuntimeScript%
|
||||
ECHO Remove-Variable -Name Credentials -Force -ErrorAction SilentlyContinue>>%PowerShellRuntimeScript%
|
||||
ECHO Remove-Variable -Name Process -Force -ErrorAction SilentlyContinue>>%PowerShellRuntimeScript%
|
||||
ECHO.
|
||||
ECHO Starting RuntimeFile: %PowerShellRuntimeScript%
|
||||
%PowerShellCMD% %PowerShellRuntimeScript%
|
||||
DEL %PowerShellRuntimeScript%
|
||||
GOTO :eof
|
||||
REM --------------------------------------------------------------
|
||||
|
||||
REM --------------------------------------------------------------
|
||||
REM ------------------------- main part --------------------------
|
||||
REM --------------------------------------------------------------
|
||||
:mainpart
|
||||
cls
|
||||
ECHO -
|
||||
ECHO Program Startup: %ScriptName% on %computername%,
|
||||
ECHO from Account: %userdomain%\%username%.
|
||||
ECHO On %date% at %time:~0,8% o'clock.
|
||||
|
||||
REM Count Files and show Counter
|
||||
FOR /F "tokens=*" %%f in ('dir /S /b "%SearchPath%\%SearchFileFilter%"') do (set /a Counter+=1)
|
||||
ECHO -
|
||||
ECHO Found %Counter% File(s) with File extension %SearchFileFilter% in Directory:
|
||||
ECHO %SearchPath%
|
||||
|
||||
REM If Counter greater then 0 call subroutine for every found file
|
||||
IF %Counter% GTR 0 (
|
||||
FOR /F "tokens=*" %%f in ('dir /S /b "%SearchPath%\%SearchFileFilter%"') DO (Call :CreatePowerShellRuntimeScript "%%f")
|
||||
GOTO PlanedExit
|
||||
) ELSE (
|
||||
ECHO -
|
||||
ECHO Found no Files. Exiting...
|
||||
GOTO UnplanedExit
|
||||
)
|
||||
REM --------------------------------------------------------------
|
||||
|
||||
REM --------------------------------------------------------------
|
||||
REM ----------------------- finishing part -----------------------
|
||||
REM --------------------------------------------------------------
|
||||
:UnplanedExit
|
||||
endlocal
|
||||
ECHO -
|
||||
ECHO This Window will close in:
|
||||
timeout /T 10
|
||||
rem pause
|
||||
exit
|
||||
|
||||
:PlanedExit
|
||||
endlocal
|
||||
rem pause
|
||||
exit
|
||||
REM --------------------------------------------------------------
|
||||
@@ -0,0 +1,23 @@
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
Version 1.0.0.0 - 22.06.2018 (VBS Version)
|
||||
NEW: -
|
||||
FIX: -
|
||||
CHG: -
|
||||
REM: -
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
Version 1.0.0.0 - 03.06.2018 (CMD Version)
|
||||
NEW: -
|
||||
FIX: -
|
||||
CHG: -
|
||||
REM: -
|
||||
|
||||
-------------------------------------legend------------------------------------
|
||||
NEW: = Added a new functionality
|
||||
FIX: = Fixed a Issue with existing functionality
|
||||
CHG: = Changed a existing functionality
|
||||
REM: = Removed a functionality
|
||||
-------------------------------------------------------------------------------
|
||||
@@ -0,0 +1,10 @@
|
||||
[Folder]
|
||||
SearchPath = P:\Skriptentwickung\released-and-published\Start-ExeOrScriptFile(s)\Test_Files
|
||||
|
||||
[Command]
|
||||
#Filter = *.ps1
|
||||
Filter = Test.ps1;Test1.ps1;test2.vbs
|
||||
#Filter = *.vbs
|
||||
|
||||
[Functionen]
|
||||
Waiting = 1
|
||||
@@ -0,0 +1,91 @@
|
||||
' VB Script Document
|
||||
option explicit
|
||||
'
|
||||
' Digital Data
|
||||
' Ludwig-Rinn-Strasse 16
|
||||
' 35452 Heuchelheim
|
||||
' Tel.: 0641 / 202360
|
||||
' E-Mail: info@didalog.de
|
||||
'
|
||||
' Version Number: 1.0.0.0
|
||||
' Version Date: 04.07.2018
|
||||
|
||||
Const cOrdnertrennzeichen = "\"
|
||||
Const cSeachString = "*"
|
||||
Const cPowershell = "powershell.exe -ExecutionPolicy Bypass -file "
|
||||
|
||||
'-------------------- Diese Konstanten müssen angepasst werden ---------------------------------------------------'
|
||||
Const cSettingsPath = "P:\Skriptentwickung\released-and-published\Start-ExeOrScriptFile\Start-ExeOrScriptFile_Settings.ini"
|
||||
'-----------------------------------------------------------------------------------------------------------------'
|
||||
|
||||
Dim Shell, FSO, IniFile, FSOFile, FSOFolder_Search
|
||||
Dim vZeile, vArr_Zeile, i
|
||||
Dim vWaiting, vFilter, vArr_Filter, vPos, vExtension
|
||||
|
||||
On Error resume next
|
||||
If Err.Number = 0 Then
|
||||
Set FSO = CreateObject("Scripting.FileSystemObject")
|
||||
Set Shell = CreateObject("WScript.Shell")
|
||||
|
||||
'---------------- INI-Datei auslesen -------------------------------------------------------------------------'
|
||||
Set IniFile = FSO.OpenTextFile(cSettingsPath, 1)
|
||||
Do
|
||||
vZeile = IniFile.ReadLine()
|
||||
If Len(vZeile) > 0 Then
|
||||
vArr_Zeile = Split(vZeile, "=")
|
||||
If Left(Trim(vArr_Zeile(0)),1) <> "[" Then
|
||||
Select Case UCase(Trim(vArr_Zeile(0)))
|
||||
Case UCase("SearchPath")
|
||||
Set FSOFolder_Search = FSO.GetFolder(Trim(vArr_Zeile(1)))
|
||||
Case UCase("Filter")
|
||||
vFilter = CStr(Trim(vArr_Zeile(1)))
|
||||
Case UCase("Waiting")
|
||||
vWaiting = CBool(CInt(Trim(vArr_Zeile(1))))
|
||||
End Select
|
||||
End If
|
||||
End If
|
||||
Loop Until IniFile.AtEndOfStream = True
|
||||
IniFile.Close
|
||||
'-------------------------------------------------------------------------------------------------------------'
|
||||
|
||||
'---------------- Programme anhand Filter ausführen ----------------------------------------------------------'
|
||||
vPos = InStr(1,vFilter,cSeachString,0)
|
||||
If vPos > 0 Then
|
||||
vExtension = UCase(Mid(vFilter,vPos + 2))
|
||||
For Each FSOFile In FSOFolder_Search.Files
|
||||
If UCase(FSO.GetExtensionName(FSOFile)) = vExtension Then '-- alle Dateien nach dem Filter überprüfen'
|
||||
If UCase(FSO.GetExtensionName(FSOFile)) = "VBS" Then
|
||||
'Shell.Run """" & FSOFolder_Search & cOrdnertrennzeichen & FSO.GetFileName(FSOFile) & """",0,vWaiting
|
||||
Msgbox """" & FSOFolder_Search & cOrdnertrennzeichen & FSO.GetFileName(FSOFile) & """" & ", 0, " & CStr(vWaiting)
|
||||
ElseIf UCase(FSO.GetExtensionName(FSOFile)) = "PS1" Then
|
||||
'Shell.Run cPowershell & """" & FSOFolder_Search & cOrdnertrennzeichen & FSO.GetFileName(FSOFile) & """",0,vWaiting
|
||||
Msgbox cPowershell & """" & FSOFolder_Search & cOrdnertrennzeichen & FSO.GetFileName(FSOFile) & """" & ", 0, " & CStr(vWaiting)
|
||||
Else
|
||||
'Shell.Run """" & FSOFolder_Search & cOrdnertrennzeichen & FSO.GetFileName(FSOFile) & """",0,vWaiting
|
||||
Msgbox """" & FSOFolder_Search & cOrdnertrennzeichen & FSO.GetFileName(FSOFile) & """" & ", 0, " & CStr(vWaiting)
|
||||
End If
|
||||
End If
|
||||
Next
|
||||
Else
|
||||
vArr_Filter = Split(vFilter, ";")
|
||||
For i = 0 To Ubound(vArr_Filter)
|
||||
If FSO.FileExists(FSOFolder_Search & cOrdnertrennzeichen & FSO.GetFileName(vArr_Filter(i))) = True Then
|
||||
If UCase(FSO.GetExtensionName(FSOFolder_Search & cOrdnertrennzeichen & FSO.GetFileName(vArr_Filter(i)))) = "PS1" Then
|
||||
'Shell.Run cPowershell & """" & FSOFolder_Search & cOrdnertrennzeichen & FSO.GetFileName(vArr_Filter(i)) & """",0,vWaiting
|
||||
Msgbox cPowershell & """" & FSOFolder_Search & cOrdnertrennzeichen & FSO.GetFileName(vArr_Filter(i)) & """" & ", 0, " & CStr(vWaiting)
|
||||
Else
|
||||
'Shell.Run """" & FSOFolder_Search & cOrdnertrennzeichen & FSO.GetFileName(vArr_Filter(i)) & """",0,vWaiting
|
||||
Msgbox """" & FSOFolder_Search & cOrdnertrennzeichen & FSO.GetFileName(vArr_Filter(i)) & """" & ", 0, " & CStr(vWaiting)
|
||||
End If
|
||||
End If
|
||||
Next
|
||||
End If
|
||||
'-------------------------------------------------------------------------------------------------------------'
|
||||
|
||||
Set FSOFolder_SearchPath = Nothing
|
||||
Set IniFile = Nothing
|
||||
Set FSO = Nothing
|
||||
Set Shell = Nothing
|
||||
Else
|
||||
MsgBox(Err.Description)
|
||||
End If
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user