public static extern bool XeRunServer( UnmanagedPointers.NotifyServerProgressChangedServer NotifyServerProgressChangedStub, UnmanagedPointers.NotifyServerLogOutputServer NotifyServerLogOutputStub, UnmanagedPointers.NotifyServerUIReadyServer NotifyServerUIReadyStub, UnmanagedPointers.NotifyServerMessageBoxServer NotifyServerMessageBoxStub, UnmanagedPointers.NotifyServerTaskStartAndDisableUIServer NotifyServerTaskStartAndDisableUIStub, UnmanagedPointers.NotifyServerTaskEndAndEnableUIServer NotifyServerTaskEndAndEnableUIStub, UnmanagedPointers.NotifyServerExitFromRemoteProcessServer NotifyServerExitFromRemoteProcessStub, UnmanagedPointers.NotifyServerRaiseErrorServer NotifyServerRaiseErrorStub );
public static bool XeRunServer( UnmanagedPointers.NotifyServerProgressChangedServer NotifyServerProgressChangedStub, UnmanagedPointers.NotifyServerLogOutputServer NotifyServerLogOutputStub, UnmanagedPointers.NotifyServerUIReadyServer NotifyServerUIReadyStub, UnmanagedPointers.NotifyServerMessageBoxServer NotifyServerMessageBoxStub, UnmanagedPointers.NotifyServerTaskStartAndDisableUIServer NotifyServerTaskStartAndDisableUIStub, UnmanagedPointers.NotifyServerTaskEndAndEnableUIServer NotifyServerTaskEndAndEnableUIStub, UnmanagedPointers.NotifyServerExitFromRemoteProcessServer NotifyServerExitFromRemoteProcessStub, UnmanagedPointers.NotifyServerRaiseErrorServer NotifyServerRaiseErrorStub ) { switch (RuntimeInformation.ProcessArchitecture) { case Architecture.X86: return(Client32.XeRunServer( NotifyServerProgressChangedStub, NotifyServerLogOutputStub, NotifyServerUIReadyStub, NotifyServerMessageBoxStub, NotifyServerTaskStartAndDisableUIStub, NotifyServerTaskEndAndEnableUIStub, NotifyServerExitFromRemoteProcessStub, NotifyServerRaiseErrorStub )); case Architecture.X64: return(Client64.XeRunServer( NotifyServerProgressChangedStub, NotifyServerLogOutputStub, NotifyServerUIReadyStub, NotifyServerMessageBoxStub, NotifyServerTaskStartAndDisableUIStub, NotifyServerTaskEndAndEnableUIStub, NotifyServerExitFromRemoteProcessStub, NotifyServerRaiseErrorStub )); case Architecture.Arm64: return(ClientAarch64.XeRunServer( NotifyServerProgressChangedStub, NotifyServerLogOutputStub, NotifyServerUIReadyStub, NotifyServerMessageBoxStub, NotifyServerTaskStartAndDisableUIStub, NotifyServerTaskEndAndEnableUIStub, NotifyServerExitFromRemoteProcessStub, NotifyServerRaiseErrorStub )); case Architecture.Arm: throw new NotImplementedException("Unsupported arch : Arm"); } throw new NotImplementedException("Unsupported arch : Unknown"); }
private void InitializationUIServerCallbacks() { m_NotifyServerProgressChangedCallback = (string TaskName, UInt64 Current, UInt64 Total) => { NotifyServerProgressChangedWorker(TaskName, Current, Total); }; m_NotifyServerLogOutputCallback = (LogLevel Level, string LogInfo, bool IsCmd) => { NotifyServerLogOutputWorker(Level, LogInfo, IsCmd); }; m_NotifyServerUIReadyCallback = () => { NotifyServerUIReadyWorker(); }; m_NotifyServerMessageBoxCallback = (string Info, UInt32 Flags, bool Locked) => { NotifyServerMessageBoxWorker(Info, Flags, Locked); }; m_NotifyServerTaskStartAndDisableUICallback = () => { NotifyServerTaskStartAndDisableUIWorker(); }; m_NotifyServerTaskEndAndEnableUICallback = (bool TaskCompleteStatus, string Description) => { NotifyServerTaskEndAndEnableUIWorker(TaskCompleteStatus, Description); }; m_NotifyServerExitFromRemoteProcessCallback = () => { NotifyServerExitFromRemoteProcessWorker(); }; m_NotifyServerRaiseErrorCallback = (RaiseErrorType ErrorType, string Error) => { return(NotifyServerRaiseErrorWorker(ErrorType, Error)); }; }