Thanks for your reply, but disabling/enabling ScreenSaver by registry need a system restart and is not a good idea. As you are said, your second solution way put a scratch on the user face too.
I found a function in user32.dll for solving the problem. I hope my code be useful for other needers in features
; Usage : Disable/Enable Windows ScreenSaver feature
; Author: Morteza
;Disable Windows ScreenSaver
_ScreenSaverActive(False)
Sleep(10000)
;Enable Windows ScreenSaver
_ScreenSaverActive(True)
Func _ScreenSaverActive($bBoolean)
Local Const $SPI_SETSCREENSAVEACTIVE = 17
Local $lActiveFlag
Dim $lActiveFlag
Dim $retvaL
If $bBoolean Then
$lActiveFlag = 1
Else
$lActiveFlag = 0
EndIf
$dll = DllOpen("user32.dll")
$retvaL = DllCall($dll, "long", "SystemParametersInfo", "long", $SPI_SETSCREENSAVEACTIVE, "long", $lActiveFlag, "long", 0, "long", 0)
DllClose($dll)
EndFunc ;==>_ScreenSaverActive