MS Funktionsprüfungen, benennung Parameter, neue GDPictureVersion

This commit is contained in:
Developer01 2025-05-19 15:07:42 +02:00
parent e8f3b68041
commit c2f02bf262
64 changed files with 225 additions and 392589 deletions

View File

@ -569,12 +569,12 @@ Public Class ClassDOC_SEARCH
Return "R"
End If
Dim sql = String.Format("SELECT dwAccessRight FROM VWPMO_WD_OBJECT_RIGHTS WHERE dwObjectID = {0} and dwUserOrGroupID = {1}", DOC_ID, USERID_FK_INT_ECM)
Dim result = MYDB_ECM.GetScalarValue(sql)
If IsNothing(result) Or IsDBNull(result) Then
Dim odwAccessRight = MYDB_ECM.GetScalarValue(sql)
If IsNothing(odwAccessRight) Or IsDBNull(odwAccessRight) Then
Return Nothing
End If
LOGGER.Debug($"dwAccesRight for DocID [{DOC_ID}] is [{result}]")
Select Case result
LOGGER.Debug($"dwAccesRight for DocID [{DOC_ID}] is [{odwAccessRight}]")
Select Case odwAccessRight
Case 1
If USER_IS_ADMIN = False Then
Return "R"
@ -592,8 +592,16 @@ Public Class ClassDOC_SEARCH
Case 263
Return "RWA"
Case WM_RWA
LOGGER.Debug($"odwAccessRight is equal WM_RWA [{WM_RWA}]")
Return "RWA"
Case WM_RWA1
LOGGER.Debug($"odwAccessRight is equal WM_RWA1 [{WM_RWA1}]")
Return "RWA"
Case WM_RWA2
LOGGER.Debug($"odwAccessRight is equal WM_RWA2 [{WM_RWA2}]")
Return "RWA"
Case Else
Return "R"
End Select

View File

@ -147,7 +147,7 @@ Public Class ClassImport_Windream
If oDYNAMIC_FOLDER <> String.Empty Then
If CREATE_FOLDER_INDEX(oDYNAMIC_FOLDER, DocTypeID) = True And CURRENT_VARIABLE_FOLDER <> "" Then
myLogger.Debug("After CREATE_FOLDER_INDEX - oWMTARGET_FOLDER: " & oWMTARGET_FOLDER)
'myLogger.Debug("After CREATE_FOLDER_INDEX - oWMTARGET_FOLDER: " & oWMTARGET_FOLDER)
myLogger.Debug("After CREATE_FOLDER_INDEX - CURRENT_VARIABLE_FOLDER: " & CURRENT_VARIABLE_FOLDER)
If oWMTARGET_FOLDER <> CURRENT_VARIABLE_FOLDER Then
@ -159,12 +159,11 @@ Public Class ClassImport_Windream
oWMTARGET_FOLDER = CURRENT_VARIABLE_FOLDER
End If
'End If
Else
MsgBox("Unexpected Error in Creating Variable Folder - Check logfile!", MsgBoxStyle.Critical)
Return False
End If
Else
MsgBox("Unexpected Error in Creating Variable Folder - Check logfile!", MsgBoxStyle.Critical)
Return False
End If
End If
@ -183,9 +182,8 @@ Public Class ClassImport_Windream
Try
oWMTARGET_FOLDER = WMMOD.GetNormalizedPath(oWMTARGET_FOLDER, 0)
If WMMOD.TestFolderExists(oWMTARGET_FOLDER) = False Then
oWMTARGET_FOLDER = oWMTARGET_FOLDER.Replace("W:", "\\windream\objects")
oWMTARGET_FOLDER = WMMOD.GetNormalizedPath(oWMTARGET_FOLDER, 0)
myLogger.Info(String.Format("Targetpath ({0}) is not existing or result of WD_PATH_EXISTS was false.", oWMTARGET_FOLDER.Substring(2)))
If WMMOD.NewFolder(oWMTARGET_FOLDER) = False Then

View File

@ -33,7 +33,7 @@ Imports System.Runtime.InteropServices
' übernehmen, indem Sie "*" eingeben:
' <Assembly: AssemblyVersion("1.0.*")>
<Assembly: AssemblyVersion("3.3.0.2")>
<Assembly: AssemblyVersion("3.4.0.0")>
<Assembly: AssemblyFileVersion("1.0.0.0")>
<Assembly: NeutralResourcesLanguageAttribute("")>

View File

@ -1,11 +1,12 @@
DevExpress.XtraLayout.LayoutControl, DevExpress.XtraLayout.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraEditors.ButtonEdit, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraBars.Ribbon.RibbonControl, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraEditors.ComboBoxEdit, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraGrid.GridControl, DevExpress.XtraGrid.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraBars.BarManager, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraEditors.Repository.RepositoryItemProgressBar, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraMap.MapControl, DevExpress.XtraMap.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraEditors.TextEdit, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraTreeList.TreeList, DevExpress.XtraTreeList.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraBars.Ribbon.RibbonControl, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraEditors.ButtonEdit, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraEditors.ComboBoxEdit, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraBars.Docking2010.DocumentManager, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraEditors.CheckEdit, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraMap.MapControl, DevExpress.XtraMap.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraGrid.GridControl, DevExpress.XtraGrid.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraTreeList.TreeList, DevExpress.XtraTreeList.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraLayout.LayoutControl, DevExpress.XtraLayout.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraEditors.TextEdit, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a

View File

@ -208,70 +208,6 @@
<Reference Include="ERPConnect35">
<HintPath>P:\Projekte DIGITAL DATA\DIGITAL DATA - Entwicklung\DLL_Bibliotheken\ERPConnect35.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.barcode.1d.writer, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.barcode.1d.writer.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.barcode.2d.writer, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.barcode.2d.writer.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.CAD, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.CAD.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.CAD.DWG, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.CAD.DWG.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.Common, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.Common.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.Document, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.Document.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.Email, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.Email.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.HTML, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.HTML.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.Imaging, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.Imaging.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.Imaging.Formats, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.Imaging.Formats.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.Imaging.Formats.Conversion, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.Imaging.Formats.Conversion.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.Imaging.Rendering, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.Imaging.Rendering.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.MSOfficeBinary, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.MSOfficeBinary.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.OpenDocument, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.OpenDocument.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.OpenXML, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.OpenXML.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.OpenXML.Templating, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.OpenXML.Templating.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.PDF, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.PDF.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.RTF, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.RTF.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.SVG, Version=14.3.3.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.SVG.dll</HintPath>
</Reference>
<Reference Include="GdPicture.NET.14.wia.gateway, Version=1.0.0.0, Culture=neutral, PublicKeyToken=6973b5c22dcf45f7, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.3.3\lib\net462\GdPicture.NET.14.wia.gateway.dll</HintPath>
<EmbedInteropTypes>True</EmbedInteropTypes>
</Reference>
<Reference Include="Independentsoft.Msg">
<HintPath>..\..\3rdparty\lib\MSG.NET\Independentsoft.Msg.dll</HintPath>
</Reference>

View File

@ -44,7 +44,12 @@ Public Class frmDocSearchResult
_Helper = New ClassHelper
Text = CURRENT_DOCSEARCH_CAPTION
DocumentViewer1.Init(LOGCONFIG, MYGDPICTURE_LICENSE_KEY)
DocumentViewer1.Init(LOGCONFIG, MYGDPICTURE_LICENSE_KEY, New DigitalData.Controls.DocumentViewer.DocumentViewer.ToolbarSettings() With {
.ShowPrintButton = True,
.ShowRotateButton = True,
.ShowFlipButton = True,
.ShowSettingButton = True
})
End Sub
Private Sub frmDocSearchResult_FormClosing(sender As Object, e As FormClosingEventArgs) Handles Me.FormClosing

View File

@ -2,9 +2,11 @@
Public Class frmFileRename
Private ReadOnly oRenameType As String
Private OldDisplayName As String
Private DisplayName As String
Private FullFilename As String
Private DocID As Int64
Public Sub New(DocID As Integer, oldName As String, pRenameType As String)
Public Sub New(pDocID As Integer, oldName As String, pRenameType As String, pFullFilename As String)
' Dieser Aufruf ist für den Designer erforderlich.
InitializeComponent()
@ -14,6 +16,8 @@ Public Class frmFileRename
lblOldFilename.Text = oldName
txtNewName.Text = oldName
oRenameType = pRenameType
FullFilename = pFullFilename
DocID = pDocID
End Sub
Private Sub SimpleButton1_Click(sender As Object, e As EventArgs) Handles SimpleButton1.Click
@ -50,26 +54,27 @@ Public Class frmFileRename
End Try
Else
Dim OldName, NewName, OnlyFilename As String
OldName = ClassDocGrid.SELECTED_DOC_PATH
OldName = FullFilename
' Define file names.
NewName = txtNewName.Text
OnlyFilename = NewName
Dim oFullFilename = ClassHelper.FORMAT_WM_PATH(ClassDocGrid.SELECTED_DOC_PATH)
Dim oFullFilename = ClassHelper.FORMAT_WM_PATH(FullFilename)
Dim name1 = Path.Combine(Path.GetDirectoryName(oFullFilename), NewName)
NewName &= Path.GetExtension(oFullFilename)
OnlyFilename &= Path.GetExtension(oFullFilename)
' Rename file.
LOGGER.Info($"Renaming Old: [{OldName}]")
LOGGER.Info($"Renaming Old: [{oFullFilename}]")
LOGGER.Info($"Renaming New: [{NewName}]")
My.Computer.FileSystem.RenameFile(OldName, NewName)
My.Computer.FileSystem.RenameFile(oFullFilename, NewName)
LOGGER.Info($"Renaming FileSystem done!")
Cursor = Cursors.WaitCursor
Dim oEXEC As String = $"EXEC PROF_DOC_CREATE_UPDATE {ClassDocGrid.SELECTED_DOC_ID}, {CURRENT_RECORD_ID},'{USER_USERNAME}',''"
Dim oEXEC As String = $"EXEC PROF_DOC_CREATE_UPDATE {DocID}, {CURRENT_RECORD_ID},'{USER_USERNAME}',''"
If MYDB_ECM.ExecuteNonQuery(oEXEC) Then
Me.Close()
Else
MsgBox("Not succesfull - Check log", MsgBoxStyle.Critical)
End If
End If
End If
End Sub

View File

@ -241,6 +241,7 @@ Public Class frmMain
End Sub
Sub Load_TasksforUser()
Try
VWPMO_WF_ACTIVETableAdapter.Connection.ConnectionString = MYDB_ECM.CurrentConnectionString
Me.VWPMO_WF_ACTIVETableAdapter.Fill(Me.DD_DMSDataSet.VWPMO_WF_ACTIVE, USER_LANGUAGE, USER_USERNAME)
CURRENT_TASKS_GENERAL = Me.DD_DMSDataSet.VWPMO_WF_ACTIVE

View File

@ -91,6 +91,15 @@ Partial Class frmNodeNavigation
Me.CMSAdmin_Treeview = New System.Windows.Forms.ContextMenuStrip(Me.components)
Me.KnotenLöschenadminToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem()
Me.KnotenVerschiebenToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem()
Me.PopupMenu1 = New DevExpress.XtraBars.PopupMenu(Me.components)
Me.BarManager1 = New DevExpress.XtraBars.BarManager(Me.components)
Me.barDockControlTop = New DevExpress.XtraBars.BarDockControl()
Me.barDockControlBottom = New DevExpress.XtraBars.BarDockControl()
Me.barDockControlLeft = New DevExpress.XtraBars.BarDockControl()
Me.barDockControlRight = New DevExpress.XtraBars.BarDockControl()
Me.Bar1 = New DevExpress.XtraBars.Bar()
Me.Bar2 = New DevExpress.XtraBars.Bar()
Me.Bar3 = New DevExpress.XtraBars.Bar()
CType(Me.ribbonNodeNavigation, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.SplitContainerTreeList, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.SplitContainerTreeList.Panel1, System.ComponentModel.ISupportInitialize).BeginInit()
@ -117,13 +126,15 @@ Partial Class frmNodeNavigation
Me.SplitContainerDocView.Panel2.SuspendLayout()
Me.SplitContainerDocView.SuspendLayout()
Me.CMSAdmin_Treeview.SuspendLayout()
CType(Me.PopupMenu1, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.BarManager1, System.ComponentModel.ISupportInitialize).BeginInit()
Me.SuspendLayout()
'
'ribbonNodeNavigation
'
Me.ribbonNodeNavigation.ExpandCollapseItem.Id = 0
Me.ribbonNodeNavigation.Items.AddRange(New DevExpress.XtraBars.BarItem() {Me.ribbonNodeNavigation.ExpandCollapseItem, Me.ribbonNodeNavigation.SearchEditItem, Me.bbtnitmRecEdit, Me.bsiInfo, Me.bbtnitmRecSave, Me.bsiDocID, Me.bsitmRecordID, Me.bbtnitmDocResultExport, Me.bbtnitmDocResultLayoutSave, Me.bbtnitmDocResultLayoutReset, Me.bbtnitmDocResultRefresh, Me.BarStaticItemLocked, Me.bsitmtInfoDoc, Me.BarButtonItem1, Me.bbtnitmReloadView, Me.BbtnitmNodeReorder, Me.bbtnItm_TV_Collape_Expand, Me.checkShowPreview, Me.btnCreateNewNode, Me.tsitmDMSReadOnly})
Me.ribbonNodeNavigation.Location = New System.Drawing.Point(0, 0)
Me.ribbonNodeNavigation.Location = New System.Drawing.Point(0, 41)
Me.ribbonNodeNavigation.MaxItemId = 25
Me.ribbonNodeNavigation.Name = "ribbonNodeNavigation"
Me.ribbonNodeNavigation.Pages.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPage() {Me.RibbonPage1})
@ -133,7 +144,7 @@ Partial Class frmNodeNavigation
Me.ribbonNodeNavigation.ShowExpandCollapseButton = DevExpress.Utils.DefaultBoolean.[True]
Me.ribbonNodeNavigation.ShowMoreCommandsButton = DevExpress.Utils.DefaultBoolean.[False]
Me.ribbonNodeNavigation.ShowToolbarCustomizeItem = False
Me.ribbonNodeNavigation.Size = New System.Drawing.Size(1443, 158)
Me.ribbonNodeNavigation.Size = New System.Drawing.Size(1443, 146)
Me.ribbonNodeNavigation.StatusBar = Me.RibbonStatusBar1
Me.ribbonNodeNavigation.Toolbar.ShowCustomizeItem = False
'
@ -319,7 +330,7 @@ Partial Class frmNodeNavigation
Me.RibbonStatusBar1.ItemLinks.Add(Me.tsitmDMSReadOnly)
Me.RibbonStatusBar1.ItemLinks.Add(Me.BarStaticItemLocked)
Me.RibbonStatusBar1.ItemLinks.Add(Me.bsitmtInfoDoc)
Me.RibbonStatusBar1.Location = New System.Drawing.Point(0, 788)
Me.RibbonStatusBar1.Location = New System.Drawing.Point(0, 769)
Me.RibbonStatusBar1.Name = "RibbonStatusBar1"
Me.RibbonStatusBar1.Ribbon = Me.ribbonNodeNavigation
Me.RibbonStatusBar1.Size = New System.Drawing.Size(1443, 22)
@ -344,7 +355,7 @@ Partial Class frmNodeNavigation
'
Me.SplitContainerTreeList.Panel2.Controls.Add(Me.SplitContainerDocumentSearch)
Me.SplitContainerTreeList.Panel2.Text = "Panel2"
Me.SplitContainerTreeList.Size = New System.Drawing.Size(1433, 630)
Me.SplitContainerTreeList.Size = New System.Drawing.Size(969, 582)
Me.SplitContainerTreeList.SplitterPosition = 289
Me.SplitContainerTreeList.TabIndex = 2
'
@ -386,7 +397,7 @@ Partial Class frmNodeNavigation
Me.TreeListDevexpress.OptionsView.ShowVertLines = False
Me.TreeListDevexpress.OptionsView.TreeLineStyle = DevExpress.XtraTreeList.LineStyle.Dark
Me.TreeListDevexpress.ParentFieldName = "PARENT_GUID"
Me.TreeListDevexpress.Size = New System.Drawing.Size(289, 630)
Me.TreeListDevexpress.Size = New System.Drawing.Size(289, 582)
Me.TreeListDevexpress.StateImageList = Me.ImageCollection1
Me.TreeListDevexpress.TabIndex = 1
'
@ -410,7 +421,7 @@ Partial Class frmNodeNavigation
'
Me.SplitContainerDocumentSearch.Panel2.Controls.Add(Me.GridControlDocSearch)
Me.SplitContainerDocumentSearch.Panel2.Text = "Panel2"
Me.SplitContainerDocumentSearch.Size = New System.Drawing.Size(1134, 630)
Me.SplitContainerDocumentSearch.Size = New System.Drawing.Size(670, 582)
Me.SplitContainerDocumentSearch.SplitterPosition = 246
Me.SplitContainerDocumentSearch.TabIndex = 1
'
@ -421,7 +432,7 @@ Partial Class frmNodeNavigation
Me.pnlControls.Dock = System.Windows.Forms.DockStyle.Fill
Me.pnlControls.Location = New System.Drawing.Point(0, 0)
Me.pnlControls.Name = "pnlControls"
Me.pnlControls.Size = New System.Drawing.Size(1134, 246)
Me.pnlControls.Size = New System.Drawing.Size(670, 246)
Me.pnlControls.TabIndex = 0
'
'GridControlDocSearch
@ -435,7 +446,7 @@ Partial Class frmNodeNavigation
Me.GridControlDocSearch.Location = New System.Drawing.Point(0, 0)
Me.GridControlDocSearch.MainView = Me.GridViewDoc_Search
Me.GridControlDocSearch.Name = "GridControlDocSearch"
Me.GridControlDocSearch.Size = New System.Drawing.Size(1134, 374)
Me.GridControlDocSearch.Size = New System.Drawing.Size(670, 326)
Me.GridControlDocSearch.TabIndex = 8
Me.GridControlDocSearch.TabStop = False
Me.GridControlDocSearch.ViewCollection.AddRange(New DevExpress.XtraGrid.Views.Base.BaseView() {Me.GridViewDoc_Search})
@ -443,7 +454,7 @@ Partial Class frmNodeNavigation
'cmsResultFileDetail
'
Me.cmsResultFileDetail.ImageScalingSize = New System.Drawing.Size(24, 24)
Me.cmsResultFileDetail.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.tsmiFileProperties, Me.ToolStripSeparator5, Me.tsmiFileOpen, Me.tsmiFileFolderOpen, Me.ToolStripSeparator1, Me.tsmiFileInWork, Me.ToolStripSeparator3, Me.tsmiFileLink_Add, Me.tsmiFileLink_ShowAll, Me.tsmiFileLinkRemove, Me.ToolStripSeparator2, Me.tsmiFileRename, Me.tsmiFileVersion, Me.DokumentartÄndernToolStripMenuItem, Me.tsmiFileRightsShow, Me.ToolStripSeparator4, Me.tsmiFileDelete})
Me.cmsResultFileDetail.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.tsmiFileProperties, Me.ToolStripSeparator5, Me.tsmiFileOpen, Me.tsmiFileFolderOpen, Me.ToolStripSeparator1, Me.tsmiFileInWork, Me.ToolStripSeparator3, Me.tsmiFileLink_Add, Me.tsmiFileLink_ShowAll, Me.tsmiFileLinkRemove, Me.ToolStripSeparator2, Me.tsmiFileRename, Me.DokumentartÄndernToolStripMenuItem, Me.tsmiFileVersion, Me.tsmiFileRightsShow, Me.ToolStripSeparator4, Me.tsmiFileDelete})
Me.cmsResultFileDetail.Name = "ContextMenuStripResultFiles"
Me.cmsResultFileDetail.Size = New System.Drawing.Size(248, 394)
'
@ -526,13 +537,13 @@ Partial Class frmNodeNavigation
'tsmiFileRenameFilename
'
Me.tsmiFileRenameFilename.Name = "tsmiFileRenameFilename"
Me.tsmiFileRenameFilename.Size = New System.Drawing.Size(142, 22)
Me.tsmiFileRenameFilename.Size = New System.Drawing.Size(180, 22)
Me.tsmiFileRenameFilename.Text = "Dateiname"
'
'tsmiFileRenameDisplayname
'
Me.tsmiFileRenameDisplayname.Name = "tsmiFileRenameDisplayname"
Me.tsmiFileRenameDisplayname.Size = New System.Drawing.Size(142, 22)
Me.tsmiFileRenameDisplayname.Size = New System.Drawing.Size(180, 22)
Me.tsmiFileRenameDisplayname.Text = "Displayname"
'
'tsmiFileVersion
@ -629,10 +640,9 @@ Partial Class frmNodeNavigation
'
'SplitContainerDocView
'
Me.SplitContainerDocView.Collapsed = True
Me.SplitContainerDocView.CollapsePanel = DevExpress.XtraEditors.SplitCollapsePanel.Panel2
Me.SplitContainerDocView.Dock = System.Windows.Forms.DockStyle.Fill
Me.SplitContainerDocView.Location = New System.Drawing.Point(0, 158)
Me.SplitContainerDocView.Location = New System.Drawing.Point(0, 187)
Me.SplitContainerDocView.Name = "SplitContainerDocView"
'
'SplitContainerDocView.Panel1
@ -644,7 +654,7 @@ Partial Class frmNodeNavigation
'
Me.SplitContainerDocView.Panel2.Controls.Add(Me.DocumentViewer)
Me.SplitContainerDocView.Panel2.Text = "Panel2"
Me.SplitContainerDocView.Size = New System.Drawing.Size(1443, 630)
Me.SplitContainerDocView.Size = New System.Drawing.Size(1443, 582)
Me.SplitContainerDocView.SplitterPosition = 969
Me.SplitContainerDocView.TabIndex = 0
'
@ -654,7 +664,7 @@ Partial Class frmNodeNavigation
Me.DocumentViewer.FileLoaded = False
Me.DocumentViewer.Location = New System.Drawing.Point(0, 0)
Me.DocumentViewer.Name = "DocumentViewer"
Me.DocumentViewer.Size = New System.Drawing.Size(0, 0)
Me.DocumentViewer.Size = New System.Drawing.Size(464, 582)
Me.DocumentViewer.TabIndex = 0
'
'XtraSaveFileDialog1
@ -687,6 +697,81 @@ Partial Class frmNodeNavigation
Me.KnotenVerschiebenToolStripMenuItem.Size = New System.Drawing.Size(201, 22)
Me.KnotenVerschiebenToolStripMenuItem.Text = "Knoten verschieben"
'
'PopupMenu1
'
Me.PopupMenu1.Name = "PopupMenu1"
Me.PopupMenu1.Ribbon = Me.ribbonNodeNavigation
'
'BarManager1
'
Me.BarManager1.Bars.AddRange(New DevExpress.XtraBars.Bar() {Me.Bar1, Me.Bar2, Me.Bar3})
Me.BarManager1.DockControls.Add(Me.barDockControlTop)
Me.BarManager1.DockControls.Add(Me.barDockControlBottom)
Me.BarManager1.DockControls.Add(Me.barDockControlLeft)
Me.BarManager1.DockControls.Add(Me.barDockControlRight)
Me.BarManager1.Form = Me
Me.BarManager1.MainMenu = Me.Bar2
Me.BarManager1.StatusBar = Me.Bar3
'
'barDockControlTop
'
Me.barDockControlTop.CausesValidation = False
Me.barDockControlTop.Dock = System.Windows.Forms.DockStyle.Top
Me.barDockControlTop.Location = New System.Drawing.Point(0, 0)
Me.barDockControlTop.Manager = Me.BarManager1
Me.barDockControlTop.Size = New System.Drawing.Size(1443, 41)
'
'barDockControlBottom
'
Me.barDockControlBottom.CausesValidation = False
Me.barDockControlBottom.Dock = System.Windows.Forms.DockStyle.Bottom
Me.barDockControlBottom.Location = New System.Drawing.Point(0, 791)
Me.barDockControlBottom.Manager = Me.BarManager1
Me.barDockControlBottom.Size = New System.Drawing.Size(1443, 19)
'
'barDockControlLeft
'
Me.barDockControlLeft.CausesValidation = False
Me.barDockControlLeft.Dock = System.Windows.Forms.DockStyle.Left
Me.barDockControlLeft.Location = New System.Drawing.Point(0, 41)
Me.barDockControlLeft.Manager = Me.BarManager1
Me.barDockControlLeft.Size = New System.Drawing.Size(0, 750)
'
'barDockControlRight
'
Me.barDockControlRight.CausesValidation = False
Me.barDockControlRight.Dock = System.Windows.Forms.DockStyle.Right
Me.barDockControlRight.Location = New System.Drawing.Point(1443, 41)
Me.barDockControlRight.Manager = Me.BarManager1
Me.barDockControlRight.Size = New System.Drawing.Size(0, 750)
'
'Bar1
'
Me.Bar1.BarName = "Befehle"
Me.Bar1.DockCol = 0
Me.Bar1.DockStyle = DevExpress.XtraBars.BarDockStyle.Top
Me.Bar1.Text = "Befehle"
'
'Bar2
'
Me.Bar2.BarName = "Hauptmenü"
Me.Bar2.DockCol = 0
Me.Bar2.DockStyle = DevExpress.XtraBars.BarDockStyle.Top
Me.Bar2.OptionsBar.MultiLine = True
Me.Bar2.OptionsBar.UseWholeRow = True
Me.Bar2.Text = "Hauptmenü"
'
'Bar3
'
Me.Bar3.BarName = "Statusleiste"
Me.Bar3.CanDockStyle = DevExpress.XtraBars.BarCanDockStyle.Bottom
Me.Bar3.DockCol = 0
Me.Bar3.DockStyle = DevExpress.XtraBars.BarDockStyle.Bottom
Me.Bar3.OptionsBar.AllowQuickCustomization = False
Me.Bar3.OptionsBar.DrawDragBorder = False
Me.Bar3.OptionsBar.UseWholeRow = True
Me.Bar3.Text = "Statusleiste"
'
'frmNodeNavigation
'
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
@ -695,6 +780,10 @@ Partial Class frmNodeNavigation
Me.Controls.Add(Me.SplitContainerDocView)
Me.Controls.Add(Me.RibbonStatusBar1)
Me.Controls.Add(Me.ribbonNodeNavigation)
Me.Controls.Add(Me.barDockControlLeft)
Me.Controls.Add(Me.barDockControlRight)
Me.Controls.Add(Me.barDockControlBottom)
Me.Controls.Add(Me.barDockControlTop)
Me.IconOptions.SvgImage = CType(resources.GetObject("frmNodeNavigation.IconOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage)
Me.Name = "frmNodeNavigation"
Me.Ribbon = Me.ribbonNodeNavigation
@ -726,6 +815,8 @@ Partial Class frmNodeNavigation
CType(Me.SplitContainerDocView, System.ComponentModel.ISupportInitialize).EndInit()
Me.SplitContainerDocView.ResumeLayout(False)
Me.CMSAdmin_Treeview.ResumeLayout(False)
CType(Me.PopupMenu1, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.BarManager1, System.ComponentModel.ISupportInitialize).EndInit()
Me.ResumeLayout(False)
Me.PerformLayout()
@ -797,4 +888,13 @@ Partial Class frmNodeNavigation
Friend WithEvents CMSAdmin_Treeview As ContextMenuStrip
Friend WithEvents KnotenLöschenadminToolStripMenuItem As ToolStripMenuItem
Friend WithEvents KnotenVerschiebenToolStripMenuItem As ToolStripMenuItem
Friend WithEvents PopupMenu1 As DevExpress.XtraBars.PopupMenu
Friend WithEvents BarManager1 As DevExpress.XtraBars.BarManager
Friend WithEvents Bar1 As DevExpress.XtraBars.Bar
Friend WithEvents Bar2 As DevExpress.XtraBars.Bar
Friend WithEvents Bar3 As DevExpress.XtraBars.Bar
Friend WithEvents barDockControlTop As DevExpress.XtraBars.BarDockControl
Friend WithEvents barDockControlBottom As DevExpress.XtraBars.BarDockControl
Friend WithEvents barDockControlLeft As DevExpress.XtraBars.BarDockControl
Friend WithEvents barDockControlRight As DevExpress.XtraBars.BarDockControl
End Class

View File

@ -743,6 +743,12 @@
<metadata name="CMSAdmin_Treeview.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>158, 54</value>
</metadata>
<metadata name="PopupMenu1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>323, 54</value>
</metadata>
<metadata name="BarManager1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>449, 54</value>
</metadata>
<data name="frmNodeNavigation.IconOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIxLjIsIFZlcnNpb249MjEuMi40

View File

@ -75,6 +75,7 @@ Public Class frmNodeNavigation
Private Property ChildNodeGuid As Integer = 0
Private Property ClassNodeCommands As ClassNodeCommands
Private Property ViewerInit As Boolean = False
Private Debug As Boolean = False
@ -130,8 +131,12 @@ Public Class frmNodeNavigation
If CONFIG.Config.DocumentSearchSplitterWidth > 0 Then
SplitContainerDocumentSearch.SplitterPosition = CONFIG.Config.DocumentSearchSplitterWidth
End If
If ViewerInit Then
SplitContainerDocView.Collapsed = Not CONFIG.Config.DocumentViewerShown
Else
SplitContainerDocView.Collapsed = True
End If
SplitContainerDocView.Collapsed = Not CONFIG.Config.DocumentViewerShown
checkShowPreview.Checked = CONFIG.Config.DocumentViewerShown
Catch ex As Exception
@ -152,8 +157,18 @@ Public Class frmNodeNavigation
CURRENT_DT_TBPMO_ENTITY_RIGHT_CONTROLS = MYDB_ECM.GetDatatable(String.Format("SELECT T.* FROM TBPMO_ENTITY_RIGHT_CONTROLS T INNER JOIN VWPMO_CONSTRUCTOR_FORMS T1 ON T.ENTITY_ID = T1.FORM_ID where T1.CONSTRUCT_ID = {0}", CONSTRUCTORID))
Try
DocumentViewer.Init(LOGCONFIG, MYGDPICTURE_LICENSE_KEY)
If DocumentViewer.Init(LOGCONFIG, MYGDPICTURE_LICENSE_KEY, New DigitalData.Controls.DocumentViewer.DocumentViewer.ToolbarSettings() With {
.ShowPrintButton = True,
.ShowRotateButton = True,
.ShowFlipButton = True,
.ShowSettingButton = True
}) = False Then
MsgBox("Viewer konnte nicht initialisiert werden. Bitte informieren Sie den Systembetreuer und prüfen Ihr Log.", MsgBoxStyle.Information)
SplitContainerDocView.Collapsed = True
DocumentViewer.Visible = False
Else
ViewerInit = True
End If
Catch ex As Exception
LOGGER.Warn($"Error while init DocumentViewer: {ex.Message}")
End Try
@ -903,15 +918,19 @@ Public Class frmNodeNavigation
Dim oDocumentsFound = Await RUN_WDSEARCH_GRID(True)
If oDocumentsFound = 0 Then
Close_Document_Viewer()
RibbonPageGroupDocResult.Enabled = False
SplitContainerDocView.Collapsed = True
Else
RibbonPageGroupDocResult.Enabled = True
SplitContainerDocView.Collapsed = False
If ViewerInit Then
If oDocumentsFound = 0 Then
Close_Document_Viewer()
RibbonPageGroupDocResult.Enabled = False
SplitContainerDocView.Collapsed = True
Else
RibbonPageGroupDocResult.Enabled = True
SplitContainerDocView.Collapsed = False
End If
End If
Update_Document_Label(oDocumentsFound)
sw.Done()
@ -2489,6 +2508,9 @@ Public Class frmNodeNavigation
Dim allow_Open As Boolean = False
Dim oDocuments = Current_DocList.SelectedDocuments
If oDocuments.Count = 0 Then
Exit Sub
End If
Dim Result = ClassDOC_SEARCH.Get_File_Rights(oDocuments.First.DocId)
@ -2642,15 +2664,18 @@ Public Class frmNodeNavigation
Dim oDocuments = Current_DocList.SelectedDocuments
If oDocuments.Count = 1 Then
ClassFileResult.DocID = oDocuments.First.DocId
ClassFileResult.DocumentPath = oDocuments.First.DocPath
ClassFileResult.OldDisplayName = oDocuments.First.DisplayName
If oDocuments.First.DisplayName <> "" Then
If oDocuments.First.DisplayName <> "" And ClassFileResult.DocID > 0 Then
Dim oRowHandle As Integer = GridViewDoc_Search.FocusedRowHandle
Dim frm As New frmFileRename(ClassFileResult.DocID, oDocuments.First.DisplayName, "Displayname")
Dim frm As New frmFileRename(ClassFileResult.DocID, oDocuments.First.DisplayName, "Displayname", ClassFileResult.DocumentPath)
frm.ShowDialog()
Await RUN_WDSEARCH_GRID(True)
If Not IsNothing(oRowHandle) Then
GridViewDoc_Search.FocusedRowHandle = oRowHandle
End If
Else
MsgBox("Bitte eine Datei auswählen!", MsgBoxStyle.Information)
End If
End If
@ -2684,11 +2709,11 @@ Public Class frmNodeNavigation
If RENAME_DOC_PATH <> "" Then
If RENAME_DOC_PATH <> "" And ClassFileResult.DocID > 0 Then
Dim FileToRename As String
FileToRename = Path.GetFileNameWithoutExtension(RENAME_DOC_PATH)
Dim oRowHandle As Integer = GridViewDoc_Search.FocusedRowHandle
Dim frm As New frmFileRename(ClassFileResult.DocID, FileToRename, "Filename")
Dim frm As New frmFileRename(ClassFileResult.DocID, FileToRename, "Filename", RENAME_DOC_PATH)
frm.ShowDialog()
Await RUN_WDSEARCH_GRID(True)
If Not IsNothing(oRowHandle) Then
@ -3088,8 +3113,12 @@ Public Class frmNodeNavigation
If FORM_LOADED = False Then
Exit Sub
End If
If ViewerInit Then
SplitContainerDocView.Collapsed = Not checkShowPreview.Checked
Else
SplitContainerDocView.Collapsed = True
End If
SplitContainerDocView.Collapsed = Not checkShowPreview.Checked
End Sub
Private Sub GridViewDoc_Search_SelectionChanged(sender As Object, e As SelectionChangedEventArgs) Handles GridViewDoc_Search.SelectionChanged
@ -3097,19 +3126,21 @@ Public Class frmNodeNavigation
End Sub
Private Sub Show_SelectedDoc()
Dim oSelectedDocs = ClassDocGrid.GetSelectedDocuments(GridViewDoc_Search)
If ViewerInit Then
If oSelectedDocs.Count = 1 Then
Refresh_DocID()
Close_Document_Viewer()
If oSelectedDocs.Count = 1 Then
Refresh_DocID()
Close_Document_Viewer()
System.Threading.Thread.Sleep(400)
Dim oDocument As ClassDocGrid.clsWMDoc = oSelectedDocs.First()
Dim oPath = ClassHelper.FORMAT_WM_PATH(oDocument.DocPath)
System.Threading.Thread.Sleep(400)
Dim oDocument As ClassDocGrid.clsWMDoc = oSelectedDocs.First()
Dim oPath = ClassHelper.FORMAT_WM_PATH(oDocument.DocPath)
DocumentViewer.LoadFile(oPath)
Else
Close_Document_Viewer()
DocumentViewer.LoadFile(oPath)
Else
Close_Document_Viewer()
End If
End If
End Sub
Private Sub Close_Document_Viewer()
Try

View File

@ -3,7 +3,6 @@
<package id="BouncyCastle.Cryptography" version="2.5.0" targetFramework="net462" />
<package id="DocumentFormat.OpenXml" version="3.2.0" targetFramework="net462" />
<package id="DocumentFormat.OpenXml.Framework" version="3.2.0" targetFramework="net462" />
<package id="GdPicture" version="14.3.3" targetFramework="net462" />
<package id="GdPicture.runtimes.windows" version="14.3.3" targetFramework="net462" />
<package id="Microsoft.AspNet.WebApi.Client" version="6.0.0" targetFramework="net462" />
<package id="Microsoft.Bcl.AsyncInterfaces" version="9.0.0" targetFramework="net462" />

View File

@ -150,7 +150,6 @@
<File Id="OfficeLib" Name="Office.dll" Source="C:\Windows\assembly\GAC_MSIL\Office\15.0.0.0__71e9bce111e9429c\Office.dll" KeyPath="yes" />
<File Id="Microsoft.Office.Interop.Outlook" Name="Microsoft.Office.Interop.Outlook.dll" Source="C:\Windows\assembly\GAC_MSIL\Microsoft.Office.Interop.Outlook\15.0.0.0__71e9bce111e9429c\Microsoft.Office.Interop.Outlook.dll" KeyPath="no" />
<File Id="Microsoft.Office.Interop.Word" Name="Microsoft.Office.Interop.Word.dll" Source="C:\Windows\assembly\GAC_MSIL\Microsoft.Office.Interop.Word\15.0.0.0__71e9bce111e9429c\Microsoft.Office.Interop.Word.dll" KeyPath="no" />
<File Id="InteropServices.RuntimeInformation" Name="System.Runtime.InteropServices.RuntimeInformation.dll" Source="System.Runtime.InteropServices.RuntimeInformation.dll" KeyPath="no" />
</Component>
<!-- MAIL.NET Bibliothek -->

Binary file not shown.

View File

@ -1,199 +0,0 @@
\======================================================
**GdPicture.NET 14 End User License Agreement**
\======================================================
**1) INTRODUCTION AND DEFINITIONS**
1.1. This Agreement is a license agreement between you and ORPALIS (the "Author") for the use of the computer software development kit (the “SDK”) you have purchased or downloaded for evaluation purposes ("GdPicture.NET" and/or “DocuVieware” at current major version).
1.2. We, ORPALIS (the "Author") reserve the right to modify at whenever required time, the content of this Agreement (“Agreement” or “EULA”).
1.3. You accept this Agreement by clicking the "I accept" button where this option is made available to you by us, ORPALIS (the "Author") in the user interface regarding End User License Agreement (EULA) of our products.
1.4. By using GdPicture.NET products (including DocuVieware), either by evaluating or purchasing it, you agree to be bound by all the terms and conditions of this Agreement.
1.5. This Agreement is the entire agreement between you and us, ORPALIS (the "Author") and supersedes any other communication or advertising with respect to GdPicture.NET and related products. If any provision of this Agreement is held invalid, the remainder of this Agreement shall continue in full force and effect.
1.6 “User” and “End User” means a person or an entity that installs or uses the SDK or Documentation.
**2) EDITIONS**
2.1. GdPicture.NET SDK is a Software Development Kit (SDK).
DocuVieware is another Software Development Kit (SDK) having a dependency on GdPicture.NET SDK.
2.2 Both software are bundled into the same Software Package (or installation kit).
2.3 Each GdPicture.NET SDK developer license includes a DocuVieware developer license. In other words DocuVieware development licenses are bundled with GdPicture.NET SDK (see 3.3.1).
**3) DOCUVIEWARE**
3.1 DocuVieware is a universal HTML5 Viewer and Document Management toolkit, a standalone product whose licensing rules are stated as below.
3.2 DocuVieware licensing comprises:
-DocuVieware development-licensing, and
-DocuVieware distribution-licensing.
3.3 DocuVieware development licensing
3.3.1 DocuVieware development licenses are bundled with GdPicture.NET SDK and, therefore, are subject to all GdPicture.NET regulatory amendments, as specified below.
3.4. DocuVieware distribution licensing
3.4.1 In order to distribute your works that relate to DocuVieware, you will need to license distribution rights.
3.4.2 Distribution licensing concerns the rights to distribute your DocuVieware-based works and does not regulate your DocuVieware nor GdPicture.NET development rights.
3.4.3 DocuVieware distribution licensing is Server-based.
3.4.4 The term "Server" with regard to DocuVieware distribution licensing is defined by us, ORPALIS, as a physical, or virtual machine, or computing device on which you have installed DocuVieware software in order to deploy and provide your DocuVieware-based works to your customers.
3.4.5 Server may have up to 4 vCPUs (or cores). IE: distributing DocuVieware on a Server having 8 vCPUs (or cores) require two deployment licenses.
3.4.6. You may distribute your unlimited works based-on (or linked-to) DocuVieware, on a Server once you have acquired a Server deployment license.
3.4.7 Each Server deployment requires a distribution licensing.
3.4.8 Unlimited distribution rights licensing is available solely upon direct negotiation.
**4) EVALUATION LICENSING**
4.1. “Evaluation License” allows a User to fully evaluate the SDK during an evaluation period of sixty (60) days from the date the SDK is first used.
The evaluation license key unlocks all features of the SDK for sixty (60) days.
4.2. The evaluation license is provided for evaluation purposes only, not for production use.
4.3. Evaluators requiring an evaluation period beyond the initial sixty (60) days can contact us by creating a sales support ticket.
4.4. Evaluation license usage is prohibited to develop/maintain an application already covered by a commercial GdPicture license. For example, if a developer is joining a team assigned to the development/maintenance of an application linking GdPicture under a commercial license agreement, this developer must have its own valid commercial license.*
**5) COMMERCIAL LICENSING**
5.1. Three different license types are available for each of the GdPicture.NET editions:
a) per-developer license:
Based on the amount of seats purchased - this license type entitles 1,2,3,4,5 or 6 distinct Users and/or build machine(s), of the same organization at a single physical address to write software with access to the SDK..
b) site license:
This license type entitles an unlimited number of Users and/or build machine(s) of the same organization at a single physical address to write software with access to the SDK.
c) Worldwide license:
This license entitles an unlimited number of Users and/or build machine(s) of the same organization at an unlimited number of physical addresses to write software with access to the SDK.
5.2. The use of the SDK requires one license for each User within your organization who will launch the compilation process of any application linking the SDK. For example, if your organization has 3 developers, 2 of which will work directly with the SDK and another one will not work directly with the SDK but will nevertheless launch the compilation process of a project linking the SDK, you will need to purchase 2 + 1 = 3 licenses.
5.3. Licenses are non-transferable between Users. Therefore, if a company has "x" Users who will use the SDK, the company requires a "x" Users license purchased according to paragraph 5.1. above. The same provision applies if, for example, the Users will not be working with the SDK at the same time.
5.4 You are forbidden to disclose your license key(s) to third parties.
5.5 The same license cannot be used by two different companies.
5.6. You are not allowed to sell the SDK or your license key(s) to other persons or entities.
5.7. You are prohibited from disclosing your license key(s) to other persons or entities.
5.8. You are not allowed to disclose your license key(s) on the source code of a web page.
5.9. You may not rent, lease, sub-license, or transfer the SDK, SDK copies, documentation, license keys, or your rights under this license without the prior written consent of ORPALIS (the "Author").
5.10 Any owner of any application linking the SDK must own at least one commercial license. For example, if a company X is owning the intellectual property of any application developed or maintained by another company Y, both companies will have to own their* own licenses.
**6) USE OF THE SDK**
6.1. You may not alter, decompile, disassemble, or reverse engineer GdPicture.NET products, including DocuVieware.
6.2. **GdPicture.NET SDK may not be used to develop software toolkits, API, libraries, components, command-line software, REST API, or any kind of third-party software, except as authorized in writing by a duly authorized officer of ORPALIS. This includes internal usage.**
6.3. Binaries of legally purchased SDK may be embedded in any application or system developed by you or your organization as long the SDK is covered by an active SDK maintenance (see 9.4).
6.4. You may modify the source code versions of sample files, if any, included with the SDK for the purpose of creating your own application(s).
6.5. You may not remove or alter our copyright notices.
6.6. You are not allowed to use our name, logo, or trademarks to market your application without our prior written consent.
**7) GDPICTURE.NET SERVER AND WEB DEPLOYMENT**
7.1. This chapter is not related to DocuVieware distribution licensing nor to DocuVieware-based works deployment.
7.2. This chapter concerns GdPicture.NET SDK only.
7.3. No extra fees are charged for GdPicture.NET SDK server deployment.
7.4. GdPicture.NET SDK may be used on any server, as long as access to the functionalities of our components is done via your own software and into your own machine. In other words, the public should not have direct access to GdPicture.NET SDK binaries or key.
7.5. GdPicture.NET SDK may be installed on any third-party hosting server as long as each developer using GdPicture.NET SDK has its own license key.
7.6. GdPicture.NET SDK may be installed on a shared hosting server, provided that each customer accesses GdPicture.NET SDK with its own license key.
7.7. GdPicture.NET SDK may not be installed on a hosting provider's server with a single license key used by all the hosting provider's customers.
7.8. You are not allowed to publish web applications, using GdPicture.NET SDK on the client side.
**8) REDISTRIBUTION**
8.1. No royalties are payable for the re-distribution of the SDK.
8.2. Binaries of legally purchased SDK can be distributed with your application (desktop or server) on a royalty-free basis. This means that you can distribute as many applications using the SDK as you wish, without restrictions or royalties, as long the SDK is covered by an active SDK maintenance (see 9.5).
8.3. Redistribution of the SDK is granted during a period of twelve months following the acquisition date. A separate maintenance contract is required to extend the redistribution rights beyond the twelve months period following the acquisition date.
8.4. You must distribute your application(s) under a written agreement that prohibits reverse engineering, decompilation, or disassembly of the applications(s) and clearly require from the customers of your application(s) to abide by the previously stated conditions.
**9) SDK MAINTENANCE**
9.1 The SDK is sold based on a yearly subscription model. An active SDK maintenance is required to install, use, or distribute the SDK.
9.2 An active SDK maintenance is automatically granted to owners of a commercial license during a period of twelve months which starts at the acquisition date. A separate annual maintenance contract (Annual Maintenance Contract (AMC)) is required to extend the SDK maintenance beyond the initial twelve months period.
9.3 An active SDK maintenance is required to install the SDK binaries for development purpose.
9.4 An active SDK maintenance is required to develop/maintain any application linking the SDK.
9.5 An active SDK maintenance is required to redistribute or allow installation of any application linking the SDK.
**10) TECHNICAL SUPPORT**
10.1. ORPALIS supports only the latest SDK version in a continuous integration model. This support includes bug fixes, new features, new minor and major versions, and any form of enhancements.
10.2. Technical support is available to Users owning a valid evaluation license or owning a commercial license under an active maintenance.
10.3. Each developer with a maintained license is allowed to open up to 10 tickets for a commercial license and up to 5 tickets for evaluation. Additional support plans can be purchased separately.
10.4. Before creating a support ticket, you have to make sure that you are using the latest available version of the SDK.
10.5. Technical support is provided for the problems which you cannot reasonably be expected to resolve by yourself. This includes any bug proven to be related to our product but excludes any code writing for your own applications development. It also excludes issues described and published in our online wealth of resources: online guides, online forums, knowledge-base, and FAQ page of our website.
10.6. Response time depends on the complexity of the reported issue and/or the completeness and accuracy of provided information for investigation/reproducing purposes (code snippets, files generating the issue, hardware/software environment information, and so forth).
**11) RECORDS AND AUDIT**
Users of a commercial license must maintain complete and accurate records relating to their use of the SDK including, but not limited to, copies of all agreements relating to the disclosure of the SDK in Source Code form.
Users must permit ORPALIS or its independent auditors to access, review, and copy such records upon the ORPALISs reasonable request, to determine the Users compliance with this End User License Agreement.
ORPALIS may request that a User provides information regarding all developers using the SDK.
Users shall respond to each request completely and accurately within thirty (30) days of the date of the request. Notwithstanding the foregoing, a User is not obligated to disclose confidential information of any third party in connection with the audit and may redact any records solely to the extent required to satisfy its confidentiality obligations to third parties.
**12) WARRANTIES AND EXCLUSION OF WARRANTIES**
ORPALIS represents and warrants that it has and shall have full right and authority to enter into this Agreement and to license the SDK and other technology to you, and that it shall use its best efforts to provide SDK, support, and maintenance in accordance with all terms of this Agreement, in a good, timely, efficient, professional, and workmanlike manner using (i) then-current technology, (ii) ORPALIS employees and agents who are fully familiar with the technology, and (ii) at least the degrees of accuracy, quality, efficiency, completeness, timeliness, and responsiveness as are equal to or higher than the accepted industry standards.
EXCEPT FOR THE PRIOR EXPRESS LIMITED WARRANTIES, THE AUTHOR MAKES, AND YOU RECEIVE, NO WARRANTIES, EXPRESS, IMPLIED, STATUTORY OR IN ANY COMMUNICATION WITH YOU, AND THE AUTHOR SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. THE SDK IS PROVIDED “AS IS”, THE AUTHOR DOES NOT WARRANT THAT THE OPERATION OF THE SDK WILL BE UNINTERRUPTED OR ERROR-FREE.
IN NO EVENT WILL THE AUTHOR BE LIABLE FOR ANY DAMAGES, INCLUDING LOSS OF DATA, LOST PROFITS, COST OF COVER OR OTHER SPECIAL, INCIDENTAL, CONSEQUENTIAL OR INDIRECT DAMAGES ARISING FROM THE USE OF THE SDK OR ACCOMPANYING DOCUMENTATION, HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY. THIS LIMITATION WILL APPLY EVEN IF THE COMPANY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. YOU ACKNOWLEDGE THAT THE LICENSE FEE REFLECTS THIS ALLOCATION OF RISK.
**13) LIMITATION OF LIABILITY; INDEMNITY**
Except (A) to the extent resulting from the negligence or willful misconduct of ORPALIS or its employees or agents, and/or (B) for ORPALIS indemnity obligations below: (i) In no event shall ORPALIS be liable for any damages (including, without limitation, lost profits, business interruption, or lost information) arising out of or related to this Agreement or any 'Authorized Users' use of or inability to use the SDK, even if ORPALIS has been advised of the possibility of such damages. In no event will ORPALIS be liable for loss of data or for indirect, special, incidental, consequential (including lost profit), or other damages based in contract, tort, or otherwise.
**14) TERMINATION**
Without prejudice to any other rights, either party may terminate this EULA if the other party materially breaches any the terms and conditions of this EULA and fails to cure such breach within thirty (30) days after receipt of notice documenting such breach. In the event of termination, you must destroy all copies of the SDK in your possession.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 30 KiB

View File

@ -1,160 +0,0 @@
# .NET SDK README
Intelligent PDF & document processing SDKs: from scanning to barcodes to OCR to conversion to robust PDF processing — if you can think of it, this library can probably do it.
# Getting Started
## Setting up the SDK
```csharp
using GdPicture14;
LicenseManager licence = new LicenseManager();
licence.RegisterKEY(""); // Set a demo key
```
## Converting a Word Document to a PDF
```csharp
// After Setting up the SDK
using GdPictureDocumentConverter converter = new GdPictureDocumentConverter();
converter.LoadFromFile(@"input.docx");
converter.SaveAsPDF(@"output.pdf");
```
## Converting an Image File into Searchable PDF (OCR)
**Note**: For using the OCR with GdPicture the optional nuget [**GdPicture.Resources**](https://www.nuget.org/packages/GdPicture.Resources) is required.
### Method 1: Saving intermediary output in a file
```csharp
// After Setting up the SDK
using GdPicturePDF pdf = new GdPicturePDF();
using GdPictureDocumentConverter converter = new GdPictureDocumentConverter();
converter.LoadFromFile(@"input.png");
converter.SaveAsPDF(@"output_intermediary.pdf");
pdf.LoadFromFile(@"output_intermediary.pdf", true);
pdf.OcrPages("*", 0, "eng", "", "", 200);
pdf.SaveToFile(@"output_with_ocr.pdf");
```
### Method 2: With a memory stream
```csharp
// After Setting up the SDK
using GdPicturePDF pdf = new GdPicturePDF();
using GdPictureDocumentConverter converter = new GdPictureDocumentConverter();
converter.LoadFromFile(@"input.png");
using MemoryStream stream = new MemoryStream();
converter.SaveAsPDF(stream);
pdf.LoadFromStream(stream);
pdf.OcrPages("*", 0, "eng", "", "", 200);
pdf.SaveToFile(@"output_with_ocr.pdf");
```
**If you would like to see more examples**, please visit the [code samples page](https://www.nutrient.io/guides/dotnet/samples/) in our guides.
# **Introduction**
[GdPicture.NET](https://www.nutrient.io/guides/dotnet/) is a [Nutrient](https://www.nutrient.io/) SDK for OCR, data extraction, editing, converting, generating PDFs, barcodes, scanning, and much more. It offers developers a rich API for quickly adding PDF, imaging, and intelligent data processing capabilities to any .NET application. There are many [code samples](https://www.nutrient.io/guides/web/samples/), and it comes supported by the amazing team at [Nutrient](https://www.nutrient.io//company/about/). 
- **Low-Level APIs**: For fine-grained control
- **High Fidelity**: Accurate, reliable document conversion and OCR
- **Prebuilt Features**: Convert, edit, sign, form fill, and more
## **System Compatibility**
### Deployment
GdPicture.NET assemblies are available for the following frameworks:
- .NET 8.0
- .NET Framework 4.6.2
Using different GdPicture.NET assemblies, you can deploy the application you build to various operating systems, as outlined in the table below.
| GdPicture.NET Assembly | Operating Systems Supported for Deployment |
| --- | --- |
| .NET 8.0 or newer | Linux* (x64, arm64), Microsoft Windows 10 (x64/x86) or newer, Microsoft Windows Server Core 2012 (x64) or newer, macOS 13 or newer (x64/ arm64) |
| .NET Framework 4.6.2 | Microsoft Windows Vista (x64/x86) or newer Microsoft Windows Server 2008 (x64/x86) or newer |
*The .NET 8.0 assembly on Linux requires GLIBC 2.29 or newer.*
### **Package Overview and Dependencies**
GdPicture repository contains multiple packages designed to provide flexibility, scalability, and targeted functionality for various platforms and use cases. Below is an overview of each package and its role within the ecosystem:
### Main package
- [**GdPicture.API**](https://www.nuget.org/packages/GdPicture.API): A cross-platform package that provides core API-level functionality. Serves as the foundation for all other GdPicture packages and can be used independently for lightweight document processing and manipulation tasks.
### Optional package
- [**GdPicture.Resources**](https://www.nuget.org/packages/GdPicture.Resources): Resources for GdPicture required for OCR processing.
### Alternative packages
- [**GdPicture**](https://www.nuget.org/packages/GdPicture): A Windows-only package that wraps [GdPicture.API](https://www.nuget.org/packages/GdPicture.API) and extends its capabilities by adding GdViewers (WPF and Winform).
- [**DocuVieware**](https://www.nuget.org/packages/DocuVieware): A standalone package offering a rich viewer and collaboration solution. Ideal for web-based projects that require advanced document viewing, annotation, and sharing capabilities.
- [**GdPicture.MAUI**](https://www.nuget.org/packages/GdPicture.MAUI): A cross-platform package that extends GdPicture.API capabilities by adding GdViewer MAUI viewer component (Preview).
# Supported File Types
GdPicture.NET library enables you to load, save, and convert numerous file types, and a full list of file types can be found [here](https://www.nutrient.io/guides/dotnet/about/file-type-support/).
- PDF, PDF/A
- Microsoft Office: DOC, DOCM, DOCX, DOTX, PPT, PPTM, PPTX, PPSX, XLS, XLSM, XLSX
- CAD: DXF
- Image: AI, BMP, CUR, CUT, DDS, DIB, DICOM, EMF, EXIF, EXR, G3, GIF, HDR, HEIF/HEIC, ICO, IFF, J2K, J2C, JB2, JBIG2, JIF, JFIF, JNG, JP2, JPEG, JPG, JPE, KOA, LBM, MNG, PBM, PBM RAW, PCD, PCT, PICT, PIC, PCX, PFM, PGM, PGM RAW, PJPEG, PNG, PNM, PPM, PPM RAW, PSD, RAS, RAW, RLE, SGI, SVG, TGA, TARGA, TIFF, TIF, WBMP, WAP, WBM, WMF, WSQ, XBM, XPM
- RAW Camera Image: 3FR, ARW, BAY, BMQ, CAP, CINE, CR2, CR3, CRW, CS1, DC2, DCR, DRF, DSC, DNG, ERF, FFF, HDR, IA, IIQ, KC2, K25, KDC, MDC, MEF, MOS, MRW, NEF, NRW, ORF, PEF, PTX, PXN, QTK, RAF, RAW, RDC, RW2, RW1, RWZ, SR2, SRF, SRW, STI
- Web: HTM, HTML, MHT, MHTML
- Email: EML, MSG
- Text: ODT, RTF, TXT
- PostScript: PS (*Currently, PostScript implementation is experimental.)*
# Key Features, **Documentation &** Support
Nutrient offers comprehensive [guides](https://www.nutrient.io/guides/dotnet/) and [code samples](https://www.nutrient.io/guides/dotnet/samples/) to help you quickly integrate and customize your application. It comes with [full technical support](http://www.nutrient.io/support/request/?utm_source=npm&utm_medium=referral&utm_campaign=readme) that includes direct access to the engineers who built the product. Whether you have questions getting started with our SDK, or you want to know how to best integrate new features into your app, were here to help you find a solution.
Most popular guides:
- [Load a file](https://www.nutrient.io/guides/dotnet/load-a-file/): Load PDF documents, images and about 100 different file formats. This is the first step in using the full potential of our library. Loading files to one of our custom classes allows you to perform different actions on those files. You can use different kind of sources, such as a local machine, a byte array, a stream object, or remote URLs.
- [Conversion](https://www.nutrient.io/guides/dotnet/conversion/): Convert various formats — including Office documents, images, emails, and webpages — into high-quality PDFs. Seamlessly convert PDFs back to Office formats while preserving original styling and layout.
- [OCR](https://www.nutrient.io/guides/dotnet/ocr/): Leverage advanced OCR technology for zonal, full-page, and template-based text recognition, enabling searchable PDF/A creation, automated document classification, and fast processing, including barcode and specialized data decoding.
- [Editor](https://www.nutrient.io/guides/dotnet/editor/): Programmatically edit PDFs, images, and other file formats in your application. Leverage an intuitive API to manipulate, merge, split, insert, and remove PDF pages in your workflows. Easily adjust images with more than 50 unique filters, including blur, sharpen, red-eye correction, sepia, smooth, and soften. Dynamically insert text and image watermarks to protect your confidential documents and images.
- [Extraction](https://www.nutrient.io/guides/dotnet/extraction/): Harness our API to automatically extract key-value pairs, tables, and structured data.
- [Barcodes](https://www.nutrient.io/guides/dotnet/barcodes/): Automate the recognition and decoding of 1D and 2D barcodes (including QR, Micro QR, Data Matrix, PDF417, Aztec Code, and MaxiCode). Dynamically generate barcodes in vector or raster format for insertion into image or PDF files.
- [PDF Generation](https://www.nutrient.io/guides/dotnet/pdf-generation/): Leverage a lightning-fast PDF generation engine that can merge data with templates.
- [TWAIN and WIA Scanning](https://www.nutrient.io/guides/dotnet/scanning/) (Windows Specific Feature): Capture images from any scanner devices and digital cameras using our enterprise-grade TWAIN and WIA toolkit, and leverage high- and low-level APIs to customize the process.
- [Hyper-compression](https://www.nutrient.io/guides/dotnet/optimization/hyper-compress-mrc/): Dramatically reduce file sizes for various document types using our mixed raster content (MRC) compression engine, which calibrates specific settings to deliver high-fidelity outputs without noticeable data loss.
- [PDF/A](https://www.nutrient.io/guides/dotnet/pdfa/convert/): Convert more than 100 file types into ISO-compliant, searchable PDF/A formats with full conformance support and veraPDF validation, ideal for automated workflows and high-volume processing.
# **API**
[Read the full API reference](https://www.nutrient.io/api/gdpicture/).
# **Changelog**
For a detailed list of the changes included in each version, refer to the [changelog](https://www.nutrient.io/changelog/dotnet/).
# **License**
When you integrate [GdPicture.NET](https://www.nutrient.io/guides/dotnet/) into your application, a trial license is activated automatically, meaning there's no need for a license key. This trial license provides the following:
- **Support**: Access to [technical support](https://support.pspdfkit.com/hc/en-us/requests/new) is included.
- **Watermarking**: A prominent watermark (text overlay) will appear on all documents.
- **Trial Notifications**: Regular reminders indicating that the product is in trial mode.
For a comprehensive evaluation, please [contact our Sales team](https://www.nutrient.io/contact-sales) to request a demo license key. This demo license enables you to explore our product for a 60-day period without watermarks or trial notifications.
Copyright 2025 Nutrient. All rights reserved.
[Docuvieware](https://www.notion.so/Docuvieware-176e1255d6bc804795efc99e27b5eb7f?pvs=21)
[GdPicture](https://www.notion.so/GdPicture-176e1255d6bc80928cb2e867d335e267?pvs=21)

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff