Programm beendet, Prozess aber noch aktiv ?!

Anfängerfragen zum Programmieren mit PureBasic.
icecrusher
Beiträge: 62
Registriert: 01.03.2008 05:43
Wohnort: Hamm
Kontaktdaten:

Programm beendet, Prozess aber noch aktiv ?!

Beitrag von icecrusher »

Hi :-)

Ich habe folgendes problem:

Ich habe ein Tool gecoded, welches nach beenden durch klicken auf (X oder Close) zwar Aus geht, sprich: Das fenster Closed sich, aber der Prozess läuft im Taskman weiter oO, weis jemand wieso?

Ich poste auch den Code:

Code: Alles auswählen

;{- Enumerations / DataSections
;{ Windows
Enumeration
  #Window_0
  #Window_about
EndEnumeration
;}
IncludeFile "F:\registry.pbi"
;{ Gadgets
Enumeration
  #Button_about_close
  #Image_about
  #Text_license_about
  #Text_arrr
  #Frame3D_about
  #Image_68
  #mail1
  #mail2
  #icq1
  #icq2
  #HyperLink_amok
  #Frame3D_greetz
  #Text_bueno
  #Text_eagle
  #Text_shark
  #Text_amok
  #Text_about_you
  #Button_2
  #Image_6
  #Button_8
  #Frame3D_9
  #CheckBox_10
  #CheckBox_11
  #CheckBox_12
  #CheckBox_13
  #CheckBox_14
  #Frame3D_15
  #CheckBox_16
  #Frame3D_17
  #CheckBox_18
  #Frame3D_19
  #CheckBox_20
  #Frame3D_21
  #Frame3D_22
  #Text_23
  #String_24
  #Text_25
  #String_26
  #CheckBox_28
  #Text_29
  #String_30
  #Text_31
  #Text_32
  #Button_34
  #Panel_35
  #CheckBox_36
  #CheckBox_37
  #CheckBox_38
  #CheckBox_39
  #CheckBox_40
  #CheckBox_41
  #CheckBox_42
  #CheckBox_43
  #CheckBox_44
  #CheckBox_45
  #CheckBox_46
  #CheckBox_47
  #CheckBox_48
  #CheckBox_49
  #CheckBox_50
  #CheckBox_51
  #CheckBox_52
  #CheckBox_53
  #CheckBox_54
  #CheckBox_55
  #CheckBox_56
  #Frame3D_63
  #Button_65
  #Button_66
  #Button_67
  #Text_69
  #Button_70
EndEnumeration
;}
;{ Fonts
Enumeration
  #Font_Text_69
EndEnumeration
;}
;{ Images
Enumeration
  #Image_Image_6
  #Image_Image_0
  #Image_Image_68
EndEnumeration
;}
;{ Included Images
DataSection
  Image_Image_0:
  IncludeBinary "F:\CSS Configurator\data\gfx\about.jpg"
  
  Image_Image_6:
  IncludeBinary "F:\CSS Configurator\data\gfx\cfg.jpg"
  
  Image_Image_68:
  IncludeBinary "C:\Dokumente und Einstellungen\Administrator\Desktop\csde.jpg"
EndDataSection
;}
;{ Image Plugins
UseJPEGImageDecoder()
;}
Define.l Event, EventWindow, EventGadget, EventType, EventMenu
;}


;{- About fenster
Procedure OpenWindow_Window_about()
  If OpenWindow(#Window_about, 518, 587, 536, 242, "About", #PB_Window_TitleBar)
    If CreateGadgetList(WindowID(#Window_about))
      ImageGadget(#Image_about, -5, -5, 546, 94, CatchImage(#Image_Image_0, ?Image_Image_0), #PB_Image_Border)
      TextGadget(#Text_license_about, 240, 90, 290, 70, "Diese Software wurde von Icecrusher geschrieben, der Code darf nicht für Kommerzielle geschäfte genutzt werden! Icecrusher haftet genausowenig für schaden, als das er diese Software Verkauft. Dies bedeutet, diese Software wird nicht Verkauft, und ist Kostenlos (Freeware).", #PB_Text_Center)
      TextGadget(#Text_arrr, 240, 225, 245, 20, "Copyright by Icecrusher (2008) All Rights Reserved.")
      Frame3DGadget(#Frame3D_about, 5, 90, 230, 145, "Kontaktinformationen")
      TextGadget(#mail1, 10, 110, 35, 15, "eMail:")
      TextGadget(#mail2, 70, 110, 155, 15, "bulletproof.ati@t-online.de")
      TextGadget(#icq1, 10, 130, 40, 14, "ICQ:")
      TextGadget(#icq2, 70, 130, 60, 15, "291085772")
      HyperLinkGadget(#HyperLink_amok, 10, 215, 215, 15, "http://amokcrew.am.ohost.de (Clanpage)", #Blue)
      Frame3DGadget(#Frame3D_greetz, 240, 160, 285, 60, "Greetz")
      TextGadget(#Text_bueno, 245, 175, 40, 15, "bU3No")
      TextGadget(#Text_eagle, 300, 175, 30, 15, "Eagle")
      TextGadget(#Text_shark, 345, 175, 35, 15, "sharK")
      TextGadget(#Text_amok, 390, 175, 120, 15, "All Amok-Crew Members")
      TextGadget(#Text_about_you, 245, 195, 265, 15, "And of course YOU!! :-) Have fun with my Tool")
      ButtonGadget(#Button_about_close, 485, 220, 50, 20, "Close")
    EndIf
  EndIf
EndProcedure
;}


;{- Hauptfenster
Procedure OpenWindow_Window_0()
  If OpenWindow(#Window_0, 15, 248, 875, 567, "Counter-Strike: Source Configurator | Version 1.21 | Coded for CounterStrike.de", #PB_Window_SystemMenu|#PB_Window_TitleBar|#PB_Window_MinimizeGadget)
    If CreateGadgetList(WindowID(#Window_0))
            ButtonGadget(#Button_2, 505, 535, 130, 30, "Erstelle Config")
      ImageGadget(#Image_6, -5, -5, 884, 94, CatchImage(#Image_Image_6, ?Image_Image_6), #PB_Image_Border)
      ButtonGadget(#Button_8, 810, 535, 65, 30, "&Close", #PB_Button_Default)
      Frame3DGadget(#Frame3D_9, 5, 95, 245, 130, "Allgemeine Einstellungen")
      CheckBoxGadget(#CheckBox_10, 15, 120, 185, 15, "Waffe in linker Hand tragen")
      GadgetToolTip(#CheckBox_10, "Bei aktivieren dieser Funktion, trägst du die Waffe in der linken Hand anstatt in der rechten! [cl_righthand <wert>]")
      CheckBoxGadget(#CheckBox_11, 15, 140, 170, 15, "Netgraph aktivieren")
      GadgetToolTip(#CheckBox_11, "Diese Option, aktiviert den Netgraph, dieser beinhaltet informationen über deine FPS und deinen Ping, sowie auch diverse Verbindungsinfos! [net_graph <wert> | net_graphpos <wert>]")
      CheckBoxGadget(#CheckBox_12, 15, 160, 200, 15, "Schnellen Waffenwechsel aktivieren")
      GadgetToolTip(#CheckBox_12, "Diese Option, führt bei aktivierung dazu, dass Du bei drücken der für die Waffe bestimmten Taste, die waffe sofort in der Hand hältst, ohne vorher durch klick diese auswahl anzunehmen! [hud_fastswitch <wert>]")
      CheckBoxGadget(#CheckBox_13, 15, 180, 195, 15, "Mausfilter aktivieren")
      GadgetToolTip(#CheckBox_13, "Hierdurch werden die Bewegungen mit der Maus, flüssiger und weicher! [m_filter <wert>]")
      CheckBoxGadget(#CheckBox_14, 15, 200, 210, 15, "Dynamisches Fadenkreuz deaktivieren")
      GadgetToolTip(#CheckBox_14, "Diese Option, sofern ausgewählt, deaktivier das auseinandergehen des Fadenkreuzes während einer Bewegung! [cl_dynamiccrosshair <wert>]")
      Frame3DGadget(#Frame3D_15, 5, 235, 245, 45, "Konsolen Fix")
      CheckBoxGadget(#CheckBox_16, 15, 255, 225, 15, "Konsole aktivieren")
      GadgetToolTip(#CheckBox_16, "Diese Option, aktiviert die Konsole, diese kannst du dann über die taste ^ aufrufen, während du spielst! [con_enable <wert>]")
      Frame3DGadget(#Frame3D_17, 5, 290, 245, 45, "FPS erhöhen")
      CheckBoxGadget(#CheckBox_18, 15, 310, 215, 15, "Maximale FPS auf 101 Setzen")
      GadgetToolTip(#CheckBox_18, "diese Option, erhöht die Maximale anzeige der Bilder in einer Sekunde auf 101, das Menschliche Auge, kann nur bis zu 100 Bilder pro Sekunde wahrnehmen, deswegen sind höhere Werte unnütz! [fps_max <wert>]")
      Frame3DGadget(#Frame3D_19, 5, 345, 245, 45, "Blutpatch")
      CheckBoxGadget(#CheckBox_20, 15, 365, 210, 15, "Blutpatch benutzen")
      GadgetToolTip(#CheckBox_20, "Dies Option, Aktiviert den Blutpatch (Nur nötig, wenn Counter-Strike und Steam auf Deutsch eingestellt sind)")
      Frame3DGadget(#Frame3D_21, -5, 525, 900, 80, "")
      Frame3DGadget(#Frame3D_22, 5, 405, 245, 115, "Netzwerk Einstellungen")
      TextGadget(#Text_23, 15, 425, 100, 15, "Updaterate:")
      StringGadget(#String_24, 120, 420, 120, 20, "101")
      GadgetToolTip(#String_24, "Diese Option, bestimmt die Aktualisierungsrate, die beim spielen benutzt wird [cl_updaterate <wert>]")
      TextGadget(#Text_25, 15, 450, 100, 15, "Befehlsrate:")
      StringGadget(#String_26, 120, 445, 120, 20, "101")
      GadgetToolTip(#String_26, "Laut informationen zufolge, soll diese Option dafür sorgen, dass Schüsse Besser ankommen [cl_cmdrate <wert>]")
      CheckBoxGadget(#CheckBox_28, 15, 495, 230, 15, "Download von (Maps, Sounds etc.) Erlauben")
      GadgetToolTip(#CheckBox_28, "Diese Option, wenn aktiviert, erlaubt dem Spiel, fehlende Dateien wie Maps, Sounds oder ähnliches herunterzuladen! [cl_allowdownload <wert>]")
      TextGadget(#Text_29, 15, 475, 100, 15, "Rate:")
      StringGadget(#String_30, 120, 470, 120, 20, "30000")
      GadgetToolTip(#String_30, "Gibt die maximale Anzahl Daten in Byte an, die an den Server gesendet und die selber empfangen werden können! [rate <wert>]")
      TextGadget(#Text_31, 0, 550, 500, 15, "This Program is coded and Copyrighted by icecrusher!", #PB_Text_Center)
      TextGadget(#Text_32, 5, 535, 495, 15, "Informationen zu den Befehlen, findest du indem du mit der Maus darüber fährst!", #PB_Text_Center)
      ButtonGadget(#Button_34, 745, 535, 60, 30, "About")
      Frame3DGadget(#Frame3D_63, 255, 95, 615, 225, "High-FPS Einstellungen, diese einstellungen verändern die Grafik des Spiels um dadurch mehr Performance zu bekommen")
      ButtonGadget(#Button_65, 255, 325, 615, 25, "Ich möchte DirectX 8.0 Benutzen (Verbessert enorm die Performance) *")
      ButtonGadget(#Button_66, 255, 350, 615, 25, "Ich möchte DirectX 8.1 Benutzen (Verbessert bei manchen Systemen die Performance) *")
      ButtonGadget(#Button_67, 255, 375, 615, 25, "Ich möchte DirectX 9.0 Benutzen (Verbessert die Performance NICHT!) *")
      ImageGadget(#Image_Image_68, 325, 445, 472, 64, CatchImage(#Image_Image_68, ?Image_Image_68), #PB_Image_Border)
      GadgetToolTip(#Image_Image_68, "CounterStrike.de besuchen!")
      TextGadget(#Text_69, 355, 400, 415, 40, "* WARNUNG!! Änderungen in der Registry könnten ihr System schädigen. Das ändern des DirectX Levels, geschieht auf eigene Gefahr!", #PB_Text_Center)
      ButtonGadget(#Button_70, 635, 535, 25, 30, "?")
      GadgetToolTip(#Button_70, "Was macht Erstelle Config, und wie muss ich damit umgehen?")
      PanelGadget(#Panel_35, 260, 125, 605, 185)
        ; Render Einstellungen
        AddGadgetItem(#Panel_35, -1, "Render Einstellungen")
        CheckBoxGadget(#CheckBox_36, 5, 5, 590, 15, "3D Rendern des Himmels abschalten (empfohlen)")
        GadgetToolTip(#CheckBox_36, "[r_3dsky <wert>]")
        CheckBoxGadget(#CheckBox_37, 5, 20, 570, 15, "Überlagernde Texturen entfernen (empfohlen)")
        GadgetToolTip(#CheckBox_37, "[r_renderoverlayfragment <wert>]")
        CheckBoxGadget(#CheckBox_38, 5, 35, 400, 15, "Dynamische Lichteffekte deaktivieren (empfohlen)")
        GadgetToolTip(#CheckBox_38, "[r_dynamic <wert>]")
        CheckBoxGadget(#CheckBox_39, 5, 50, 475, 15, "Schattierungen deaktivieren (empfohlen)")
        GadgetToolTip(#CheckBox_39, "[r_shadows <wert>]")
        CheckBoxGadget(#CheckBox_40, 5, 65, 510, 15, "Weniger Lichter dem Vertexshader zum berechnen geben (empfohlen)")
        GadgetToolTip(#CheckBox_40, "[r_worldlights <wert>]")
        CheckBoxGadget(#CheckBox_41, 5, 80, 570, 15, "Darstellung des Wassers verschlechtern (empfohlen)")
        GadgetToolTip(#CheckBox_41, "[r_cheapwaterend <wert> | r_cheapwaterstart <wert>]")
        CheckBoxGadget(#CheckBox_42, 5, 95, 590, 15, "SSE, SSE2, MMX und 3DNow! Einschalten (Wenn eure CPU das unterstützt, werden diese Einstellungen benutzt)")
        GadgetToolTip(#CheckBox_42, "[r_mmx <wert> | r_sse <wert> | r_sse2 <wert> | r_3dnow <wert>]")
        ; Materials Einstellungen
        AddGadgetItem(#Panel_35, -1, "Materials Einstellungen")
        CheckBoxGadget(#CheckBox_43, 5, 5, 555, 15, "Das erzwingen der Hardwaresynchronisation deaktivieren (empfohlen)")
        GadgetToolTip(#CheckBox_43, "[mat_forcehardwaresync <wert>]")
        CheckBoxGadget(#CheckBox_44, 5, 20, 555, 15, "Emulation von Tiefeneffekten deaktivieren (z.B. Risse, Fugen oder ähnliches in Wänden etc.) (empfohlen)")
        GadgetToolTip(#CheckBox_44, "[mat_bumpmap <wert>]")
        CheckBoxGadget(#CheckBox_45, 5, 35, 555, 15, "Spekulare beleuchtung deaktivieren (empfohlen)")
        GadgetToolTip(#CheckBox_45, "[mat_specular <wert>]")
        CheckBoxGadget(#CheckBox_46, 5, 50, 550, 15, "Kantenglättung (Anti Aliasing) deaktivieren (empfohlen)")
        GadgetToolTip(#CheckBox_46, "[mat_antialias <wert>]")
        CheckBoxGadget(#CheckBox_47, 5, 65, 580, 15, "Lichtfilter deaktivieren (empfohlen)")
        GadgetToolTip(#CheckBox_47, "[mat_filterlightmaps <wert>]")
        CheckBoxGadget(#CheckBox_48, 5, 80, 585, 15, "Andere Shading Technik zum erhöhen der Performance benutzen (empfohlen)")
        GadgetToolTip(#CheckBox_48, "[mat_clipz <wert>]")
        CheckBoxGadget(#CheckBox_49, 5, 95, 560, 15, "Texturen und Shader Füllrate reduzieren (empfohlen)")
        GadgetToolTip(#CheckBox_49, "[mat_reducefillrate <wert>]")
        CheckBoxGadget(#CheckBox_50, 5, 110, 560, 15, "Das erzwingen der Anisotropischen Filterung deaktivieren (empfohlen)")
        GadgetToolTip(#CheckBox_50, "[mat_forceaniso <wert>]")
        CheckBoxGadget(#CheckBox_51, 5, 125, 560, 15, "Vertikale Synchronisation (VSync) abschalten (empfohlen)")
        GadgetToolTip(#CheckBox_51, "[mat_vsync <wert>]")
        CheckBoxGadget(#CheckBox_52, 5, 140, 560, 15, "Trilineare Filterung benutzen (empfohlen)")
        GadgetToolTip(#CheckBox_52, "[mat_trilinear <wert>]")
        ; Sonstige Einstellungen
        AddGadgetItem(#Panel_35, -1, "Sonstige Einstellungen")
        CheckBoxGadget(#CheckBox_53, 5, 5, 545, 15, "Grafikqualität etwas weicher machen (empfohlen)")
        GadgetToolTip(#CheckBox_53, "[cl_smooth <wert>]")
        CheckBoxGadget(#CheckBox_54, 5, 20, 495, 15, "Erzwingen des vorrausladens einiger dateien beim Verbinden auf einen Server (empfohlen)")
        GadgetToolTip(#CheckBox_54, "[cl_forcepreload <wert>]")
        CheckBoxGadget(#CheckBox_55, 5, 35, 490, 15, "Patronenhülsen deaktivieren")
        GadgetToolTip(#CheckBox_55, "[cl_ejectbrass <wert>]")
        CheckBoxGadget(#CheckBox_56, 5, 50, 485, 15, "Deaktivieren von effekten an Seilen wie sie z.B. bei Dust zu sehen sind (empfohlen)")
        GadgetToolTip(#CheckBox_56, "[rope_wind_dist <wert> | rope_smooth <wert> | rope_subdiv <wert>]")
      CloseGadgetList()
      ; Gadget Fonts
      SetGadgetFont(#Text_69, LoadFont(#Font_Text_69, "Microsoft Sans Serif", 8, 272))
    EndIf
  EndIf
EndProcedure
;}
OpenWindow_Window_0()


;{- Event loop
Repeat
  Event = WaitWindowEvent()
  Select Event
    ; ///////////////////
    Case #PB_Event_Gadget
      EventGadget = EventGadget()
      EventType = EventType()
      If EventGadget = #Button_2
      :Gosub make_config
      ElseIf EventGadget = #Button_about_close
      CloseWindow(#Window_about)
      ElseIf EventGadget = #HyperLink_amok
      RunProgram("http://amokcrew.am.ohost.de")
      ElseIf EventGadget = #Image_6
      ElseIf EventGadget = #Button_8
      :Goto close
      close:
      CloseWindow(#Window_0)
      ElseIf EventGadget = #Frame3D_9
      ElseIf EventGadget = #CheckBox_10
      ElseIf EventGadget = #CheckBox_11
      ElseIf EventGadget = #CheckBox_12
      ElseIf EventGadget = #CheckBox_13
      ElseIf EventGadget = #CheckBox_14
      ElseIf EventGadget = #Frame3D_15
      ElseIf EventGadget = #CheckBox_16
      ElseIf EventGadget = #Frame3D_17
      ElseIf EventGadget = #CheckBox_18
      ElseIf EventGadget = #Frame3D_19
      ElseIf EventGadget = #CheckBox_20
      ElseIf EventGadget = #Frame3D_21
      ElseIf EventGadget = #Frame3D_22
      ElseIf EventGadget = #Text_23
      ElseIf EventGadget = #String_24
      ElseIf EventGadget = #Text_25
      ElseIf EventGadget = #String_26
      ElseIf EventGadget = #CheckBox_28
      ElseIf EventGadget = #Text_29
      ElseIf EventGadget = #String_30
      ElseIf EventGadget = #Text_31
      ElseIf EventGadget = #Text_32
      ElseIf EventGadget = #Button_34
      OpenWindow_Window_about()
      ElseIf EventGadget = #Panel_35
      ElseIf EventGadget = #CheckBox_36
      ElseIf EventGadget = #CheckBox_37
      ElseIf EventGadget = #CheckBox_38
      ElseIf EventGadget = #CheckBox_39
      ElseIf EventGadget = #CheckBox_40
      ElseIf EventGadget = #CheckBox_41
      ElseIf EventGadget = #CheckBox_42
      ElseIf EventGadget = #CheckBox_43
      ElseIf EventGadget = #CheckBox_44
      ElseIf EventGadget = #CheckBox_45
      ElseIf EventGadget = #CheckBox_46
      ElseIf EventGadget = #CheckBox_47
      ElseIf EventGadget = #CheckBox_48
      ElseIf EventGadget = #CheckBox_49
      ElseIf EventGadget = #CheckBox_50
      ElseIf EventGadget = #CheckBox_51
      ElseIf EventGadget = #CheckBox_52
      ElseIf EventGadget = #CheckBox_53
      ElseIf EventGadget = #CheckBox_54
      ElseIf EventGadget = #CheckBox_55
      ElseIf EventGadget = #CheckBox_56
      ElseIf EventGadget = #Frame3D_63
      ElseIf EventGadget = #Image_Image_68
      RunProgram("http://www.4players.de/cs.php/index/-/index.html")
      ElseIf EventGadget = #Button_65
      ;DirectX 8.0
      :Gosub dx80
      ;Reg_DeleteValue(#HKEY_CURRENT_USER, "Software\Valve\Source\cstrike\Settings", "DXLevel_v1") 
      ;Reg_SetValue(#HKEY_CURRENT_USER, "Software\Valve\Source\cstrike\Settings", "DXLevel_v1", Str(00000080), #REG_DWORD)
      ;MessageRequester("Änderung Erfolgreich!","Sie haben Counter-Strike: Source erfolgreich auf DirectX 8.0 umgestellt",#PB_MessageRequester_Ok)
      
      ElseIf EventGadget = #Button_66
      ;DirectX 8.1
      ;Reg_DeleteValue(#HKEY_CURRENT_USER, "Software\Valve\Source\cstrike\Settings", "DXLevel_v1") 
      ;Reg_SetValue(#HKEY_CURRENT_USER, "Software\Valve\Source\cstrike\Settings", "DXLevel_v1", Str(00000081), #REG_DWORD)
      ;MessageRequester("Änderung Erfolgreich!","Sie haben Counter-Strike: Source erfolgreich auf DirectX 8.1 umgestellt",#PB_MessageRequester_Ok)
      :Gosub dx81
      
      ElseIf EventGadget = #Button_67
      ;DirectX 9.0
      ;Reg_DeleteValue(#HKEY_CURRENT_USER, "Software\Valve\Source\cstrike\Settings", "DXLevel_v1") 
      ;Reg_SetValue(#HKEY_CURRENT_USER, "Software\Valve\Source\cstrike\Settings", "DXLevel_v1", Str(00000090), #REG_DWORD)
      ;MessageRequester("Änderung Erfolgreich!","Sie haben Counter-Strike: Source erfolgreich auf DirectX 9.0 umgestellt",#PB_MessageRequester_Ok)
      :Gosub dx90
      EndIf
    ; ////////////////////////
    Case #PB_Event_CloseWindow
      EventWindow = EventWindow()
      If EventWindow = #Window_0
        :Goto close
        CloseWindow(#Window_0)
        Break
      EndIf
  EndSelect
ForEver
End
;
;}


;{- Make Config
make_config:
StandardFile$ = "autoexec.cfg"
  
  Pattern$ = "Config (*.cfg)|*.cfg"
  Pattern = 0
  File$ = SaveFileRequester("Bitte Pfad zu Steam\SteamApps\DEIN_ACCOUNTNAME\Counter-Strike Source\cstrike\cfg angeben!!", StandardFile$, Pattern$, Pattern)
  
  
  If File$
   CreateFile(0,File$)
    WriteStringN(0, "//Autoexec.cfg generated with icecrushers Counter-Strike Source Configurator")
    WriteStringN(0, "//All Rights Reserved 2008 Copyright by icecrusher")
    WriteStringN(0, "")
    WriteStringN(0, "")
    WriteStringN(0, "//Net Settings//")
    WriteStringN(0,"cl_updaterate "+Chr(34)+StringField(GetGadgetText( #String_24) +Chr(34), k, ""))
    WriteStringN(0,"cl_cmdrate "+Chr(34)+StringField(GetGadgetText( #String_26) +Chr(34), k, ""))
    WriteStringN(0,"rate "+Chr(34)+StringField(GetGadgetText( #String_30) +Chr(34), k, ""))
    WriteStringN(0,"")
    WriteStringN(0,"//Allgemeine Settings//")
If GetGadgetState(#CheckBox_10)
   WriteStringN(0,"cl_righthand 0")
   Else
   WriteStringN(0,"cl_righthand 1")
EndIf
  
If GetGadgetState(#Checkbox_11)
    WriteStringN(0, "net_graph 3")
    WriteStringN(0, "net_graphpos 2")
    Else
    WriteStringN(0, "net_graph 0")
EndIf

If GetGadgetState(#Checkbox_12)
    WriteStringN(0, "hud_fastswitch 1")
    Else
    WriteStringN(0, "hud_fastswitch 0")
EndIf

If GetGadgetState(#Checkbox_13)
    WriteStringN(0, "m_filter 1")
    Else
    WriteStringN(0, "m_filter 0")
EndIf

If GetGadgetState(#Checkbox_14)
    WriteStringN(0, "cl_dynamiccrosshair 0")
    Else
    WriteStringN(0, "cl_dynamiccrosshair 1")
EndIf

If GetGadgetState(#Checkbox_16)
    WriteStringN(0, "bind \ toggleconsole")
    WriteStringN(0, "con_enable 1")
    Else
    WriteStringN(0, "con_enable 0")
EndIf
WriteStringN(0, "")
WriteStringN(0,"//FPS Settings//")

If GetGadgetState(#Checkbox_18)
    WriteStringN(0, "fps_max 101")
    Else
    WriteStringN(0, "fps_max 60")
EndIf
WriteStringN(0, "")
WriteStringN(0, "//Blutpatch//")
If GetGadgetState(#Checkbox_20)
    WriteStringN(0, "violence_hgibs 1")
    WriteStringN(0, "violence_agibs 1")
    WriteStringN(0, "violence_hblood 1")
    WriteStringN(0, "violence_ablood 1")
    Else
    WriteStringN(0, "violence_hgibs 0")
    WriteStringN(0, "violence_agibs 0")
    WriteStringN(0, "violence_hblood 0")
    WriteStringN(0, "violence_ablood 0")
EndIf
WriteStringN(0, "")
WriteStringN(0, "//Download Settings//")
If GetGadgetState(#Checkbox_28)
    WriteStringN(0, "cl_allowdownload 1")
    Else
    WriteStringN(0, "cl_allowdownload 0")
EndIf
WriteStringN(0, "")
WriteStringN(0, "//Render Settings//")
If GetGadgetState(#Checkbox_36)
    WriteStringN(0, "r_3dsky 0")
    Else
    WriteStringN(0, "r_3dsky 1")
EndIf

If GetGadgetState(#Checkbox_37)
    WriteStringN(0, "r_renderoverlayfragment 0")
    Else
    WriteStringN(0, "r_renderoverlayfragment 1")
EndIf

If GetGadgetState(#Checkbox_38)
    WriteStringN(0, "r_dynamic 0")
    Else
    WriteStringN(0, "r_dynamic 1")
EndIf

If GetGadgetState(#Checkbox_39)
    WriteStringN(0, "r_shadows 0")
    Else
    WriteStringN(0, "r_shadows 1")
EndIf

If GetGadgetState(#Checkbox_40)
    WriteStringN(0, "r_worldlights 0.9")
    Else
    WriteStringN(0, "r_worldlights 1")
EndIf

If GetGadgetState(#Checkbox_41)
    WriteStringN(0, "r_cheapwaterend 1")
    WriteStringN(0, "r_cheatwaterstart 1")
    Else
    WriteStringN(0, "r_cheapwaterend 0")
    WriteStringN(0, "r_cheapwaterstart 0")
EndIf

If GetGadgetState(#Checkbox_42)
    WriteStringN(0, "r_mmx 1")
    WriteStringN(0, "r_sse 1")
    WriteStringN(0, "r_sse2 1")
    WriteStringN(0, "r_3dnow 1")
    Else
    WriteStringN(0, "r_mmx 0")
    WriteStringN(0, "r_sse 0")
    WriteStringN(0, "r_sse2 0")
    WriteStringN(0, "r_3dnow 0")
EndIf
WriteStringN(0, "")
WriteStringN(0, "//Material Settings//")
If GetGadgetState(#Checkbox_43)
    WriteStringN(0, "mat_forcehardwaresync 0")
    Else
    WriteStringN(0, "mat_forcehardwaresync 1")
EndIf

If GetGadgetState(#Checkbox_44)
    WriteStringN(0, "mat_bumpmap 0")
    Else
    WriteStringN(0, "mat_bumpmap 1")
EndIf

If GetGadgetState(#Checkbox_45)
    WriteStringN(0, "mat_specular 0")
    Else
    WriteStringN(0, "mat_specular 1")
EndIf

If GetGadgetState(#Checkbox_46)
    WriteStringN(0, "mat_antialias 0")
    Else
    WriteStringN(0, "mat_antialias 1")
EndIf

If GetGadgetState(#Checkbox_47)
    WriteStringN(0, "mat_filterlightmaps 0")
    Else
    WriteStringN(0, "mat_filterlightmaps 1")
EndIf

If GetGadgetState(#Checkbox_48)
    WriteStringN(0, "mat_clipz 1")
    Else
    WriteStringN(0, "mat_clipz 0")
EndIf

If GetGadgetState(#Checkbox_49)
    WriteStringN(0, "mat_reducefillrate 1")
    Else
    WriteStringN(0, "mat_reducefillrate 0")
EndIf

If GetGadgetState(#Checkbox_50)
    WriteStringN(0, "mat_forceaniso 0")
    Else
    WriteStringN(0, "mat_forceaniso 1")
EndIf

If GetGadgetState(#Checkbox_51)
    WriteStringN(0, "mat_vsync 0")
    Else
    WriteStringN(0, "mat_vsync 1")
EndIf

If GetGadgetState(#Checkbox_52)
    WriteStringN(0, "mat_trilinear 1")
    Else
    WriteStringN(0, "mat_trilinear 0")
EndIf

WriteStringN(0, "")
WriteStringN(0, "//Sonstige Settings//")
If GetGadgetState(#Checkbox_53)
    WriteStringN(0, "cl_smooth 1")
    Else
    WriteStringN(0, "cl_smooth 0")
EndIf

If GetGadgetState(#Checkbox_54)
    WriteStringN(0, "cl_forcepreload 1")
    WriteStringN(0, "sv_forcepreload 1")
    Else
    WriteStringN(0, "cl_forcepreload 0")
    WriteStringN(0, "sv_forcepreload 0")
EndIf

If GetGadgetState(#Checkbox_55)
    WriteStringN(0, "cl_ejectbrass 0")
    Else
    WriteStringN(0, "cl_ejectbrass 1")
EndIf
If GetGadgetState(#Checkbox_55)
    WriteStringN(0, "rope_wind_dist 0")
    WriteStringN(0, "rope_smooth 0")
    WriteStringN(0, "rope_subdiv 0")
    Else
    WriteStringN(0, "rope_wind_dist 1")
    WriteStringN(0, "rope_smooth 1")
    WriteStringN(0, "rope_subdiv 1")
EndIf
WriteStringN(0, "")
WriteStringN(0, "")
WriteStringN(0, "//End of Config file")
CloseFile(0)
MessageRequester("Config erfolgreich gespeichert!", "Ihre config wurde im folgendem Verzeichniss gespeichert:"+Chr(10)+File$, 0)
 Return
Else
  Return
EndIf 
End
;}
;{- dx80
dx80:
Result = MessageRequester("Warnung!", "Durch das ändern der Registry, kann ihr System beschädigt werde. öchten sie trotzdem fortfahren?", #PB_MessageRequester_YesNo)

dxmsg$ = "Änderung wurde "
;MessageRequester("Warnung!","Durch das ändern der Registry, kann ihr System beschädigt werden. Möchten sie mit der änderung fortfahren?",#PB_MessageRequester_YesNo)
If Result = #PB_MessageRequester_Yes
Reg_SetValue(#HKEY_CURRENT_USER, "Software\Valve\Source\cstrike\Settings", "DXLevel_v1", Str(00000080), #REG_DWORD)
dxmsg$ + "durchgeführt!"
Else
dxmsg$ + "abgebrochen!"
EndIf
MessageRequester("Information!", dxmsg$, #PB_MessageRequester_Ok)
  Return
End
    
 
;}
;{- dx81
dx81:
Result = MessageRequester("Warnung!", "Durch das ändern der Registry, kann ihr System beschädigt werde. öchten sie trotzdem fortfahren?", #PB_MessageRequester_YesNo)

dxmsg$ = "Änderung wurde "
;MessageRequester("Warnung!","Durch das ändern der Registry, kann ihr System beschädigt werden. Möchten sie mit der änderung fortfahren?",#PB_MessageRequester_YesNo)
If Result = #PB_MessageRequester_Yes
Reg_SetValue(#HKEY_CURRENT_USER, "Software\Valve\Source\cstrike\Settings", "DXLevel_v1", Str(00000081), #REG_DWORD)
dxmsg$ + "durchgeführt!"
Else
dxmsg$ + "abgebrochen!"
EndIf
MessageRequester("Information!", dxmsg$, #PB_MessageRequester_Ok)
  Return
End
    
 
;}
;{- dx90
dx90:
Result = MessageRequester("Warnung!", "Durch das ändern der Registry, kann ihr System beschädigt werde. öchten sie trotzdem fortfahren?", #PB_MessageRequester_YesNo)

dxmsg$ = "Änderung wurde "
;MessageRequester("Warnung!","Durch das ändern der Registry, kann ihr System beschädigt werden. Möchten sie mit der änderung fortfahren?",#PB_MessageRequester_YesNo)
If Result = #PB_MessageRequester_Yes
Reg_SetValue(#HKEY_CURRENT_USER, "Software\Valve\Source\cstrike\Settings", "DXLevel_v1", Str(00000090), #REG_DWORD)
dxmsg$ + "durchgeführt!"
Else
dxmsg$ + "abgebrochen!"
EndIf
MessageRequester("Information!", dxmsg$, #PB_MessageRequester_Ok)
  Return
End
    
 
;}

End
Ich danke für eure hilfe ;)
Benutzeravatar
edel
Beiträge: 3667
Registriert: 28.07.2005 12:39
Computerausstattung: GameBoy
Kontaktdaten:

Beitrag von edel »

Code: Alles auswählen

Repeat
  Event = WaitWindowEvent()
  Select Event
    ; ///////////////////
    Case #PB_Event_Gadget
      EventGadget = EventGadget()
      EventType = EventType()      
      If EventGadget = #Button_2       
      ElseIf EventGadget = #Button_8
      :Goto close
      close:
      CloseWindow(#Window_0)     
      EndIf
    ; ////////////////////////
    Case #PB_Event_CloseWindow
      EventWindow = EventWindow()
      If EventWindow = #Window_0
        :Goto close
        CloseWindow(#Window_0)
        Break
      EndIf
  EndSelect
ForEver
End 
weil Break nie erreicht wird.
icecrusher
Beiträge: 62
Registriert: 01.03.2008 05:43
Wohnort: Hamm
Kontaktdaten:

Beitrag von icecrusher »

Hmm und wie mache ich es damit break erreicht wird?
Benutzeravatar
hardfalcon
Beiträge: 3447
Registriert: 29.08.2004 20:46

Beitrag von hardfalcon »

Hau mal deine Gotos raus, die machen mehr àrger als sie nutzen bringen, und bei unerfahrenen Programmierern wage ich mal zu behaupten dass sie gar keinen Nutzen bringen.
icecrusher
Beiträge: 62
Registriert: 01.03.2008 05:43
Wohnort: Hamm
Kontaktdaten:

Beitrag von icecrusher »

Ok, nun funktioniert es schonmal wenn ich das kreuz klicke, doch wenn ich Close klicke, bleibt der prozess bestehen :(
Benutzeravatar
edel
Beiträge: 3667
Registriert: 28.07.2005 12:39
Computerausstattung: GameBoy
Kontaktdaten:

Beitrag von edel »

Code: Alles auswählen

Repeat
  Event = WaitWindowEvent()
  Select Event
    ; ///////////////////
    Case #PB_Event_Gadget
      EventGadget = EventGadget()
      EventType = EventType()     
      If EventGadget = #Button_2       
      ElseIf EventGadget = #Button_8
        CloseWindow(#Window_0)     
        break
      EndIf
    ; ////////////////////////
    Case #PB_Event_CloseWindow
      EventWindow = EventWindow()
      If EventWindow = #Window_0
        CloseWindow(#Window_0)
        Break
      EndIf
  EndSelect
ForEver
End
icecrusher
Beiträge: 62
Registriert: 01.03.2008 05:43
Wohnort: Hamm
Kontaktdaten:

Beitrag von icecrusher »

edel hat geschrieben:

Code: Alles auswählen

Repeat
  Event = WaitWindowEvent()
  Select Event
    ; ///////////////////
    Case #PB_Event_Gadget
      EventGadget = EventGadget()
      EventType = EventType()     
      If EventGadget = #Button_2       
      ElseIf EventGadget = #Button_8
        CloseWindow(#Window_0)     
        break
      EndIf
    ; ////////////////////////
    Case #PB_Event_CloseWindow
      EventWindow = EventWindow()
      If EventWindow = #Window_0
        CloseWindow(#Window_0)
        Break
      EndIf
  EndSelect
ForEver
End
Wenn ich den anfang und den ende so ersetze wie du mir schilderst, dann kann ich klicken worauf ich will, da passiert nix :(

Und ja ich hab die Gadget events eingefügt -.-
Benutzeravatar
Kiffi
Beiträge: 10714
Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9

Beitrag von Kiffi »

@icecrusher: Bitte lesen!
hardfalcon hat geschrieben:Hau mal deine Gotos raus, die machen mehr àrger als sie nutzen bringen,
und bei unerfahrenen Programmierern wage ich mal zu behaupten dass sie
gar keinen Nutzen bringen.
dem stimme ich voll und ganz zu. Also, ich blicke überhaupt nicht, was da in
Deinem Code vor sich geht.

Wenn Du willens bist, Deinen Code ändern zu wollen, bin ich mir sicher, dass
wir Dir dabei helfen können. :-)

Grüße ... Kiffi
a²+b²=mc²
icecrusher
Beiträge: 62
Registriert: 01.03.2008 05:43
Wohnort: Hamm
Kontaktdaten:

Beitrag von icecrusher »

naja, ich weis nicht wie ich eine ganze befehlskette unter einem befehl bringe quasi ein Alias, deshalb das :gosub und :goto :/ aber wenn ihr mir wirklich helfen könnt, dann muss ich das ja wohl angehen...

also wo fang ich da am besten an? :(

herausforderung wird es sicherlich sein, denn normalerweise bin ich in Html, Php und MSL (Mirc Script Language) nen heller fuchs und hab da viel in meinen Zellen gespeichert^^
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

zum beispiel könntest du mit Flags arbeiten.

Code: Alles auswählen

Repeat
  Event = WaitWindowEvent()
  Select Event
    ; ///////////////////
    Case #PB_Event_Gadget
      EventGadget = EventGadget()
      EventType = EventType()     
      If EventGadget = #Button_2       
      ElseIf EventGadget = #Button_8
        EXIT = 1
      EndIf
    ; ////////////////////////
    Case #PB_Event_CloseWindow
      EventWindow = EventWindow()
      If EventWindow = #Window_0
        EXIT = 1
      EndIf
  EndSelect
Until EXIT
    CloseWindow(#Window_0)
End
Until is aber auch wieder geschmackssache.
manche stehen auf Break und ForEver, ich finds blöd.

andere zusammengefasste funktionen kannst du in procedures schreiben,
die du von mehreren stellen aus aufrufen kannst.

und statt den ganzen Ifs und Elses kannst auch mehrere selects schachteln.
musst nur gut einrücken und vernünftig kommentieren, damit du dich noch zurechtfindest.

grundsätzlich sollte man Goto überhaupt nicht verwenden.
das existiert nur noch für den notfall, wenn du wirklich wirklich ganz genau weißt was tu da tust.
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Antworten