امتیاز موضوع:
  • 0 رأی - میانگین امتیازات: 0
  • 1
  • 2
  • 3
  • 4
  • 5
از کار انداختن اسکرین سیور
نویسنده پیام
kimiafars آفلاین
کاربر با تجربه
****

ارسال‌ها: 819
موضوع‌ها: 71
تاریخ عضویت: فروردین ۱۳۸۶

تشکرها : 663
( 1140 تشکر در 512 ارسال )
ارسال: #1
از کار انداختن اسکرین سیور
با سلام به همه
دوستان من یه برنامه نوشتم که به یه سخت افزار وصله و هر بار که سخت افزار دستور میده یه عکس رو نشون میده
مشکل اینجاست که بعد از چند وقت میره رو اسکرین سیور و صفحه سیاه میشه و تا کیبورد رو نزنی خارج نمیشه و روی برنامه نمیاد
اگر کسی میتونه کمکم کنه ممنونش میشم
چطوری برنامه وی بی اسکرین سیور رو از کار بندازه که مانیتور خاموش نشه
ممنون از همه

تولید دیمر قناری و دستگاههای کنترل سالن هیدروپونیک و اکواپونیک(انبردست)anbordast.ir[url=anbordast.ir][/url]
۲۴-اسفند-۱۳۸۹, ۱۳:۲۷:۰۰
ارسال‌ها
پاسخ
تشکر شده توسط : mahdi321
hamed_Arfaee آفلاین
مدیر بخش
*****

ارسال‌ها: 1,334
موضوع‌ها: 231
تاریخ عضویت: تير ۱۳۸۳

تشکرها : 1250
( 2635 تشکر در 730 ارسال )
ارسال: #2
RE: از کار انداختن اسکرین سیور
با سلام
نمی دونم جواب بده یا نه
کد:
http://stackoverflow.com/questions/4964302/programmatically-reset-windows-xp-idle-time

حامد ارفعی

موفقيت، پيش رفتن است، نه به نقطه ي پايان رسيدن.(آنتوني رابينز)


تریگرها در SQL server

آیا میدانید SQL ای
۲۴-اسفند-۱۳۸۹, ۱۷:۵۱:۱۵
وب سایت ارسال‌ها
پاسخ
تشکر شده توسط : mahdi321
kimiafars آفلاین
کاربر با تجربه
****

ارسال‌ها: 819
موضوع‌ها: 71
تاریخ عضویت: فروردین ۱۳۸۶

تشکرها : 663
( 1140 تشکر در 512 ارسال )
ارسال: #3
RE: از کار انداختن اسکرین سیور
با تشکر اما چیز بدردبخوری نبود میتونید یه منبع دیگه معرفی بفرمائید

تولید دیمر قناری و دستگاههای کنترل سالن هیدروپونیک و اکواپونیک(انبردست)anbordast.ir[url=anbordast.ir][/url]
۲۵-اسفند-۱۳۸۹, ۱۳:۵۴:۱۶
ارسال‌ها
پاسخ
تشکر شده توسط : mahdi321
hamed_Arfaee آفلاین
مدیر بخش
*****

ارسال‌ها: 1,334
موضوع‌ها: 231
تاریخ عضویت: تير ۱۳۸۳

تشکرها : 1250
( 2635 تشکر در 730 ارسال )
ارسال: #4
RE: از کار انداختن اسکرین سیور
چرا بابا چیزای قشنگی نوشتن که :

نقل قول: If you need the display to stay on for example, you would call SetThreadExecutionState(ES_DISPLAY_REQUIRED|ES_CONTINUOUS);

On 2000/XP you could use the ES_USER_PRESENT flag (Does not work on Vista+)
برای اینکه صفحه نمایش در اختیار شما باشه میتونین از این تابع استفاده کنین
یعنی حتی نذاره سیستم بخوابه کلا سیستم رو به برنامه شما مقید کنه .
اینم مثالش برای وی بی :
ولی نمیدونم جواب بده یا نه

کد:
Private Declare Function SetThreadExecutionState Lib "kernel32" (ByVal esFlags As Long) As Long
Private Const ES_SYSTEM_REQUIRED = &H1
Private Const ES_DISPLAY_REQUIRED = &H2
Private Const ES_CONTINUOUS = &H80000000
Private Sub Form_Load()
Dim lReturn As Long
lReturn = SetThreadExecutionState(ES_SYSTEM_REQUIRED)
End Sub
Private Sub Form_Terminate()
Dim lReturn As Long
lReturn = SetThreadExecutionState(ES_CONTINUOUS)
End Sub

منبع



ولی فقط برای کنترل اسکرین سیور میشه کارای دیگه ای هم کرد :
یک :
موقع اجرا شدن برنامه جلوی اجرای اسکرین سیور رو گرفت و موقع خروج دوباره ریست کرد :
کد:
Private Const SPI_SETSCREENSAVEACTIVE = 17
Private Const SPI_GETSCREENSAVEACTIVE = 16
Private Const SPIF_SENDWININICHANGE = &H2
Private Const SPIF_UPDATEINIFILE = &H1
Private Declare Function SystemParametersInfo Lib "user32" Alias _
    "SystemParametersInfoA" (ByVal uAction As Long, ByVal uParam As Long, _
    ByRef lpvParam As Any, ByVal fuWinIni As Long) As Long
Function SetScreenSaverState(ByVal enabled As Boolean) As Boolean
    Dim fuWinIni As Long
    SetScreenSaverState = SystemParametersInfo(SPI_SETSCREENSAVEACTIVE, enabled, _
        ByVal 0&, fuWinIni) <> 0
        
End Function
Private Sub Form_Load()
    SetScreenSaverState (False)
End Sub
Private Sub Form_Terminate()
    SetScreenSaverState (True)
End Sub
منبع
و یه راه هم این که موقع اجرا شدن اسکرین سیور یه کلید بفرستیم :

کد:
Private Declare Function SystemParametersInfo Lib "user32" Alias "SystemParametersInfoA" (ByVal uiAction As Long, ByVal uiParam As Long, pvParam As Any, ByVal fWInIni As Long) As Boolean
Private Const SPI_GETSCREENSAVEACTIVE As Long = &H10
Private Const SPI_GETSCREENSAVERRUNNING As Long = &H72
Private Sub Form_Load()
    Dim bActive As Boolean
    SystemParametersInfo SPI_GETSCREENSAVEACTIVE, 0, bActive, False
    If bActive Then
        Timer1.enabled = True
    Else
        Timer1.enabled = False
    End If
End Sub
Private Sub Timer1_Timer()
    Dim bRunning As Boolean
        SystemParametersInfo SPI_GETSCREENSAVERRUNNING, 0, bRunning, False
    If bRunning Then
        SendKeys "-"
    End If
End Sub
منبع

حامد ارفعی

موفقيت، پيش رفتن است، نه به نقطه ي پايان رسيدن.(آنتوني رابينز)


تریگرها در SQL server

آیا میدانید SQL ای
۲۵-اسفند-۱۳۸۹, ۱۵:۳۰:۲۵
وب سایت ارسال‌ها
پاسخ
تشکر شده توسط : kimiafars, mahdi321
kimiafars آفلاین
کاربر با تجربه
****

ارسال‌ها: 819
موضوع‌ها: 71
تاریخ عضویت: فروردین ۱۳۸۶

تشکرها : 663
( 1140 تشکر در 512 ارسال )
ارسال: #5
RE: از کار انداختن اسکرین سیور
سلام با اون کدها هیچکدوم نشد ولی از سند کی کمک گرفتم شد البته باید تست کنم ببینم
اگه مانیتور خاموش نشه درسته ولی اسکرین سیور رو از کار میندازه
ممنون دوست عزیز

تولید دیمر قناری و دستگاههای کنترل سالن هیدروپونیک و اکواپونیک(انبردست)anbordast.ir[url=anbordast.ir][/url]
۲۵-اسفند-۱۳۸۹, ۱۹:۲۲:۳۳
ارسال‌ها
پاسخ
تشکر شده توسط : mahdi321
joker آفلاین
کاربر با تجربه
****

ارسال‌ها: 798
موضوع‌ها: 67
تاریخ عضویت: آذر ۱۳۸۵

تشکرها : 849
( 3655 تشکر در 908 ارسال )
ارسال: #6
RE: از کار انداختن اسکرین سیور
(۲۴-اسفند-۱۳۸۹, ۱۳:۲۷:۰۰)kimiafars نوشته است: با سلام به همه
دوستان من یه برنامه نوشتم که به یه سخت افزار وصله و هر بار که سخت افزار دستور میده یه عکس رو نشون میده
مشکل اینجاست که بعد از چند وقت میره رو اسکرین سیور و صفحه سیاه میشه و تا کیبورد رو نزنی خارج نمیشه و روی برنامه نمیاد
اگر کسی میتونه کمکم کنه ممنونش میشم
چطوری برنامه وی بی اسکرین سیور رو از کار بندازه که مانیتور خاموش نشه
ممنون از همه

خب چرا يه رايت كليك نميكني روي دسكتاپ توي تنظيمات و كلا اسكرين سيور را ديزيبل نميكني؟

پيوست :
کد:
procedure SimulateKey(key:byte;Extra:Dword);
begin
keybd_event(key,extra,0,0);
keybd_event(key,extra,KEYEVENTF_KEYUP,0);
end;

[تصویر:  sajdelogo.gif]
۲۵-اسفند-۱۳۸۹, ۱۹:۳۵:۵۶
ارسال‌ها
پاسخ
تشکر شده توسط : mahdi321
kimiafars آفلاین
کاربر با تجربه
****

ارسال‌ها: 819
موضوع‌ها: 71
تاریخ عضویت: فروردین ۱۳۸۶

تشکرها : 663
( 1140 تشکر در 512 ارسال )
ارسال: #7
RE: از کار انداختن اسکرین سیور
دیزیبل کردم اما مشکل از جای دیگست مانیتور هم میره رو اسکرین سیور

تولید دیمر قناری و دستگاههای کنترل سالن هیدروپونیک و اکواپونیک(انبردست)anbordast.ir[url=anbordast.ir][/url]
۲۵-اسفند-۱۳۸۹, ۲۲:۲۹:۳۹
ارسال‌ها
پاسخ
تشکر شده توسط : mahdi321
joker آفلاین
کاربر با تجربه
****

ارسال‌ها: 798
موضوع‌ها: 67
تاریخ عضویت: آذر ۱۳۸۵

تشکرها : 849
( 3655 تشکر در 908 ارسال )
ارسال: #8
RE: از کار انداختن اسکرین سیور
(۲۵-اسفند-۱۳۸۹, ۲۲:۲۹:۳۹)kimiafars نوشته است: دیزیبل کردم اما مشکل از جای دیگست مانیتور هم میره رو اسکرین سیور

يعني مانيتور هوشمنده خودش اسكرين سيور داره ؟ بابا اي ول :)

SendMessage(Application.Handle, WM_SYSCOMMAND, SC_MONITORPOWER, 1);

اون 1 را بزاري 0 خاموش ميشه مانيتور وبرعكس

خودت مانيتور را خاموش روشن كن..

[تصویر:  sajdelogo.gif]
(آخرین ویرایش در این ارسال: ۲۵-اسفند-۱۳۸۹, ۲۳:۰۱:۳۰، توسط joker.)
۲۵-اسفند-۱۳۸۹, ۲۳:۰۱:۱۲
ارسال‌ها
پاسخ
تشکر شده توسط : mahdi321
Payman62 آفلاین
مدیر بخش ویژوال بیسیک
*****

ارسال‌ها: 2,273
موضوع‌ها: 149
تاریخ عضویت: اسفند ۱۳۸۴

تشکرها : 1308
( 3661 تشکر در 942 ارسال )
ارسال: #9
RE: از کار انداختن اسکرین سیور
(۲۵-اسفند-۱۳۸۹, ۲۳:۰۱:۱۲)joker نوشته است:
(۲۵-اسفند-۱۳۸۹, ۲۲:۲۹:۳۹)kimiafars نوشته است: دیزیبل کردم اما مشکل از جای دیگست مانیتور هم میره رو اسکرین سیور

يعني مانيتور هوشمنده خودش اسكرين سيور داره ؟ بابا اي ول :)

SendMessage(Application.Handle, WM_SYSCOMMAND, SC_MONITORPOWER, 1);

اون 1 را بزاري 0 خاموش ميشه مانيتور وبرعكس

خودت مانيتور را خاموش روشن كن..

سلام.

من که تا حالا مانیتوری ندیدم خودش بره رو اسکرین. فکر میکنم اشتباه میکنه دوستمون.

جوکر جان این کد مانیتور رو خاموش روشن میکنه که بعد از روشن شدن مانیتور باید موس تکون بخوره تا تصویر بیاد.
۲۷-اسفند-۱۳۸۹, ۱۴:۴۳:۵۵
ارسال‌ها
پاسخ
تشکر شده توسط : mahdi321
Payman62 آفلاین
مدیر بخش ویژوال بیسیک
*****

ارسال‌ها: 2,273
موضوع‌ها: 149
تاریخ عضویت: اسفند ۱۳۸۴

تشکرها : 1308
( 3661 تشکر در 942 ارسال )
ارسال: #10
RE: از کار انداختن اسکرین سیور
سلام.
از این کد استفاده کن.

کد:
Private Const SPI_GETSCREENSAVEACTIVE = 16&
Private Const SPI_SETSCREENSAVEACTIVE = 17&
Private Declare Function SystemParametersInfo Lib "user32" Alias "SystemParametersInfoA" (ByVal uAction As Long, ByVal uParam As Long, ByRef lpvParam As Any, ByVal fuWinIni As Long) As Long

'Active = True  - To Activate
'Active = False - To Deactivate
Public Function ScreenSaver(Active As Boolean) As Boolean
  Dim a As Long
  Dim r As Long
  
  a = Abs(Active) 'Needs 1 or 0
  r = SystemParametersInfo(SPI_SETSCREENSAVEACTIVE, a, 0, 0)
  ScreenSaver = (r > 0)
End Function

Public Function IsScreenSaverActivated() As Boolean
  Dim a As Long
  Dim r As Long
  
  r = SystemParametersInfo(SPI_GETSCREENSAVEACTIVE, 0, a, 0)
  IsScreenSaverActivated = (a <> 0)
End Function

Private Sub cmdCheckScreen_Click()
    lblScreen.Caption = IIf(IsScreenSaverActivated, "Screen is active.", "Screen is not active.")
End Sub

Private Sub cmdSetScreen_Click()
    ScreenSaver optScreen(0).Value
End Sub
۲۷-اسفند-۱۳۸۹, ۱۵:۲۴:۴۰
ارسال‌ها
پاسخ
تشکر شده توسط : mahdi321
joker آفلاین
کاربر با تجربه
****

ارسال‌ها: 798
موضوع‌ها: 67
تاریخ عضویت: آذر ۱۳۸۵

تشکرها : 849
( 3655 تشکر در 908 ارسال )
ارسال: #11
RE: از کار انداختن اسکرین سیور
والا منم فكر ميكنم اشتباه ميكنه يه جائيش را :) ولي خب


اينم كد شبيه ساز فشرده شدن موس ( البته نميدونم اسكرين سيور از وقفه كيبورد استفاده ميكنه يا چيزديگه ،تست كنه )
کد:
mouse_event(MOUSEEVENTF_LEFTDOWN,0,0,0,0);
         mouse_event(MOUSEEVENTF_MOVE,1,0,0,0);

[تصویر:  sajdelogo.gif]
۲۷-اسفند-۱۳۸۹, ۱۵:۳۶:۴۸
ارسال‌ها
پاسخ
تشکر شده توسط : mahdi321


موضوعات مرتبط با این موضوع...
موضوع نویسنده پاسخ بازدید آخرین ارسال
  از کار انداختن مواس و صفحه کلید mahadahda 1 3,355 ۲۳-مرداد-۱۳۸۹, ۱۸:۳۷:۱۹
آخرین ارسال: kimiafars
Question از کار انداختن صدای مودم در VB6 sima_6600 9 6,424 ۰۲-آبان-۱۳۸۶, ۱۹:۴۱:۱۶
آخرین ارسال: sima_6600
  از کار انداختن تروجان سهیل پی اس Ar4sh 3 3,177 ۰۱-آذر-۱۳۸۵, ۱۶:۵۵:۱۳
آخرین ارسال: Ar4sh
at چگونگي از كار انداختن آنتي ويروس؟ warmachin 12 11,369 ۲۷-اردیبهشت-۱۳۸۵, ۱۵:۰۹:۳۵
آخرین ارسال: Iron_Fist

پرش به انجمن:


کاربرانِ درحال بازدید از این موضوع: 1 مهمان

صفحه‌ی تماس | IranVig | بازگشت به بالا | | بایگانی | پیوند سایتی RSS