jj: PDF Exchange Viewer Pfad ändern -> fenster nicht anklickbar

This commit is contained in:
Jonathan Jenne 2018-05-24 13:46:42 +02:00
parent bca59c1be0
commit 3f0835a775

View File

@ -182,26 +182,18 @@ Public Class frmValidator
End Try
End Sub
Private Function process_User_exists(processname As String, Status As String)
Dim fi = New FileInfo(processname)
Dim filename As String = fi.Name.Replace(fi.Extension, "")
Try
Dim selectQuery As SelectQuery = New SelectQuery("Win32_Process")
Dim searcher As ManagementObjectSearcher = New ManagementObjectSearcher(selectQuery)
For Each proc As ManagementObject In searcher.Get
If proc("Name").ToString.ToLower = processname.ToLower Then
Dim s(1) As String
proc.InvokeMethod("GetOwner", CType(s, Object()))
If CStr(s(0)).ToLower.Contains(Environment.UserName.ToLower) Then
Return True
End If
End If
Next
Return False
Catch ex As Exception
If Status = "CLOSE" Then
Return False
Else
'ClassLogger.Add(">> Fehler in process_User_exists " & Status & ": " & ex.Message, True)
If Process.GetProcessesByName(filename).Length > 0 Then
Return True
Else
Return False
End If
Catch ex As Exception
ClassLogger.Add(">> Fehler in process_User_exists: " & ex.Message, True)
Return False
End Try
End Function
Private Function process_terminate(processname As String)
@ -1340,7 +1332,7 @@ Public Class frmValidator
End Function
Sub Open_PDFXCHANGE(AktuelleIndexfile As String)
Try
Dim Proc As New System.Diagnostics.Process
Dim Proc As New Process
Dim psi As New ProcessStartInfo(PDFXChangeViewer, """" & AktuelleIndexfile & """")
psi.WindowStyle = ProcessWindowStyle.Minimized
Proc.EnableRaisingEvents = True
@ -1348,9 +1340,9 @@ Public Class frmValidator
Proc.StartInfo = psi
Proc.Start()
Do While process_User_exists("PDFXCview.exe", "START") = False
Do While process_User_exists(PDFXChangeViewer, "START") = False
'Warten bis PDF geladen ist
System.Threading.Thread.Sleep(500)
Thread.Sleep(500)
Loop
Catch ex As Exception
MsgBox(ex.Message, MsgBoxStyle.Critical, "Fehler in Open_PDFXCHANGE:")
@ -2758,6 +2750,13 @@ Public Class frmValidator
Case "System.Windows.Forms.CheckBox"
Dim chk As CheckBox = inctrl
input = chk.Checked.ToString
If chk.Checked = False And _MUSSEINGABE = True Then
missing = True
errmessage = "Option '" & chk.Name & "' is required."
Exit For
End If
'den aktuellen Wert in windream auslesen
Dim WertWD As String
Dim Bool_WD As Boolean
@ -2789,6 +2788,8 @@ Public Class frmValidator
End If
' Dim Bool_WD = CBool(aktivesDokument.GetVariableValue(_IDXName))
'wenn Wert in Windream <> der Eingabe darf indexiert werden
If Bool_WD <> chk.Checked Then