Notes
Slide Show
Outline
1
Selected Citrix Support Tools

(updated 01 April 08)
  • Dmitry Vostokov
  • EMEA Development Analysis Team Global Escalation Team


2
Contents
  • Crash dump tools
  • GUI troubleshooting tools
  • Printing tools
  • Miscellaneous tools



3
Crash Dump Tools
  • TestDefaultDebugger
  • TestDefaultDebugger.NET
  • SystemDump
  • DumpCheck
  • PDBFinder
4
TestDefaultDebugger
  • http://support.citrix.com/article/CTX11191


  • 32-bit and 64-bit
5
TestDefaultDebugger.NET
  • http://support.citrix.com/article/CTX11191
6
SystemDump
  • http://support.citrix.com/article/CTX111072
  • Can force a server to generate a memory dump from the session or when a keyboard is not available or non-standard. Command line options allow to generate a dump from command files and/or remotely when a console session is not available (for example, IBM blade servers).
  • Note: Whether the complete memory or a kernel memory dump is saved depends on the Control Panel settings.
  • Features:
  • A customer can type a message/text (or copy it from clipboard) before forcing a memory dump. This message is saved in a dump and a support engineer can read it after loading the dump in WinDbg.exe. This is implemented to encourage writing the symptoms and conditions explaining why the dump has to be forced.
  • The tool can stay on top of any window (if you need this to quickly dump the server after a repro or during the process of an activity).
  • The bug check clearly shows that the dump is manually generated.
  • The tool can force a memory dump on both 32-bit and 64-bit platforms.
  • Before forcing a fatal error on a server, the tool warns about potential damaging consequences: Users are disconnected and all the data which is not saved will be lost. It asks for a confirmation.
  • A customer can specify a period of time (in minutes) when to force a memory dump.
7
SystemDump (…)
8
DumpCheck
  • Explorer extension
  • http://support.citrix.com/article/CTX108825
  • Command line version
  • http://support.citrix.com/article/CTX108890


  • Helps to check dump type before sending it:


  • User memory dump
  • User mini dump
  • Complete memory dump
  • Kernel memory dump
  • Kernel mini dump


9
DumpCheck (…)
10
DumpCheck (……)
  • Future version will:


  • Have an extension for 64-bit IE
  • Merge explorer extension and command line version  together to avoid problems with earlier MS debug engine versions
  • Show a process name for user dump
  • Show various flags like whether full page heap was enabled or not
  • Allow to specify symbol file path
11
PDBFinder
  • http://support.citrix.com/article/CTX110629


  • Maps module name and date to its location
  • Can be used for hot fix identification
  • FixFinder feature helps to find newer modules
  • Fully configurable OS and language search options (version 4.0)


12
PDBFinder (…)
13
GUI Troubleshooting Tools
  • Intro: Windows
  • WindowHistory
  • CtxHideEx32
  • Intro: Messages
  • RepairCBDChain
  • Intro: Message processing
  • MessageHistory
14
Intro: Windows
15
WindowHistory
  • http://support.citrix.com/article/CTX106985
  • http://support.citrix.com/article/CTX109235 (64-bit)
  • http://support.citrix.com/article/CTX110775 (Mobile)
16
WindowHistory (…)
17
WindowHistory (……)
  • Handle: 000505B4 Class: "Notepad" Title: "Untitled - Notepad"
  •    Captured at: 21:55:14:633
  •    Process ID: 908
  •    Thread ID: a8
  •    Parent: 0
  •    Screen position (l,t,r,b): (302,277,712,644)
  •         Position changed at 21:55:16:926 to  (l,t,r,b): (-4,-4,1028,772)
  •         Position changed at 21:55:19:790 to  (l,t,r,b): (-32000,-32000,-31840,-31976)
  •         Position changed at 21:55:24:607 to  (l,t,r,b): (-4,-4,1028,772)
  •         Position changed at 21:55:26:259 to  (l,t,r,b): (302,277,712,644)
  •    Visible: true
  •    Window placement command: SW_SHOWNORMAL
  •         Placement changed at 21:55:16:926 to SW_SHOWMAXIMIZED
  •         Placement changed at 21:55:19:790 to SW_SHOWMINIMIZED
  •         Placement changed at 21:55:24:607 to SW_SHOWMAXIMIZED
  •         Placement changed at 21:55:26:259 to SW_SHOWNORMAL
  •    Foreground: true
  •         Foreground changed at 21:55:19:790 to false
  •         Foreground changed at 21:55:24:607 to true
  •         Foreground changed at 21:55:29:965 to false
  •    HungApp: false
  •    Minimized: false
  •         Minimized changed at 21:55:19:790 to true
  •         Minimized changed at 21:55:24:607 to false
  •    Maximized: false
  •         Maximized changed at 21:55:16:926 to true
  •         Maximized changed at 21:55:19:790 to false
  •         Maximized changed at 21:55:24:607 to true
  •         Maximized changed at 21:55:26:259 to false


18
WindowHistory (………)
  •   Window style: WS_BORDER WS_CAPTION WS_CLIPSIBLINGS WS_DLGFRAME WS_GROUP WS_MAXIMIZEBOX WS_MINIMIZEBOX WS_OVERLAPPEDWINDOW WS_POPUPWINDOW WS_SIZEBOX WS_SYSMENU WS_TABSTOP WS_THICKFRAME WS_TILEDWINDOW WS_VISIBLE
  •         Style changed at 21:55:16:926 to WS_BORDER WS_CAPTION WS_CLIPSIBLINGS WS_DLGFRAME WS_GROUP WS_MAXIMIZE WS_MAXIMIZEBOX WS_MINIMIZEBOX WS_OVERLAPPEDWINDOW WS_POPUPWINDOW WS_SIZEBOX WS_SYSMENU WS_TABSTOP WS_THICKFRAME WS_TILEDWINDOW WS_VISIBLE
  •         Style changed at 21:55:19:790 to WS_BORDER WS_CAPTION WS_CLIPSIBLINGS WS_DLGFRAME WS_GROUP WS_ICONIC WS_MAXIMIZEBOX WS_MINIMIZE WS_MINIMIZEBOX WS_OVERLAPPEDWINDOW WS_POPUPWINDOW WS_SIZEBOX WS_SYSMENU WS_TABSTOP WS_THICKFRAME WS_TILEDWINDOW WS_VISIBLE
  •         Style changed at 21:55:24:607 to WS_BORDER WS_CAPTION WS_CLIPSIBLINGS WS_DLGFRAME WS_GROUP WS_MAXIMIZE WS_MAXIMIZEBOX WS_MINIMIZEBOX WS_OVERLAPPEDWINDOW WS_POPUPWINDOW WS_SIZEBOX WS_SYSMENU WS_TABSTOP WS_THICKFRAME WS_TILEDWINDOW WS_VISIBLE
  •         Style changed at 21:55:26:259 to WS_BORDER WS_CAPTION WS_CLIPSIBLINGS WS_DLGFRAME WS_GROUP WS_MAXIMIZEBOX WS_MINIMIZEBOX WS_OVERLAPPEDWINDOW WS_POPUPWINDOW WS_SIZEBOX WS_SYSMENU WS_TABSTOP WS_THICKFRAME WS_TILEDWINDOW WS_VISIBLE
  •    Extended window style: WS_EX_ACCEPTFILES WS_EX_OVERLAPPEDWINDOW WS_EX_PALETTEWINDOW WS_EX_WINDOWEDGE
  •    Relationship (Z-order and owner):
  •       GW_CHILD: 000405C4
  •       GW_HWNDFIRST: 00040032
  •          GW_HWNDFIRST changed at 21:55:24:607 to 0001008A
  •       GW_HWNDLAST: 00010090
  •       GW_HWNDNEXT: 000904C2
  •          GW_HWNDNEXT changed at 21:55:19:790 to 0001009C
  •          GW_HWNDNEXT changed at 21:55:24:607 to 0004057A
  •       GW_HWNDPREV: 000C0502
  •          GW_HWNDPREV changed at 21:55:19:790 to 00090542
  •          GW_HWNDPREV changed at 21:55:24:607 to 000C0502
  •       GW_HWNDOWNER: 00000000


19
WindowHistory (…………)
  •   Child windows:
  •           Handle: 000405C4 Class: "Edit" Title: ""
  •              Captured at: 21:55:14:633
  •              Parent: 505b4
  •              ID: f
  •              Client rectangle (l,t,r,b): (-2,-2,400,319)
  •                   Position changed at 21:55:16:926 to  (l,t,r,b): (-2,-2,1022,728)
  •                   Position changed at 21:55:26:259 to  (l,t,r,b): (-2,-2,400,319)
  •              Visible: true
  •              Window style: WS_CHILD WS_CHILDWINDOW WS_VISIBLE WS_VSCROLL
  •              Extended window style: WS_EX_CLIENTEDGE WS_EX_OVERLAPPEDWINDOW
  •              Relationship (Z-order and owner):
  •                 GW_CHILD: 00000000
  •                 GW_HWNDFIRST: 000405C4
  •                 GW_HWNDLAST: 000505C6
  •                 GW_HWNDNEXT: 000505C6
  •                 GW_HWNDPREV: 00000000
  •                 GW_HWNDOWNER: 00000000
  •           Handle: 000505C6 Class: "msctls_statusbar32" Title: ""
  •              Captured at: 21:55:14:633
  •              Parent: 505b4
  •              ID: 401
  •              Client rectangle (l,t,r,b): (0,0,402,20)
  •                   Position changed at 21:55:16:936 to  (l,t,r,b): (0,0,1024,20)
  •                   Position changed at 21:55:26:259 to  (l,t,r,b): (0,0,402,20)
  •              Visible: false
  •              Window style: WS_CHILD WS_CHILDWINDOW WS_CLIPSIBLINGS
  •              Extended window style:
  •              Relationship (Z-order and owner):
  •                 GW_CHILD: 00000000
  •                 GW_HWNDFIRST: 000405C4
  •                 GW_HWNDLAST: 000505C6
  •                 GW_HWNDNEXT: 00000000
  •                 GW_HWNDPREV: 000405C4
  •                 GW_HWNDOWNER: 00000000
20
CtxHideEx32
  • http://support.citrix.com/article/CTX110341
  • WindowHistory log (hiding and showing Notepad window):


  • Handle: 0004057A Class: "Notepad" Title: "Untitled - Notepad"
  •    Captured at: 22:24:4:710
  •    Process ID: d50
  •    Thread ID: 434
  •    Parent: 0
  •    Screen position (l,t,r,b): (319,322,729,689)
  •    Visible: true
  •         Visibility changed at 22:24:13:383 to false
  •         Visibility changed at 22:24:22:946 to true
  •    Window placement command: SW_SHOWNORMAL
  •    Foreground: false
  •    HungApp: false
  •    Minimized: false
  •    Maximized: false
  •    Window style: WS_BORDER WS_CAPTION WS_CLIPSIBLINGS WS_DLGFRAME WS_GROUP WS_MAXIMIZEBOX WS_MINIMIZEBOX WS_OVERLAPPEDWINDOW WS_POPUPWINDOW WS_SIZEBOX WS_SYSMENU WS_TABSTOP WS_THICKFRAME WS_TILEDWINDOW WS_VISIBLE
  •         Style changed at 22:24:13:383 to WS_BORDER WS_CAPTION WS_CLIPSIBLINGS WS_DLGFRAME WS_GROUP WS_MAXIMIZEBOX WS_MINIMIZEBOX WS_OVERLAPPEDWINDOW WS_POPUPWINDOW WS_SIZEBOX WS_SYSMENU WS_TABSTOP WS_THICKFRAME WS_TILEDWINDOW
  •         Style changed at 22:24:22:946 to WS_BORDER WS_CAPTION WS_CLIPSIBLINGS WS_DLGFRAME WS_GROUP WS_MAXIMIZEBOX WS_MINIMIZEBOX WS_OVERLAPPEDWINDOW WS_POPUPWINDOW WS_SIZEBOX WS_SYSMENU WS_TABSTOP WS_THICKFRAME WS_TILEDWINDOW WS_VISIBLE
  •    Extended window style: WS_EX_ACCEPTFILES WS_EX_OVERLAPPEDWINDOW WS_EX_PALETTEWINDOW WS_EX_WINDOWEDGE


21
Intro: Messages
  • Message ID (WM_xxx, EM_xxx, LB_xxx, …)
  • 2 parameters (wParam and lParam)


  • Example (from MSDN): WM_LBUTTONDOWN


  • wParam


  • MK_CONTROL   The CTRL key is down.
  • MK_LBUTTON    The left mouse button is down.
  • MK_MBUTTON    The middle mouse button is down.
  • MK_RBUTTON    The right mouse button is down.
  • MK_SHIFT           The SHIFT key is down.


  • lParam


  • The low-order word specifies the x-coordinate of the cursor. The coordinate is relative to the upper-left corner of the client area.
  • The high-order word specifies the y-coordinate of the cursor. The coordinate is relative to the upper-left corner of the client area.


  • Note: MessageHistory unpacks parameters for some messages like keyboard and mouse and shows them in user-friendly manner


22
RepairCBDChain
  • http://support.citrix.com/article/CTX106226
  • http://support.citrix.com/article/CTX109234 (64-bit)


  • Immediately restores clipboard functionality on client and server.


  • This has been already implemented on client side (not activated by default):


  • Occasionally, copying content from the client device and pasting it in a published application fails. The issue is caused by a third party application that prevents the client from receiving notification when new content was copied to the local clipboard.


  • This fix introduces support for a mechanism to check at periodic intervals the client's ability to receive clipboard change notifications. If the mechanism finds the client unable to receive such notifications, the client attempts to register itself to receive future notifications. To enable this functionality, you must modify users' appsrv.ini files as follows:


    • Open the appsrv.ini file located in the user profile directory using a text editor.
    • In the [WFClient] section, locate or add the entry:


    • CbChainInterval=<value>, where value is the interval, in milliseconds, at which checks are to be performed. Supported values range from 0 to 2,000, inclusive.
    • Note: The detection takes at least twice the amount of time specified in this setting.


    • Save your changes and close the file.


  • [From 9.100][#112636]
23
RepairCBDChain (…)
24
RepairCBDChain (……)
25
RepairCBDChain (………)
26
RepairCBDChain (…………)
27
RepairCBDChain (……………)
28
RepairCBDChain (………………)
29
RepairCBDChain (…………………)
30
Intro: Message Processing
  • Synchronous: window sends a message to itself or another window and waits for a return (SendMessage)
  • Asynchronous: window posts a message to itself or another window and continues to execute its own code (PostMessage)
31
Intro: Message Processing (…)
32
MessageHistory
  • http://support.citrix.com/article/CTX111408


33
MessageHistory (…)
  • PID.TID: c20.c0c


  • HWND: 0x002501D4
  • Class: "wMFService006600CA004"
  • Title: "Microsoft Outlook7718 - MetaFrame Presentation Server Client [SpeedScreen On]"
  • 17:58:53:671 S WM_WINDOWPOSCHANGING (0x46) wParam: 0x0 lParam: 0x12ef6c
  • 17:58:53:671 S WM_WINDOWPOSCHANGING (0x46) wParam: 0x0 lParam: 0x12ef58


  • HWND: 0x003F08DC
  • Class: "Transparent Windows Client"
  • Title: "^P ^b24 of 24 - Clipboard^b^SItem collected. - \\Remote"
  • 17:58:53:671 S WM_NCCREATE (0x81) wParam: 0x0 lParam: 0x12ea78
  • 17:58:53:671 S WM_NCCALCSIZE (0x83) wParam: 0x0 lParam: 0x12ea64
  • 17:58:53:671 S WM_CREATE (0x1) wParam: 0x0 lParam: 0x12ea78
  • 17:58:53:671 S WM_SIZE (0x5) wParam: 0x0 lParam: 0x230087 SIZE_RESTORED Width/Height (client area): 135/35
  • 17:58:53:671 S WM_MOVE (0x3) wParam: 0x0 lParam: 0x48b05b7 Left/Top: 1463/1163
  • 17:58:53:671 S WM_SHOWWINDOW (0x18) wParam: 0x1 lParam: 0x0 Window in being shown
  • 17:58:53:671 S WM_WINDOWPOSCHANGING (0x46) wParam: 0x0 lParam: 0x12ef6c
  • 17:58:53:671 S WM_WINDOWPOSCHANGED (0x47) wParam: 0x0 lParam: 0x12ef6c
  • 17:58:53:671 S WM_WINDOWPOSCHANGING (0x46) wParam: 0x0 lParam: 0x12ef58


  • HWND: 0x004E0332
  • Class: "WFClip"
  • Title: "WFClip"
  • 17:58:53:484 S WM_DRAWCLIPBOARD (0x308) wParam: 0xd0aa0 lParam: 0x0


  • HWND: 0x0094036E
  • Class: "TWI Link"
  • Title: ""
  • 17:58:53:671 S WM_WINDOWPOSCHANGING (0x46) wParam: 0x0 lParam: 0x12ef6c
  • 17:58:53:671 S WM_WINDOWPOSCHANGING (0x46) wParam: 0x0 lParam: 0x12ef58
34
MessageHistory (……)
  • 18:8:3:125 P WM_KEYDOWN (0x100) wParam: 0x10 lParam: 0x2a0001 Virtual key code: VK_SHIFT Previous key state: "up before" Repeat count: 1 Scan code: 0x2a
  • 18:8:3:359 P WM_KEYDOWN (0x100) wParam: 0x48 lParam: 0x230001 Virtual key code: VK_H Previous key state: "up before" Repeat count: 1 Scan code: 0x23
  • 18:8:3:359 P WM_CHAR (0x102) wParam: 0x48 lParam: 0x230001 Character code: 0x48 'H'  Previous key state: "up before" Transition state: "pressed" Repeat count: 1 Scan code: 0x23
  • 18:8:3:437 P WM_KEYUP (0x101) wParam: 0x48 lParam: 0xc0230001 Virtual key code: VK_H Repeat count: 1 Scan code: 0x23
  • 18:8:3:484 P WM_KEYUP (0x101) wParam: 0x10 lParam: 0xc02a0001 Virtual key code: VK_SHIFT Repeat count: 1 Scan code: 0x2a
  • 18:8:3:578 P WM_KEYDOWN (0x100) wParam: 0x45 lParam: 0x120001 Virtual key code: VK_E Previous key state: "up before" Repeat count: 1 Scan code: 0x12
  • 18:8:3:578 P WM_CHAR (0x102) wParam: 0x65 lParam: 0x120001 Character code: 0x65 'e'  Previous key state: "up before" Transition state: "pressed" Repeat count: 1 Scan code: 0x12
  • 18:14:34:46 P WM_KEYUP (0x101) wParam: 0x45 lParam: 0xc0120001 Virtual key code: VK_E Repeat count: 1 Scan code: 0x12
  • 18:8:3:812 P WM_KEYDOWN (0x100) wParam: 0x4c lParam: 0x260001 Virtual key code: VK_L Previous key state: "up before" Repeat count: 1 Scan code: 0x26
  • 18:8:3:812 P WM_CHAR (0x102) wParam: 0x6c lParam: 0x260001 Character code: 0x6c 'l'  Previous key state: "up before" Transition state: "pressed" Repeat count: 1 Scan code: 0x26
  • 18:8:3:890 P WM_KEYUP (0x101) wParam: 0x4c lParam: 0xc0260001 Virtual key code: VK_L Repeat count: 1 Scan code: 0x26
  • 18:8:3:968 P WM_KEYDOWN (0x100) wParam: 0x4c lParam: 0x260001 Virtual key code: VK_L Previous key state: "up before" Repeat count: 1 Scan code: 0x26
  • 18:8:3:968 P WM_CHAR (0x102) wParam: 0x6c lParam: 0x260001 Character code: 0x6c 'l'  Previous key state: "up before" Transition state: "pressed" Repeat count: 1 Scan code: 0x26
  • 18:8:4:46 P WM_KEYUP (0x101) wParam: 0x4c lParam: 0xc0260001 Virtual key code: VK_L Repeat count: 1 Scan code: 0x26
  • 18:8:4:125 P WM_KEYDOWN (0x100) wParam: 0x4f lParam: 0x180001 Virtual key code: VK_O Previous key state: "up before" Repeat count: 1 Scan code: 0x18
  • 18:8:4:125 P WM_CHAR (0x102) wParam: 0x6f lParam: 0x180001 Character code: 0x6f 'o'  Previous key state: "up before" Transition state: "pressed" Repeat count: 1 Scan code: 0x18
  • 18:8:4:203 P WM_KEYUP (0x101) wParam: 0x4f lParam: 0xc0180001 Virtual key code: VK_O Repeat count: 1 Scan code: 0x18
  • 18:8:4:250 P WM_KEYDOWN (0x100) wParam: 0x10 lParam: 0x2a0001 Virtual key code: VK_SHIFT Previous key state: "up before" Repeat count: 1 Scan code: 0x2a
  • 18:8:4:453 P WM_KEYDOWN (0x100) wParam: 0x31 lParam: 0x20001 Virtual key code: VK_1 Previous key state: "up before" Repeat count: 1 Scan code: 0x2
  • 18:8:4:453 P WM_CHAR (0x102) wParam: 0x21 lParam: 0x20001 Character code: 0x21 '!'  Previous key state: "up before" Transition state: "pressed" Repeat count: 1 Scan code: 0x2
  • 18:8:4:562 P WM_KEYUP (0x101) wParam: 0x31 lParam: 0xc0020001 Virtual key code: VK_1 Repeat count: 1 Scan code: 0x2
  • 18:8:4:593 P WM_KEYUP (0x101) wParam: 0x10 lParam: 0xc02a0001 Virtual key code: VK_SHIFT Repeat count: 1 Scan code: 0x2a
  • 18:8:5:890 P WM_KEYDOWN (0x100) wParam: 0xd lParam: 0x1c0001 Virtual key code: VK_RETURN Previous key state: "up before" Repeat count: 1 Scan code: 0x1c
  • 18:8:5:890 P WM_CHAR (0x102) wParam: 0xd lParam: 0x1c0001 Character code: 0xd '
  • '  Previous key state: "up before" Transition state: "pressed" Repeat count: 1 Scan code: 0x1c
  • 18:8:5:968 P WM_KEYUP (0x101) wParam: 0xd lParam: 0xc01c0001 Virtual key code: VK_RETURN Repeat count: 1 Scan code: 0x1c
  • 18:8:6:437 P 0x118 wParam: 0xffff lParam: 0xfffff97fff114360
  • 18:8:6:484 P WM_KEYDOWN (0x100) wParam: 0x90 lParam: 0x1450001 Virtual key code: VK_NUMLOCK Previous key state: "up before" Extended key Repeat count: 1 Scan code: 0x45
  • 18:8:6:578 P WM_KEYUP (0x101) wParam: 0x90 lParam: 0xc1450001 Virtual key code: VK_NUMLOCK Extended key Repeat count: 1 Scan code: 0x45
  • 18:8:6:968 P 0x118 wParam: 0xffff lParam: 0xfffff97fff114360
  • 18:8:7:156 P WM_KEYDOWN (0x100) wParam: 0x90 lParam: 0x1450001 Virtual key code: VK_NUMLOCK Previous key state: "up before" Extended key Repeat count: 1 Scan code: 0x45
  • 18:8:7:218 P WM_KEYUP (0x101) wParam: 0x90 lParam: 0xc1450001 Virtual key code: VK_NUMLOCK Extended key Repeat count: 1 Scan code: 0x45
35
MessageHistory (………)




  • Bulk messages sorted by time:



  • 1:42:45:317 S PID: e80 TID: ea8 HWND: 0x000E0480  Class: "Notepad" Title: "Untitled - Notepad" WM_ACTIVATEAPP (0x1c) wParam: 0x1 lParam: 0x7b8 Activated / TID of deactivated window: 0x7b8
  • 1:42:45:317 S PID: e80 TID: ea8 HWND: 0x000E0480  Class: "Notepad" Title: "Untitled - Notepad" WM_NCACTIVATE (0x86) wParam: 0x1 lParam: 0x0
  • 1:42:45:317 S PID: e80 TID: ea8 HWND: 0x000E0480  Class: "Notepad" Title: "Untitled - Notepad" WM_ACTIVATE (0x6) wParam: 0x1 lParam: 0x0 WA_ACTIVE  Window deactivated: 0x0
  • 1:42:45:317 S PID: e80 TID: ea8 HWND: 0x000E0480  Class: "Notepad" Title: "Untitled - Notepad" WM_SETFOCUS (0x7) wParam: 0x0 lParam: 0x0 Window which has lost focus: 0x0
  • 1:42:45:317 S PID: c18 TID: 7b8 HWND: 0x00040554  Class: "Button" Title: "&Start" WM_NCHITTEST (0x84) wParam: 0x0 lParam: 0xd80139
  • 1:42:45:317 S PID: c18 TID: 7b8 HWND: 0x00040554  Class: "Button" Title: "&Start" WM_SETCURSOR (0x20) wParam: 0x40554 lParam: 0x2000001
  • 1:42:45:317 S PID: c18 TID: 7b8 HWND: 0x000704B4  Class: "#32770" Title: "MessageHistory" WM_SETCURSOR (0x20) wParam: 0x40554 lParam: 0x2000001
  • 1:42:45:317 S PID: e80 TID: ea8 HWND: 0x000E0480  Class: "Notepad" Title: "Untitled - Notepad" WM_KILLFOCUS (0x8) wParam: 0x20580 lParam: 0x0 Window which receives focus: 0x20580
  • 1:42:45:317 S PID: e80 TID: ea8 HWND: 0x00020580  Class: "Edit" Title: "" WM_KILLFOCUS (0x8) wParam: 0x20580 lParam: 0x0 Window which receives focus: 0x20580
  • 1:42:45:317 S PID: e80 TID: ea8 HWND: 0x000E0480  Class: "Notepad" Title: "Untitled - Notepad" WM_COMMAND (0x111) wParam: 0x200000f lParam: 0x20580 ID: 0xf
  • 1:42:45:317 S PID: e80 TID: ea8 HWND: 0x00020580  Class: "Edit" Title: "" WM_SETFOCUS (0x7) wParam: 0xe0480 lParam: 0x0 Window which has lost focus: 0xe0480
  • 1:42:45:317 S PID: e80 TID: ea8 HWND: 0x000E0480  Class: "Notepad" Title: "Untitled - Notepad" WM_COMMAND (0x111) wParam: 0x100000f lParam: 0x20580 ID: 0xf
  • 1:42:45:427 S PID: 328 TID: 3f4 HWND: 0x0001007E  Class: "CiceroUIWndFrame" Title: "TF_FloatingLangBar_WndTitle" WM_WINDOWPOSCHANGING (0x46) wParam: 0x0 lParam: 0xc4fce8
  • 1:42:45:858 S PID: 77c TID: 780 HWND: 0x000101E2  Class: "Static" Title: " " WM_GETTEXT (0xd) wParam: 0x100 lParam: 0x12e3c0
  • 1:42:45:858 S PID: 77c TID: 780 HWND: 0x000101E8  Class: "Static" Title: " " WM_GETTEXT (0xd) wParam: 0x100 lParam: 0x12e3c0
  • 1:42:45:858 S PID: 77c TID: 780 HWND: 0x000101E0  Class: "Static" Title: "No Link" WM_GETTEXT (0xd) wParam: 0x100 lParam: 0x12e3c0
  • 1:42:45:858 S PID: 77c TID: 780 HWND: 0x000101EA  Class: "Static" Title: "" WM_GETTEXT (0xd) wParam: 0x100 lParam: 0x12e3c0





  • Forthcoming version 2.1 will have 64-bit version capable of capturing messages from both 32-bit and 64-bit windows
36
Printing tools
  • StressPrinters



37
StressPrinters
  • StressPrinters for 32-bit and 64-bit platforms
  • http://support.citrix.com/article/CTX109374


38
StressPrinters (…)
39
Miscellaneous tools
  • ADSCleaner



40
ADSCleaner
  • http://support.citrix.com/article/CTX108542
  • http://support.citrix.com/article/CTX109602 (64-bit)
  • Lists and (optionally) cleans file streams created by Citrix memory optimization code
  • File streams (attributes)


41
ADSCleaner (…)
42
Questions?
43