Autostart von beliebigen Programmen
Verfasst: 25.12.2008 00:22
Hier mal ein Versuch beliebige Programme mit PB zu starten um den Autostart zu entmüllen. Es hat genervt das man(n(frau))so lange warten musste bis man(n(frau) mit den rechner arbeiten konnte.
Hier der Code.
Ideen/kritiken bitte an rosenhoff@web.de oder hier
gefundene rechtschreibfehler kann man behalten
Common.pb
Textdatei Autostart.ini
Hier der Code.
Ideen/kritiken bitte an rosenhoff@web.de oder hier
gefundene rechtschreibfehler kann man behalten
Common.pb
Code: Alles auswählen
*******************************************************
; Autostart Version 1.0
; Visual Designer v3.92 build 1460
;- Window Constants
;
Enumeration
#Window_0
EndEnumeration
;- Gadget Constants
;
Enumeration
#Text_0
#Text_ram_1
#ProgressBar_0
#Text_2
#Text_IPAdresse_5
#Text_IP_6
#Text_Sub
#Text_Subnet
#Text_Gateway
#Text_Gate
#Listview_0
EndEnumeration
;- StatusBar Constants
;
Enumeration
#StatusBar_0
EndEnumeration
;- Fonts
Global FontID1
FontID1 = LoadFont(1, "Arial", 12, #PB_Font_Bold | #PB_Font_Italic)
Global FontID2
FontID2 = LoadFont(2, "Courier New", 10, #PB_Font_Bold)
Global FontID3
FontID3 = LoadFont(3, "Arial", 12, #PB_Font_Bold)
Global FontID4
FontID4 = LoadFont(4, "Courier New", 8)
Procedure Open_Window_0()
If OpenWindow(#Window_0, 438, 173, 460, 370, "2008 (c) Rosenhoff", #PB_Window_SystemMenu | #PB_Window_MinimizeGadget | #PB_Window_TitleBar| #PB_Window_BorderLess )
If CreateGadgetList(WindowID(#Window_0))
TextGadget(#Text_0, 30, 30, 400, 25, "Autostartmanager für "+Host_1, #PB_Text_Center | #PB_Text_Border)
SetGadgetFont(#Text_0, FontID1)
TextGadget(#Text_ram_1, 250, 65, 180, 25, RAM_1, #PB_Text_Center| #PB_Text_Border)
SetGadgetFont(#Text_ram_1, FontID2)
ProgressBarGadget(#ProgressBar_0, 30, 305, 400, 20, 0, 100000, #PB_ProgressBar_Smooth)
TextGadget(#Text_2, 250, 95, 180, 20, Mhz_1, #PB_Text_Center| #PB_Text_Border)
SetGadgetFont(#Text_2, FontID2)
TextGadget(#Text_IPAdresse_5, 70, 65, 175, 25, IP_1, #PB_Text_Center | #PB_Text_Border)
SetGadgetFont(#Text_IPAdresse_5, FontID3)
TextGadget(#Text_IP_6, 30, 65, 40, 25, "IP:", #PB_Text_Right)
SetGadgetFont(#Text_IP_6, FontID3)
TextGadget(#Text_Sub, 70, 95, 175, 20, SUB_1, #PB_Text_Center | #PB_Text_Border)
TextGadget(#Text_Subnet, 30, 95, 40, 20, "SubNet:", #PB_Text_Right)
TextGadget(#Text_Gateway, 160, 120, 175, 20, Gateway_1, #PB_Text_Center | #PB_Text_Border)
SetGadgetFont(#Text_Gateway, FontID2)
TextGadget(#Text_Gate, 105, 120, 55, 20, "Gateway:", #PB_Text_Right)
ListViewGadget(#Listview_0, 30, 150, 400, 145,#PB_ListView_Clickselect)
SetGadgetFont(#Listview_0, FontID4)
EndIf
EndIf
EndProcedure
;
; PureBUILD Build = 2 [generated by PureBUILD Plugin]
; IDE Options = PureBasic v4.00 (Windows - x86)
; CursorPosition = 44
; FirstLine = 22
; Folding = -
; EnableAsm
; EnableXP
; Executable = autostart.exe
Code: Alles auswählen
;******************************************************************************
;* *
;* (c) 31.05.2008 *
;* *
;******************************************************************************
;* *
;* Project: Autostartmanager *
;* [x]Win [ ]DOS [ ]DLL *
;* *
;* Version: 1.0.0.0 *
;* *
;******************************************************************************
; Autostart.pb
; Common.pb
;
; Autostart.ini im programmverzeichnis
;
;{ ############################################################################
;
;Zeit| Programmpfad | Startparameter | Arbeitsverzeichnis
;
; 0| C:\Programme\Stardock\ObjectDock\ObjectDock.exe| |
; 90| C:\Prog\GnuPG\GPGshell\GPGtray.exe| |
; 100| C:\Programme\MSI\Core Center\CoreCenter.exe | | C:\Programme\MSI\Core Center
; 110| C:\Programme\FRITZ!Box Monitor\FRITZBoxMonitor.exe | | C:\Programme\FRITZ!Box Monitor\
;
; 120| D:\System1\Extensis\Portfolio6\Portfolio Express.exe |-Startup | D:\System1\Extensis\Portfolio6
;
; 130| C:\Prog\FireFox\Mozilla Firefox\firefox.exe | | C:\Prog\FireFox\Mozilla Firefox
; 150| C:\Prog\Thunderbird\thunderbird.exe | | C:\Prog\Thunderbird
; 160| D:\Programme\Toshiba\Bluetooth Toshiba Stack\TosBtMng1.exe | | D:\Programme\Toshiba\Bluetooth Toshiba Stack\
; 190| C:\System1\Adobe\Distillr\acrotray.exe | |
;
; #############################################################################
;
; Struktur
; 1-999 wartezeit in sec für den Programmstart
; 0 --> läd das programm sofort und das nachfolgende nach programmstart
; | --> [alt]+[<] als trenner
; Programm mit vollständigen Pfad
; |
; Programmstartparameter
; |
; Arbeitsverzeichnis des Programms
;}
;******************************************************************************
;* Variablendefinition *
;******************************************************************************
EnableExplicit
;{ Konstante
#_Kon=Chr(124) ; entspricht dem string "|"
;}
;{ Globale Variablen
Global RAM_1.s="" ; Stringvariable für RAM-Größe
Global IP_1.s="" ; Stringvariable für IP-Adresse
Global SUB_1.s="" ; Stringvariable für Subnet-Mask
Global Gateway_1.s="" ; Stringvariable für Standardgateway
Global Host_1.s="" ; Stringvariable Hostname
Global Mhz_1.s="" ; Stringvariable CPU Frequenz
Global _zaehler.b=0 ; Zeilenzähler
Global _schritt.l=0 ; Schrittweite für die ProgressBar
;}
;{ Lokale Variablen
Define _time1.l=0 ; Startzeit (Hilfsvariable (Minute() und Second ()
Define _time2.l=0 ; Messzeit (Hilsvariable
Define _xz.b=0 ; Hilfsvariable für den Zähler der Struktur
Define _geladen.l=0 ; Hilfsvariable für Funktion API WaitForInputIdle_()
Define _WindowsMin.b=0 ; Variable für Fensterminfunktion
Define Event.l ; Ereignisvariable Fenster
Define GadgetID.w ; Ereignisvariable Gadget
Define EventType.w ; Was für ein ereignis ist eingetroffen
Define WindowID.w ; Fensternummer
;}
;{ Declaration der Proceduren
Declare.l Zeitdiff(_tx1.l) ; ermittelt die zeitdifferenz
; _tx1 ist ein Übergabeparameter vom typ long
Declare probar_(_xz.l) ; Zeichent Prozessbar mit übergabeparameter
Declare.b Zaehler_(); Zählen der ini Einträge
Declare.s MHerz_1() ; Auslesen der CPU Frequenz aus der registry
Declare.s RAM_() ; gibt String zurück über die Ramgröße
Declare Liste_() ; Einlesen der Listendaten in den ListViewGadget
Declare Daten_() ; Einlesen der Programmdaten aus der Autostart.ini
Declare IP_() ; Erzeuge eine Batchdatei und starten --> schreibt hilfsdatei
Declare String_IP() ; Öffnen der Textdatei und Auslesen der Daten
Declare _Beep(ton.s); erzeugt ein Systemton
;}
;{ Struktur der Programmparameter
Structure Programme_
Zeit.l
Prog_.s
Param_.s
Pfad_.s
EndStructure
;}
;******************************************************************************
;******************************************************************************
;* *
;* Programm *
;* *
;******************************************************************************
IncludeFile "Common.pb" ; Einbinden der Fensterbeschreibungsdaten
RAM_1=RAM_() ; Arbeitsspeicherberechnung aufrufen
Mhz_1=MHerz_1() ; Auslesen der CPU Frequenz aus der Registrie
IP_() ; IPAdresse auslesen
Open_Window_0() ; Fenster generieren
_zaehler=Zaehler_() ; Zählt die Listeneinträge um die größe der Struktur zu definieren
Global Dim Start_Param.Programme_(_zaehler) ; Dimensioniere die Struktur
Daten_() ; Daten einlesen
Liste_() ; Ausgabe der Daten in der Liste
_schritt=Round(90000/(_zaehler+1),1)
_time1=Date() ; Liest die aktuelle zeit aus
_Beep("1500,40,100,1000,50,0") ;erzeugt ein Systemton über die Prozedure _Beep
; *****************************************************************************
; * Ereignisschleife *
Repeat ;{ Start of the event loop
Event = WaitWindowEvent(10) ; Wartet bis ein Ereignis auftritt, aber nach 10 msec wird die schleife fortgesetzt
; Überprüft, ob in irgendeinem der geöffneten Fenster ein Ereignis stattfand
WindowID = EventWindow() ; Bestimmt das Fenster, in dem ein Ereignis stattfand.
GadgetID = EventGadget() ; Is it a gadget event?
EventType = EventType() ; The event type You can place code here, and use the result as parameters for the procedures
If Event = #PB_Event_Gadget
If GadgetID = #ProgressBar_0
ElseIf GadgetID = #Listview_0
EndIf
EndIf
; *****************************************************************************
; * Fenster minimieren nach 5 sec *
If _WindowsMin=0 ;{
_time2=Zeitdiff(_time1) ; proceduraufruf mit parameterübergabe
If _time2=>5
SetWindowState(#Window_0,#PB_Window_Minimize) ;minimiert Fenster
_WindowsMin=1 ; Verhindert ein erneutes mininieren
EndIf
EndIf ;}
; *****************************************************************************
If _xz<=_zaehler ; Sicherheitsabfrage wenn Schleifenzähler die Anzahl der
; Listeneinträge übersteigt
; *****************************************************************************
; * Auslesen der Programmdaten und starten der programme *
; * Beginnend mit der Startzeit 0 *
If Start_Param(_xz)\Zeit=0 ;{
_geladen = RunProgram(Start_Param(_xz)\Prog_,Start_Param(_xz)\Param_,Start_Param(_xz)\Pfad_)
; Variable [_geladen] bekommt nach dem Programmstart die Prozessnummer zugewiesen
_time1=Date() ; Liest die aktuelle zeit aus --> zeitpräzisierung
probar_(_xz) ; prozeduraufruf Fortschrittsbalken
; *****************************************************************************
; WaitForInputIdle fragt ab ob das Programm mit der Prozessnummer
; "_geladen" gestartet, und füt Benutzereingaben bereit ist
Repeat
Delay(10)
Until WaitForInputIdle_(_geladen, 1000) < 0
_xz=_xz+1
EndIf ;}
; *****************************************************************************
; * Auslesen der Programmdaten und starten der programme *
; * startzeiten größer 0
If Zeitdiff(_time1)>=Start_Param(_xz)\Zeit ;{
; If Date()-_time1>=Start_Param(_xz)\Zeit ohne benutzung der Procedure Zeitdiff(
_geladen = RunProgram(Start_Param(_xz)\Prog_,Start_Param(_xz)\Param_,Start_Param(_xz)\Pfad_)
_Beep("1900,40,0")
probar_(_xz) ; prozeduraufruf Fortschrittsbalken
; *****************************************************************************
; WaitForInputIdle fragt ab ob das Programm mit der Prozessnummer
; "_geladen" gestartet, und füt Benutzereingaben bereit ist
Repeat
Delay(10)
Until WaitForInputIdle_(_geladen, 1000) < 0
_xz=_xz+1
EndIf
; *****************************************************************************
; * *
ElseIf _xz>_zaehler ;wenn liste abgearbeitet programm beenden
Delay(5000) ;Pause bis programmfenster geschlossen wird
_Beep("1000,40,100,1500,50,0")
End ; beendet das Programm
EndIf ;}
Until Event = #PB_Event_CloseWindow ;} End of the event loop
End
;******************************************************************************
;******************************************************************************
;* *
;* Prozeduren *
;* *
;******************************************************************************
Procedure.s RAM_() ; gibt String zurück
;*****************************************************************************
Protected Memory.MEMORYSTATUS ; lokale geschütze Variable vom Typ MEMORYSTATUS
Protected _ram.s ; lokale geschützte Stringvariable
GlobalMemoryStatus_(@Memory) ; Pointer zu Memory, welche als MEMORYSTATUS declariert wurde
_ram = Str(Memory\dwTotalPhys/1024/1024)+" MByte Ram"
ProcedureReturn _ram ; rückgabewert
EndProcedure
Procedure.s MHerz_1() ; Auslesen der CPU Frequenz aus der registry
; benötigt die UserLib JHRegistry_420 von / by Jens Haipeter
;*****************************************************************************
Protected HKey.l ; lokale geschütze Variable
Protected Skey.s
Protected _mhz.s=""
HKey = #HKEY_LOCAL_MACHINE
Skey ="HARDWARE\DESCRIPTION\System\CentralProcessor\0\"
_mhz=Str(JHRegGetDWord (HKey, Skey, "~MHz"))+" Mhz CPU"
ProcedureReturn _mhz ; rückgabewert
EndProcedure
Procedure String_IP() ; Öffnen der Textdatei und Auslesen der Daten IP_info.tmp
;*****************************************************************************
; lokale Variablen
Define _Zeile.s="" ; String der ausgelesenen Zeile
Define _Stringlaenge.w=0
Define _start.b=0 ; Hilsvariable
Define _x.b=0 ; Hilfsvariable For To Next
Define _hostx.b=0 ; Hilfsvariable für Host abfrage
Define _ipx.b=0 ; Hilfsvariable füt Ip abfrage
Define _gateway.b=0 ; Hilfsvariable füt Gateway abfrage
Define _sub.b=0 ; Hilfsvariable füt Subnetzmaske
;****************************************************************************
If ReadFile(1,"c:\IP_Info.tmp")
While Eof(1) = 0 ; sich wiederholende Schleife bis das Ende der Datei ("end of file")
; erreicht ist
_Zeile=ReadString(1) ; liest den string aus(Zeile)
_Zeile=Trim(_Zeile) ; entfernt vorrangestellte und nachfolgende Leerzeichen
_Stringlaenge=Len(_Zeile) ; Berechnet die stringlänge
If _hostx=0 ;{ Hostname auslesen
If FindString(_Zeile,"Hostname",1)>0
_start=FindString(_Zeile,":",1)
For _x=_start+1 To _Stringlaenge
Host_1=Host_1+Mid(_Zeile,_x,1)
Next
Host_1=LTrim(Host_1)
_hostx=1 ;Variable zum Überspringen der Abfrage
EndIf
EndIf ;}
If _ipx=0 ;{ IP Adresse auslesen
If FindString(_Zeile,"IP-Adresse",1)>0
_start=FindString(_Zeile,":",1)
For _x=_start+1 To _Stringlaenge
IP_1=IP_1+Mid(_Zeile,_x,1)
Next
IP_1=LTrim(IP_1)
_ipx=1
EndIf
EndIf ;}
If _sub=0 ;{ Subnetzmaske auslesen
If FindString(_Zeile,"Subnetzmaske",1)>0
_start=FindString(_Zeile,":",1)
For _x=_start+1 To _Stringlaenge
SUB_1=SUB_1+Mid(_Zeile,_x,1)
Next
SUB_1=LTrim(SUB_1)
_sub=1
EndIf
EndIf ;}
If _gateway=0 ;{ Standardgateway auslesen
If FindString(_Zeile,"Standardgateway",1)>0
_start=FindString(_Zeile,":",1)
For _x=_start+1 To _Stringlaenge
Gateway_1=Gateway_1+Mid(_Zeile,_x,1)
Next
Gateway_1=LTrim(Gateway_1)
_gateway=1
EndIf
EndIf ;}
Wend
CloseFile(1) ; schließen der textdatei c:\IP_Info.tmp
; *****************************************************************************
;Wenn kein Netzwerk vorhanden ausfragen der Reg
If Host_1="" ;{
Protected HKey.l ; lokale geschütze Variable
Protected Skey.s
; Schlüsselparameter
HKey = #HKEY_LOCAL_MACHINE
Skey = "SYSTEM\ControlSet001\Control\ComputerName\ActiveComputerName"
Host_1=JHRegGetString(HKey.l, Skey.s,"ComputerName")+" ;-)"
EndIf ;}
; bei leerer IP schreibe 0.0.0.0
If IP_1="" ;{
IP_1="0.0.0.0"
EndIf ;}
; *****************************************************************************
Else
MessageRequester("Fehler","Konnte Datei nicht öffnen!")
EndIf
EndProcedure
Procedure IP_() ; Erzeuge eine Batchdatei und starten --> schreibt hilfsdatei
;*****************************************************************************
OpenConsole() ; öffnet ein consolenfenster
ConsoleColor(15,1) ; definiert die fensterfarben für hintergrund, schriftfarbe
ConsoleTitle("Autostartmanager") ; Fenstertitel
EnableGraphicalConsole(1) ; umschalten im graphikmodus um den Hintergrund einzufärben
ClearConsole() ; leeren des consolenfensters und damit füllen des hintergrundes
PrintN("Moment bitte.........") ; Textausgabe im consolenfenster
EnableGraphicalConsole(0) ; zurückstellen in den textmodus
; Erzeuge eine Batchdatei
If CreateFile(1,"c:\IPlesen.bat") ; Konnte eine Datei geöffnet werden
; schreibt die werte in die datei
WriteStringN(1,"@echo off")
WriteStringN(1,"arp -d")
WriteStringN(1,"ipconfig /flushdns") ; Leert den DNS-Auflösungscache.
;WriteStringN(1,"ipconfig /release") ; Gibt die IP-Adresse für den angegebenen Adapter frei.
;WriteStringN(1,"ipconfig /renew") ; Erneuert die IP-Adresse für den angegebenen Adapter.
WriteStringN(1,"ipconfig /all > c:\IP_Info.tmp")
WriteStringN(1,"arp -a >> c:\IP_Info.tmp")
CloseFile(1)
; *****************************************************************************
; * Kommentare für eine andere Möglichkeit die Batchdatei zu starten *
;{ Programm=RunProgram("c:\IPlesen.bat","","c:\",#PB_Program_Open)
;
; startet die Batchdatei und weist der Variable die programmnummer zu
; #PB_Program_Open-->um mit diesem zu kommunizieren oder Informationen darüber zu erhalten
;}
; *****************************************************************************
; * Startet die Batch und wartet auf das Prog-ende *
RunProgram("c:\IPlesen.bat","","c:\",#PB_Program_Wait)
; *****************************************************************************
;{ While ProgramRunning(Programm)<>0
; ; Debug Programm
; Wend
;
; durchläuft die schleife bis die bedingung nicht mehr erfüllt ist
;} ProgramRunning(Programm)=0 --> Programmende
;{ CloseProgram(Programm)
;} Schließt den Datenkanal zum Programm
DeleteFile("c:\IPlesen.bat") ; löschen der batchdatei
; *****************************************************************************
String_IP() ; aufrufen der procedure string_ip() zum
; auslesen der informationen
Else
MessageRequester("Fehler !!!!!","Fehlende Rechte! Schreibrechte überprüfen")
End
EndIf
DeleteFile("c:\IP_Info.tmp") ; löschen der Hilfsdatei --> ergebnis der batchdatei
CloseConsole() ; schließen des consolenfenster
EndProcedure
Procedure.l Zeitdiff(_tx1.l) ; ;ermittelt die zeitdifferenz
;*****************************************************************************
Protected _ty.l ; Momentanzeit
_ty=Date()
_ty=_ty-_tx1
ProcedureReturn _ty ; liefert den rückgabewert und beendet die prozedure
EndProcedure
Procedure Daten_() ; Einlesen der Programmdaten aus der Autostart.ini
;{ In eine Procedure verpackt, damit die Variablen mir nicht vor die Füße liegen
; und Optimierungen einfacher sind
;} die konstante #_Kon wurde definiert am anfang des prog
;*****************************************************************************
Define _Zeile.s="" ; String der ausgelesenen Zeile
Define _Stringlaenge.w=0
Define _start.b=0 ; Hilsvariable
Define _x.l=0 ; Hilfsvariable For To Next
Define _y.l=0
Define _z=0 ; Hilfsvariable für den zählindex
Define _text$
If ReadFile(2,"Autostart.ini") ; Öffnen der Textdatei und Auslesen der Daten
While Eof(2) = 0 ; sich wiederholende Schleife bis das Ende der Datei ("end of file") erreicht ist
_Zeile=ReadString(2) ; liest den string aus(Zeile)
_Zeile=Trim(_Zeile) ; entfernt vorrangestellte und nachfolgende Leerzeichen
If Len(_Zeile)>0
_Stringlaenge=Len(_Zeile) ; Berechnet die stringlänge
_start=FindString(_Zeile,#_Kon,1) ; sucht den teilstring "|" der in der konstante #_Kon definiert ist
_text$=""
For _x=1 To _start-1
_text$=_text$+Mid(_Zeile,_x,1)
Next
_text$=Trim(_text$)
Start_Param(_z)\Zeit=Val(_text$); Zeit der Unterbrechung
_y=_start+1
_start=FindString(_Zeile,#_Kon,_y)
_text$=""
For _x=_y To _start-1
_text$=_text$+Mid(_Zeile,_x,1)
Next
_text$=Trim(_text$)
Start_Param(_z)\Prog_=_text$ ; Pfad der programme
_y=_start+1
_start=FindString(_Zeile,#_Kon,_y)
_text$=""
For _x=_y To _start-1
_text$=_text$+Mid(_Zeile,_x,1)
Next
_text$=Trim(_text$)
Start_Param(_z)\Param_=_text$ ; Parameter für den Programmstart
_y=_start+1
_text$=""
For _x=_y To _Stringlaenge
_text$=_text$+Mid(_Zeile,_x,1)
Next
_text$=Trim(_text$)
Start_Param(_z)\Pfad_=_text$ ; Pfadangaben
_z=_z+1 ; zähler um 1 erhöhen
EndIf
Wend
CloseFile(2) ; schließt die Textdatei
EndIf
; Sortieren der struktur Programme_ nach der wartezeit zum programmstart
SortStructuredArray( Start_Param (),0, OffsetOf(Programme_\Zeit),#PB_Sort_Long)
EndProcedure
Procedure Liste_() ; Einlesen der Listendaten in den ListViewGadget
;*****************************************************************************
Protected _text$
Protected _x.l=0,_x1.l=0
Protected _y.l=0,_y1.l=0,_y2.l=0
For _x=0 To _zaehler
_text$=Str(Start_Param(_x)\Zeit) ; Pausenwert auslesen und in ein string umwandlen
If Start_Param(_x)\Zeit<10
_text$=" "+_text$ ; Führende leerstellen einfügen
ElseIf Start_Param(_x)\Zeit<100
_text$=" "+_text$ ; -"- -"-
EndIf
_text$=_text$+" sec " ; einheit sec anfügen
_text$=_text$+Start_Param(_x)\Prog_
AddGadgetItem(#Listview_0,_x,_text$) ; ausgabe des strings in der liste
While WaitWindowEvent(1): Wend
Next
;While WaitWindowEvent(10): Wend
EndProcedure
Procedure.b Zaehler_() ; Zählen der ini Einträge
;*****************************************************************************
Protected _Zeile.s="" ; String der ausgelesenen Zeile
Protected _x.b ;Zählvariable
If ReadFile(2,"Autostart.ini") ; Öffnen der Textdatei und Zählen der strings
While Eof(2) = 0 ; sich wiederholende Schleife bis das Ende der Datei ("end of file") erreicht ist
_Zeile=ReadString(2) ; liest den string aus(Zeile)
_Zeile=Trim(_Zeile) ; entfernt vorrangestellte und nachfolgende Leerzeichen
If Len(_Zeile)>0
_x=_x+1
EndIf
Wend
CloseFile(2)
Else
MessageRequester("Fehler","Konnte Datei nicht öffnen!")
EndIf
_x=_x-1 ; weil die struktur mit 0 beginnt
ProcedureReturn _x
EndProcedure
Procedure probar_(_xz.l) ;zeichnet ein Fortschrittsbalken
;*****************************************************************************
Static _x.l,_x1.l,_y.l,_y1.l,_y2.l
If _xz=0
_y2=10000 : _y1=_y2+_schritt
EndIf
For _x1=_y2 To _y1
SetGadgetState(#ProgressBar_0,_x1) ; Fortschrittsbalken aktivieren und berechnen
Next
_y2=_x1: _y1=_y1+_schritt
EndProcedure
Procedure _Beep(ton.s) ;erzeugt ein ton über den Systemlautsprecher
; eigentlich müsste man noch abfragen ob dieser vorhanden ist, aber die zeiten
; sind ja vorbei ;-)
; Parameterübergabe : _Beep("x,y,z,x,y,z,x,y,z")
; x= Tonwert 37-9000 ?? soll bis 32,767 gehen ??
; y= Tondauer
; z= pausenzeit 0=keine pause
Protected _im.l=0 , freq.l=0, laeng.l=0, pause.l=0
Repeat
freq= Val(StringField(ton,_im+1,","))
laeng = Val(StringField(ton,_im+2,","))
pause= Val(StringField(ton,_im+3,","))
_im+3
;Zahlenbereich für Beep -range 37 through 32767
If freq Or laeng : Beep_(freq,laeng) :Delay(pause): EndIf
Until freq = 0 And laeng = 0
EndProcedure
;;
; PureBUILD Build = 4 [generated by PureBUILD Plugin]
; IDE Options = PureBasic v4.20 (Windows - x86)
; CursorPosition = 343
; FirstLine = 14
; Folding = AX5-vH-d8
; EnableAsm
; EnableXP
; Executable = autostart.exe
; CPU = 3
; DisableDebugger
; IncludeVersionInfo
; VersionField0 = 1.0.0.0
; VersionField1 = 1.0.0.0
; VersionField3 = Autostartmanager
; VersionField4 = 1.0
; VersionField5 = 1.0
; VersionField7 = Autostartmanager.exe
; VersionField8 = Autostartmanager.exe
; VersionField9 = (c) Rosenhoff
; VersionField15 = VOS_DOS_WINDOWS32
; VersionField16 = VFT_APP
; VersionField17 = 0407 German (Standard)
; UseIcon = icon.ico
; Executable = autostart_1.exe
Code: Alles auswählen
0| C:\Programme\Stardock\ObjectDock\ObjectDock.exe| |
90| C:\Prog\GnuPG\GPGshell\GPGtray.exe| |
100| C:\Programme\MSI\Core Center\CoreCenter.exe | | C:\Programme\MSI\Core Center
110| C:\Programme\FRITZ!Box Monitor\FRITZBoxMonitor.exe | | C:\Programme\FRITZ!Box Monitor\
120| D:\System1\Extensis\Portfolio6\Portfolio Express.exe |-Startup | D:\System1\Extensis\Portfolio6
130| C:\Prog\FireFox\Mozilla Firefox\firefox.exe | | C:\Prog\FireFox\Mozilla Firefox
150| C:\Prog\Thunderbird\thunderbird.exe | | C:\Prog\Thunderbird
160| D:\Programme\Toshiba\Bluetooth Toshiba Stack\TosBtMng1.exe | | D:\Programme\Toshiba\Bluetooth Toshiba Stack\
190| C:\System1\Adobe\Distillr\acrotray.exe | |