* * You should have received a copy of the GNU General Public License * along with Process Hacker. If not, see <http://www.gnu.org/licenses/>. */ #include <ph.h> #include <subprocesstag.h> #include <svcsup.h> #define SIP(String, Integer) { (String), (PVOID)(Integer) } static PH_KEY_VALUE_PAIR PhpServiceStatePairs[] = { SIP(L"Stopped", SERVICE_STOPPED), SIP(L"Start pending", SERVICE_START_PENDING), SIP(L"Stop pending", SERVICE_STOP_PENDING), SIP(L"Running", SERVICE_RUNNING), SIP(L"Continue pending", SERVICE_CONTINUE_PENDING), SIP(L"Pause pending", SERVICE_PAUSE_PENDING), SIP(L"Paused", SERVICE_PAUSED) }; static PH_KEY_VALUE_PAIR PhpServiceTypePairs[] = { SIP(L"Driver", SERVICE_KERNEL_DRIVER), SIP(L"FS driver", SERVICE_FILE_SYSTEM_DRIVER), SIP(L"Own process", SERVICE_WIN32_OWN_PROCESS), SIP(L"Share process", SERVICE_WIN32_SHARE_PROCESS), SIP(L"Own interactive process", SERVICE_WIN32_OWN_PROCESS | SERVICE_INTERACTIVE_PROCESS),
VOID PhSetDesktopWinStaAccess( VOID ); VOID PhpSplitUserName( _In_ PWSTR UserName, _Out_ PPH_STRING *DomainPart, _Out_ PPH_STRING *UserPart ); #define SIP(String, Integer) { (String), (PVOID)(Integer) } static PH_KEY_VALUE_PAIR PhpLogonTypePairs[] = { SIP(L"Batch", LOGON32_LOGON_BATCH), SIP(L"Interactive", LOGON32_LOGON_INTERACTIVE), SIP(L"Network", LOGON32_LOGON_NETWORK), SIP(L"New credentials", LOGON32_LOGON_NEW_CREDENTIALS), SIP(L"Service", LOGON32_LOGON_SERVICE) }; static WCHAR RunAsOldServiceName[32] = L""; static PH_QUEUED_LOCK RunAsOldServiceLock = PH_QUEUED_LOCK_INIT; static PPH_STRING RunAsServiceName; static SERVICE_STATUS_HANDLE RunAsServiceStatusHandle; static PHSVC_STOP RunAsServiceStop; VOID PhShowRunAsDialog( _In_ HWND ParentWindowHandle,
#include <phapp.h> #include <winsta.h> #include <ws2tcpip.h> INT_PTR CALLBACK PhpSessionPropertiesDlgProc( _In_ HWND hwndDlg, _In_ UINT uMsg, _In_ WPARAM wParam, _In_ LPARAM lParam ); #define SIP(String, Integer) { (String), (PVOID)(Integer) } static PH_KEY_VALUE_PAIR PhpConnectStatePairs[] = { SIP(L"Active", State_Active), SIP(L"Connected", State_Connected), SIP(L"ConnectQuery", State_ConnectQuery), SIP(L"Shadow", State_Shadow), SIP(L"Disconnected", State_Disconnected), SIP(L"Idle", State_Idle), SIP(L"Listen", State_Listen), SIP(L"Reset", State_Reset), SIP(L"Down", State_Down), SIP(L"Init", State_Init) }; VOID PhShowSessionProperties( _In_ HWND ParentWindowHandle, _In_ ULONG SessionId )
* but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with Process Hacker. If not, see <http://www.gnu.org/licenses/>. */ #include <ph.h> #include <winmisc.h> #define SIP(String, Integer) { (String), (PVOID)(Integer) } static PH_KEY_VALUE_PAIR PhpServiceStatePairs[] = { SIP(L"Stopped", SERVICE_STOPPED), SIP(L"Start Pending", SERVICE_START_PENDING), SIP(L"Stop Pending", SERVICE_STOP_PENDING), SIP(L"Running", SERVICE_RUNNING), SIP(L"Continue Pending", SERVICE_CONTINUE_PENDING), SIP(L"Pause Pending", SERVICE_PAUSE_PENDING), SIP(L"Paused", SERVICE_PAUSED) }; static PH_KEY_VALUE_PAIR PhpServiceTypePairs[] = { SIP(L"Driver", SERVICE_KERNEL_DRIVER), SIP(L"FS Driver", SERVICE_FILE_SYSTEM_DRIVER), SIP(L"Own Process", SERVICE_WIN32_OWN_PROCESS), SIP(L"Share Process", SERVICE_WIN32_SHARE_PROCESS), SIP(L"Own Interactive Process", SERVICE_WIN32_OWN_PROCESS | SERVICE_INTERACTIVE_PROCESS),
ULONG OriginalLaunchProtected; } SERVICE_OTHER_CONTEXT, *PSERVICE_OTHER_CONTEXT; #define SIP(String, Integer) { (String), (PVOID)(Integer) } BOOLEAN EspChangeServiceConfig2( _In_ PWSTR ServiceName, _In_opt_ SC_HANDLE ServiceHandle, _In_ ULONG InfoLevel, _In_ PVOID Info ); static PH_KEY_VALUE_PAIR EspServiceSidTypePairs[] = { SIP(L"None", SERVICE_SID_TYPE_NONE), SIP(L"Restricted", SERVICE_SID_TYPE_RESTRICTED), SIP(L"Unrestricted", SERVICE_SID_TYPE_UNRESTRICTED) }; static PH_KEY_VALUE_PAIR EspServiceLaunchProtectedPairs[] = { SIP(L"None", SERVICE_LAUNCH_PROTECTED_NONE), SIP(L"Full (Windows)", SERVICE_LAUNCH_PROTECTED_WINDOWS), SIP(L"Light (Windows)", SERVICE_LAUNCH_PROTECTED_WINDOWS_LIGHT), SIP(L"Light (Antimalware)", SERVICE_LAUNCH_PROTECTED_ANTIMALWARE_LIGHT) }; WCHAR *EspServiceSidTypeStrings[3] = { L"None", L"Restricted", L"Unrestricted" }; WCHAR *EspServiceLaunchProtectedStrings[4] = { L"None", L"Full (Windows)", L"Light (Windows)", L"Light (Antimalware)" };
* GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with Process Hacker. If not, see <http://www.gnu.org/licenses/>. */ #include <phapp.h> #include <settings.h> #include <windowsx.h> #include <winsta.h> #define SIP(String, Integer) { (String), (PVOID)(Integer) } static PH_KEY_VALUE_PAIR VirtualKeyPairs[] = { SIP(L"0", '0'), SIP(L"1", '1'), SIP(L"2", '2'), SIP(L"3", '3'), SIP(L"4", '4'), SIP(L"5", '5'), SIP(L"6", '6'), SIP(L"7", '7'), SIP(L"8", '8'), SIP(L"9", '9'), SIP(L"A", 'A'), SIP(L"B", 'B'), SIP(L"C", 'C'), SIP(L"D", 'D'), SIP(L"E", 'E'), SIP(L"F", 'F'),
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with Process Hacker. If not, see <http://www.gnu.org/licenses/>. */ #include <phapp.h> #include <windowsx.h> #include <winsta.h> #define SIP(String, Integer) { (String), (PVOID)(Integer) } static PH_KEY_VALUE_PAIR PhpMessageBoxIconPairs[] = { SIP(L"None", 0), SIP(L"Information", MB_ICONINFORMATION), SIP(L"Warning", MB_ICONWARNING), SIP(L"Error", MB_ICONERROR), SIP(L"Question", MB_ICONQUESTION) }; INT_PTR CALLBACK PhpSessionSendMessageDlgProc( _In_ HWND hwndDlg, _In_ UINT uMsg, _In_ WPARAM wParam, _In_ LPARAM lParam ); VOID PhShowSessionSendMessageDialog( _In_ HWND ParentWindowHandle,
PPH_SERVICE_ITEM ServiceItem; ULONG NumberOfActions; BOOLEAN EnableFlagCheckBox; ULONG RebootAfter; // in ms PPH_STRING RebootMessage; BOOLEAN Ready; BOOLEAN Dirty; } SERVICE_RECOVERY_CONTEXT, *PSERVICE_RECOVERY_CONTEXT; #define SIP(String, Integer) { (String), (PVOID)(Integer) } static PH_KEY_VALUE_PAIR ServiceActionPairs[] = { SIP(L"Take no action", SC_ACTION_NONE), SIP(L"Restart the service", SC_ACTION_RESTART), SIP(L"Run a program", SC_ACTION_RUN_COMMAND), SIP(L"Restart the computer", SC_ACTION_REBOOT) }; INT_PTR CALLBACK RestartComputerDlgProc( _In_ HWND hwndDlg, _In_ UINT uMsg, _In_ WPARAM wParam, _In_ LPARAM lParam ); VOID EspAddServiceActionStrings( _In_ HWND ComboBoxHandle )