UAC-Sicherheitsbutton

Windowsspezifisches Forum , API ,..
Beiträge, die plattformübergreifend sind, gehören ins 'Allgemein'-Forum.
Benutzeravatar
purebas
Beiträge: 127
Registriert: 11.03.2008 23:59
Wohnort: München

UAC-Sicherheitsbutton

Beitrag 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.
Benutzeravatar
edel
Beiträge: 3667
Registriert: 28.07.2005 12:39
Computerausstattung: GameBoy
Kontaktdaten:

Re: UAC-Sicherheitsbutton

Beitrag 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()
Benutzeravatar
purebas
Beiträge: 127
Registriert: 11.03.2008 23:59
Wohnort: München

Re: UAC-Sicherheitsbutton

Beitrag 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.
Benutzeravatar
purebas
Beiträge: 127
Registriert: 11.03.2008 23:59
Wohnort: München

Re: UAC-Sicherheitsbutton

Beitrag von purebas »

Achso... Jetzt kapiere ich es... das ist der Buttontext... Sorry... Alles klar...
Antworten