Einzelnen Beitrag anzeigen

Benutzerbild von The-X
The-X

Registriert seit: 31. Aug 2003
Ort: Woffelsbach / user.exe ;)
377 Beiträge
 
Delphi 7 Personal
 
#11

Re: Autostart bei USB-Stick?????

  Alt 3. Dez 2004, 21:53
gab es da nicht einen Registry-Eintrag der festlegt für welche Laufwerke AutoRun aktiv ist ?

Code:
'Declaration of some constants
DRIVE_UNKNOWN=1   'Bit 0
DRIVE_NO_ROOT=2   'Bit 1
DRIVE_REMOVABLE=4 'Bit 2 
DRIVE_FIXED=8     'Bit 3 
DRIVE_REMOTE=16   'Bit 4 
DRIVE_CDROM=32    'Bit 5 
DRIVE_RAMDISK=64  'Bit 6 
DRIVE_FUTURE=128  'Bit 7 

sPathValue="HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\NoDriveTypeAutoRun"

'Called when the Plugin is started
SUB Plugin_Initialize
 i=RegReadValue(sPathValue)
 if IsEmpty(i)=true then
    i=145
 end if

 if IsNumeric(i)=false then
    Call MsgWarning("The current AutoPlay feature settings in your registry are in an incorrect form (REG_BINARY instead of REG_DWORD). These values will be ignored and the default values, as they are out of the box, will be displayed.")
    i=145
 end if


 'TH: Looks stupid, I know! but there is no way to get OR working with variants!
 'AK: JScript ||. Should work

 dim b1,b2,b3,b4,b5,b6,b7
 i=OrHelper(i,DRIVE_FUTURE,b1)
 i=OrHelper(i,DRIVE_RAMDISK,b2)
 i=OrHelper(i,DRIVE_CDROM,b3)
 i=OrHelper(i,DRIVE_REMOTE,b4)
 i=OrHelper(i,DRIVE_FIXED,b5)
 i=OrHelper(i,DRIVE_REMOVABLE,b6)
 i=OrHelper(i,DRIVE_NO_ROOT,b7)


 '//If the bit is set, AutoRun is DISABLED
 Call SetBox(b3,1)
 Call SetBox(b6,2)
 Call SetBox(b5,3)
 Call SetBox(b4,4)
END SUB

Function OrHelper(CurValue,CheckVal,CheckValSet)
 i=CurValue

 if i>=CheckVal then
    CheckValSet=true
    i=i-CheckVal
 else
    CheckValSet=false
 end if

 OrHelper=i
End Function

Sub SetBox(CurVal,Elm)
    if CurVal=true then
       SetUIElement elm,false
    else
       SetUIElement elm,true
    end if
End Sub


'Called when the Plugin should validate the Data the user has entered
SUB Plugin_CheckData(ElementIndex)
END SUB

'Called when the Plugin should apply the changes
SUB Plugin_Apply(ElementIndex,ElementSubIndex)
 i=0

 'Always disable autorun for the following drives
 'according to Q136214 from MS KB
 i=i+DRIVE_UNKNOWN
 i=i+DRIVE_FUTURE
 '//Needed??? i=i+DRIVE_NO_ROOT


 'No let's see what the user wants
 if GetUIElement(1)=false then i=i+DRIVE_CDROM
 if GetUIElement(2)=false then i=i+DRIVE_REMOVABLE
 if GetUIElement(3)=false then i=i+DRIVE_FIXED
 if GetUIElement(4)=false then i=i+DRIVE_REMOTE


 Call RegWriteValue(sPathValue,i,2)
 Call Logoff()
END SUB

'Called when the Plugin is about to be removed from memory
SUB Plugin_Terminate
END SUB
Das ist das Script aus XTeq-XSetup dazu
WGET ftp://root@fbi.us.gov/secret/worldreign.exe <- damit werde ich die Weltherrschaft an mich reissen!
=> irc://irc.quakenet.eu.org:6667/delphi.de da werden Sie auch (manchmal) geholfen
  Mit Zitat antworten Zitat