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 | |