Seite 1 von 1

UAC-Sicherheitsbutton

Verfasst: 12.08.2010 17:35
von purebas
Ich möchte einen OK-Button bauen, der neben dem OK unter VISTA und 7 auch den gelb-blauen UAC-Schild anzeigt.

Mit C# kann ich den UAC-Sicherheitsbutton wie folgt in einen Button einblenden:

Code: Alles auswählen

        internal const int BCM_FIRST = 0x1600;
        internal const int BCM_SETSHIELD = (BCM_FIRST + 0x000C);
        private void Form1_Load(object sender, EventArgs e)
        {
            button1.FlatStyle = FlatStyle.System;
            SendMessage(button1.Handle, BCM_SETSHIELD, IntPtr.Zero, (IntPtr)1);
        }
Funktioniert das auch mit PB oder ist das ausschließlicher Bestandteil von .NET?
Wenn man die kleine Grafik mit PB ebenfalls einblenden kann, dann würde ich mich über ein kleines Beispiel freuen.

Re: UAC-Sicherheitsbutton

Verfasst: 12.08.2010 17:57
von edel

Code: Alles auswählen

#BCM_SETSHIELD = $1600 + $C

Procedure Main()
  
  OpenWindow(0, #PB_Ignore, #PB_Ignore, 400, 400, "" , #WS_OVERLAPPEDWINDOW)
  
  ButtonGadget(0, 10, 10, 100, 23, "Admin Button")
  
  SendMessage_(GadgetID(0), #BCM_SETSHIELD, 0, #True)
  
  
  Repeat
    
  Until WaitWindowEvent() = #PB_Event_CloseWindow  
  
  
EndProcedure:Main()

Re: UAC-Sicherheitsbutton

Verfasst: 16.08.2010 15:58
von purebas
Danke!

Ich bin ja doch noch ein ziemlicher PB Anfänger.
Mich würde es interessieren, wie man auf die Idee kommt,
"Admin Button" als Parameter an ButtonGadget zu übergeben.
In der Hilfe habe ich nichts gefunden. Ich benutze die Version 4.41.

Re: UAC-Sicherheitsbutton

Verfasst: 16.08.2010 16:16
von purebas
Achso... Jetzt kapiere ich es... das ist der Buttontext... Sorry... Alles klar...