Uploaded image for project: 'Core ReactOS'
  1. Core ReactOS
  2. CORE-17740

BSOD When SetWindowPos Is Used On Task-Bar Handle

    XMLWordPrintable

Details

    • Bug
    • Resolution: Cannot Reproduce
    • Critical
    • None
    • None

    Description

      When attempting to use SetWindowPos on the task-bar handle, ReactOS will function correctly and the program will be allowed to change the position of the task-bar task list handle. After closing the program the Operating System will instantly crash resulting in a "BSOD". An image of this blue-screen is attached. The following code for the program is below along with information.

       

      • Program Framework: .NET Framework 4.5 (ROS Installed Dependencies)
      • Program Language / Type: .NET Console App (C#)
      • ReactOS Version: "ReactOS-0.4.13-release-28-g5724391"

       

      Program Code "Snippet":

      1. 0x0 should be correctly changed to the task-bar handle from WinSpy++.
      2. SetWindowPos is from the P/Invoke library of "user32.dll" and needs to be added along with a using statement for the "System.Runtime.InteropServices" runtime.
      3. SetWindowPosFlags is a enum containing the ShowWindow enum. This value for ShowWindow should be set to "0x0040". A full source of the program is attached.

      static void Main(string[] args) {
          while(true) {
      SetWindowPos((IntPtr)0x0, (IntPtr)0, 350, 0, 0, 0, SetWindowPosFlags.ShowWindow);
          }
      }

       

      Program Source:

      Program.cs

       

      Image of the Blue Screen error code and information:

      Attachments

        1. Program.cs
          0.7 kB
        2. Program2.cpp
          0.2 kB
        3. ROSError.png
          ROSError.png
          17 kB

        Activity

          People

            Unassigned Unassigned
            n0ahbX n0ahbX
            Votes:
            1 Vote for this issue
            Watchers:
            5 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: