Seite 1 von 1

Systray-Bug?

Verfasst: 20.10.2006 10:48
von Jilocasin
Okay... kann es sein dass Systray irgendwie einen Fehler verursacht wenn es mit dem Debugger in der IDE gestartet wird?

Folgender Code..

Code: Alles auswählen

hIco = LoadImage(0,"systray.ico")

If OpenWindow(0,0,0,200,200,"Untitled",#PB_Window_SystemMenu|#PB_Window_ScreenCentered)
  If hIco
    AddSysTrayIcon(0,WindowID(0),hIco)
  Else
    MessageRequester("Fehläh!","Systray tut net!",16)
  EndIf
Else
  MessageRequester("Fehläh!","Fenster tut net!",16)
EndIf


Repeat
  EventID = WaitWindowEvent()
  
Until EventID = #PB_Event_CloseWindow
...veranlasst bei mir immer ein "PureBasic0.exe hat ein Problem festgestellt und muss beendet werden." wenn der Debugger oben in der IDE drin ist.. :freak: :freak:

gehe ich auf "eigenständiger Debugger" klappts einwandfrei :?

Verfasst: 20.10.2006 11:03
von AND51
Systray brauchen auch 16x16 Icons. Hast du auch so eines?

Verfasst: 20.10.2006 11:11
von Jilocasin
jap, ein 16x16 "ICO"

wiegesagt mit externem debugger funz'z ja

Verfasst: 20.10.2006 12:20
von #NULL
bei mir gibt's keinen fehler oder der gleichen. läuft. egal welcher debugger.

Verfasst: 23.10.2006 18:10
von Jilocasin
ok.. hab nochmal ein ähnliches problem..

Code: Alles auswählen

Procedure OpenImageRequester(Title.s, DefaultFile.s, Pattern.s)
  Protected Window.l = 0
  Protected EventID.l = 0
  Protected CloseRequester.b = 0
  Protected Result.s = ""
  Protected Directory.s = GetPathPart(DefaultFile)
  
  Protected ExplorerComboGadget.l
  Protected ExplorerListGadget.l
  
  Width = 480
  Height = 360
  
  Window = OpenWindow(#PB_Any,0,0,Width,Height,Title,#PB_Window_SystemMenu|#PB_Window_ScreenCentered|#PB_Window_SizeGadget)
  CreateGadgetList(WindowID(Window))
  
  ExplorerComboGadget = ExplorerComboGadget(#PB_Any,10,10,Width-60,200,GetPathPart(DefaultFile))
  
  ContainerGadget = ContainerGadget(#PB_Any,Width-35,8,24,24)
  CloseGadgetList()
  
  hRgn = CreateRectRgn_(0,2,24,24)
  
  SetWindowRgn_(GadgetID(ContainerGadget),hRgn,1)
  
  
  ExplorerListGadget = ExplorerListGadget(#PB_Any,10,40,Width-20,Height-120,GetPathPart(DefaultFile),#PB_Explorer_FullRowSelect|#PB_Explorer_NoParentFolder|#PB_Explorer_NoDriveRequester)
  SetGadgetText(ExplorerListGadget,Pattern)
  
  UpwardIcon = ExtractIcon_(0,"shell32.dll",146)
  
  CreateToolBar(#PB_Any,GadgetID(ContainerGadget))
  ToolBarImageButton(#PB_Any,UpwardIcon)
  
  Repeat
    EventID = WaitWindowEvent()
    
    If EventID = #PB_Event_Gadget
      Select EventGadget()
      Case ExplorerComboGadget
        If GetGadgetText(ExplorerComboGadget) <> Directory
          Directory = GetGadgetText(ExplorerComboGadget)
          SetGadgetText(ExplorerListGadget,Directory)
        EndIf
        
      Case ExplorerListGadget
        If GetGadgetText(ExplorerListGadget) <> Directory
          Directory = GetGadgetText(ExplorerListGadget)
          SetGadgetText(ExplorerComboGadget,Directory)
        EndIf
      EndSelect
    EndIf
    
    If EventID = #PB_Event_CloseWindow
      CloseRequester = 1
      Result = ""
    EndIf
    
  Until CloseRequester
  
  CloseHandle_(UpwardIcon)
  
EndProcedure
kann das mal jemand testen? wenns nämlich geht, ist mein debugger im eimer :freak:

Verfasst: 24.10.2006 20:13
von Falko
Ich hatte beim obigen source ähnliches Problem. Lad dir nochmal die PB4
vom Server und installiere es nochmal darüber.
Bei mir geht es jetzt auch wieder :freak:

Gruss Falko

Verfasst: 25.10.2006 09:23
von Jilocasin
Hmm.. thx, funzt wieder... <)
aber woran lags?

etwa an den Beta-Libs??

Verfasst: 25.10.2006 14:59
von Falko
Wenn ich das wüßte, hätte ich es bestimmt hingeschrieben.
die letzen sind vor kurzem vom 15.10. letzte Woche gepostet, eingefügt worden.
Diese habe ich testweise trotzdem nochmal nach der neuinstallation von PB
eingefügt und die machens leider nicht.
Die anderen lasse ich lieber mal weg und warte bis Fred sich mal wieder für WindowPB hinreissen läßt :D.

Gruß ...Falko