0

When I use Windows Server 2012 on a terminal / RDP session I have a hard time getting the Settings menu up (to reboot or shutdown) or clicking the Start menu (which requires a hover in a corner)

The issue is that when I use RDP, desktop sharing, or other remote solution, I can't just press the windows key.

I want to create a shortcut to launch either the "search all programs" or "settings" and place it on the desktop or taskbar. In the past I did something similar to RunDLL32. To customize this I often run DUMPBIN from the C++ SDK. Below is a dump of the Desktop Window Manager, which is one of the few things left running when I close all applications.

Dump of file .\dwmapi.dll

File Type: DLL

  Section contains the following exports for dwmapi.dll

    00000000 characteristics
    53AE2E6F time date stamp Fri Jun 27 22:54:39 2014
        0.00 version
         100 ordinal base
          64 number of functions
          30 number of names

    ordinal hint RVA      name

        111    0 00009D38 DwmAttachMilContent
        115    1 00006790 DwmDefWindowProc
        116    2 00009D38 DwmDetachMilContent
        117    3 00002DA0 DwmEnableBlurBehindWindow
        102    4 000091E0 DwmEnableComposition
        118    5 00006110 DwmEnableMMCSS
        119    6 00006950 DwmExtendFrameIntoClientArea
        120    7 000061D0 DwmFlush
        121    8 00005780 DwmGetColorizationColor
        122    9 00002450 DwmGetCompositionTimingInfo
        123    A 00009D38 DwmGetGraphicsStreamClient
        129    B 00009D38 DwmGetGraphicsStreamTransformHint
        130    C 00009D50 DwmGetTransportAttributes
   ...snip...
PS C:\Program Files (x86)\Microsoft Visual Studio 14.0\vc\bin\dtest>

Question

Is it possible, or how can I get Windows Server 2012 to open the slightly hidden settings or "start menu" via a RunDLL statement or equivalent?

Network connections
RunDll32.exe shell32.dll,Control_RunDLL ncpa.cpl
 
Firewall
RunDll32.exe shell32.dll,Control_RunDLL firewall.cpl
 
Join Domain - rename
RunDll32.exe shell32.dll,Control_RunDLL sysdm.cpl,,4
 
Control Panel
RunDll32.exe shell32.dll,Control_RunDLL
 
Printers for utility servers
Rundll32 Shell32.dll,SHHelpShortcuts_RunDLL PrintersFolder 
TylerH
  • 20,799
  • 66
  • 75
  • 101
makerofthings7
  • 60,103
  • 53
  • 215
  • 448
  • You can just press the Windows key. – Jonathan Potter Aug 15 '15 at 05:05
  • I'm on a Mac, on RDP or Webex... nope... @JonathanPotter – makerofthings7 Aug 15 '15 at 11:29
  • 1
    Control-Escape should still work, shouldn't it? – Harry Johnston Aug 15 '15 at 12:40
  • @HarryJohnston that key is being trapped by the other OS (RDP, remote sessions). This is a legitimate question not sure why the downvote, and I did proper research. The target audience is System Admins who work with Dameware, Logmein123, Webex, Skype/Lync, or any of the other zillion other programs that don't play nice with typical shortcuts – makerofthings7 Aug 15 '15 at 14:38
  • Huh. I didn't try it myself, but I looked up Mac OS X keyboard shortcuts on the web and that one wasn't mentioned. Perhaps the list I was looking at was out of date. Really it's the client software's responsibility to make sure you can send all the right keyboard combinations, but if they've messed it up then sure, it's perfectly reasonable to try to work around it another way. As for the downvote, I'm afraid Windows questions often attract at least one irrational downvote. That's just the way it goes. – Harry Johnston Aug 16 '15 at 02:06
  • It may be worth noting that (IIRC) Windows 2008 R2 puts the Start button back on the taskbar, so that's another possible solution in some scenarios. – Harry Johnston Aug 16 '15 at 02:07
  • Anyway, I don't think the Start Menu is a separate process, it's part of Explorer. So you probably can't do it with `rundll32`, you'll need to build your own executable. Not sure whether the Start Menu is part of the shell namespace or has any sort of API. But you could presumably use SendInput() to emulate pressing the Windows key. – Harry Johnston Aug 16 '15 at 02:14

0 Answers0