Español
Fuente/ Codesnippets

Crash Registerwindowmessage Taskbar Taskbarcreated Trayicon

 
Ein muy cooles Ejemplo ( [...]  ) de Andreas Miethe, dass zeigt cómo bastante optimal

überwacht, si uno una TrayIcon neu herstellen debería:
KompilierenMarcaSeparación
 $H Windows.ph
'Diese Meldung wird auch von Windows versendet wenn das Tray-Fenster
'neu angelegt wird, also bei Start oder Explorer-Crash
Var TaskbarCreated& = ~RegisterWindowMessage("TaskbarCreated")
Var Hicon& = create("hIcon","A")
WindowStyle 539
CLS
Var Ende& = 0
'Meldung als Usermessage anlegen
Usermessages TaskbarCreated&
'Timer für die Überwachung setzen
Settimer 1000

WhileNot ende&

    WaitInput

    If %uMessage = TaskbarCreated&

        'Taskbarcreated ist angekommen
        'entweder von Windows oder vom Programm selber
        TrayIcon("Add", %hWnd, 1, hIcon&, "TrayIcon 11")
        Print "Tray-Icon angelegt"

    EndIf

    If %wmtimer

        If ~Findwindow("Shell_TrayWnd","")

            'wenn das Tray-Fenster vorhanden ist dann Meldung absetzen
            SendMessage(%hwnd,TaskbarCreated&,0,0)
            'Der Timer wird nur bei Programmstart benötigt
            killtimer

        EndIf

    EndIf

    If %key = 2

        Ende& = 1

    EndIf

EndWhile

TrayIcon("Delete", %hWnd, 1)
End
 
09.02.2013  
 




Andreas
Miethe


In el Zusammenhang igual todavía algo.
Um el a testen muss el Explorer neu comenzó voluntad.

Es así :
KompilierenMarcaSeparación
Proc KillProcess

    Var Kernel& = Importdll("Kernel32.dll","")
    Def &TH32CS_SNAPPROCESS 2
    STRUCT PROCESSENTRY32 = \
    dwSize&,\
    cntUsage&,\
    th32ProcessID&,\
    th32DefaultHeapID&,\
    th32ModuleID&,\
    cntThreads&,\
    th32ParentProcessID&,\
    pcPriClassBase&,\
    dwFlags&,\
    szExeFile$(~MAX_PATH)
    PARAMETERS Filename$
    Var TH& = CreateToolhelp32Snapshot(&TH32CS_SNAPPROCESS,0)
    Var PE# = New(PROCESSENTRY32)
    Var PID& = 0
    Var phandle& = 0
    PE#.dwSize& = Sizeof(PE#)
    Process32First(th&,PE#)

    While Process32Next(th&,PE#)

        If Upper$(PE#.szExeFile$) = Upper$(Filename$)

            Pid& = PE#.th32ProcessID&
            pHandle& = OpenProcess($400 | $10 | 1,0,PID&)
            TerminateProcess(pHandle&,0)
            CloseHandle(pHandle&)
            Break

        EndIf

    EndWhile

    Dispose PE#
    CloseHandle(th&)
    Freedll Kernel&

EndProc

KillProcess("expl
xe")
 
XProfan X2
Gruss
Andreas
________ ________ ________ ________ _
Profan 3.3 - XProfanX2
Win 95,98,ME,2000,XP,Vista - Win 7 32 / 64 Bit
ASUS X93S - Intel Core I7-NVIDIA GForce 540M 8GB Arbeitsspeicher
Homepage :  [...] 
09.02.2013  
 



Zum Quelltext


Título del Tema, max. 100 Signo.
 

Systemprofile:

Kein Systemprofil creado. [anlegen]

XProfan:

 Contribución  Font  Smilies  ▼ 

Bitte registro en una Contribución a verfassen.
 

Tema opciones

8.071 Views

Untitledvor 0 min.
Georg Teles27.10.2024
H.Brill03.08.2024
p.specht20.11.2021
Uwe Lang20.11.2021
Más...

Themeninformationen

Dieses Thema ha 2 subscriber:

iF (1x)
Andreas Miethe (1x)


Admins  |  AGB  |  Applications  |  Autores  |  Chat  |  Política de Privacidad  |  Descargar  |  Entrance  |  Ayuda  |  Merchantportal  |  Pie de imprenta  |  Mart  |  Interfaces  |  SDK  |  Services  |  Juegos  |  Búsqueda  |  Support

Ein Projekt aller XProfan, el lo son!


Mi XProfan
Privado Noticias
Eigenes Ablageforum
Temas-Merkliste
Eigene Beiträge
Eigene Temas
Zwischenablage
Cancelar
 Deutsch English Français Español Italia
Traducciones

Política de Privacidad


Wir uso Cookies sólo como Session-Cookies wegen el technischen Notwendigkeit y en uns hay no Cookies de Drittanbietern.

Wenn du hier en unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung de Informationen en unseren Cookies en XProfan.Net a.

Weitere Informationen a unseren Cookies y dazu, como du el Kontrolle darüber behältst, findest du en unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Yo möchte no Cookie