برگزیده های پرشین تولز

لطفا راهنمایی کنید ارتباط یک ریموت با پورت کام vb6

aliali1

Guest
تاریخ عضویت
12 فوریه 2006
نوشته‌ها
14
لایک‌ها
0
:(:blink::(:(:wacko:
سلام
دوستان عزیزم من میخواهم با یک ریموت که به پورت کام وصل می شه و ویندوز را شات دان می کنه حا لا لطفا بگید چه طور می توانم با پورت کام ارتباط برقرار کنم و با تغییر دادهها از پورت عمل شات دان انجام شود لطفا با کد راهنمایی کنید از شما عزیزان متشکرم
 

balabala

کاربر قدیمی پرشین تولز
کاربر قدیمی پرشین تولز
تاریخ عضویت
22 می 2005
نوشته‌ها
8,362
لایک‌ها
5,745
سن
41
محل سکونت
یه خورده اونورتر
یه سیگنال بفرست به پورت. از داخل ویبی چکش کن و با تابع API شات داون کن.
 

aliali1

Guest
تاریخ عضویت
12 فوریه 2006
نوشته‌ها
14
لایک‌ها
0
یه سیگنال بفرست به پورت. از داخل ویبی چکش کن و با تابع API شات داون کن.

نه دوست عزیز ریموت اماده می باشد و کد شات دان من هم کار می کند مشکل من این که می شود با دستور MSComm1 و ایونتش که پورت کام با سیگنال تغییر کرد شات دان بشه میشود از این دستور استفاده کرد چون من فکر میکنم که این دستور مال شبکه می باشد و نمی شود با یک تغییر سیگنال ما کار بکند لطفا با کد بگویید
 

balabala

کاربر قدیمی پرشین تولز
کاربر قدیمی پرشین تولز
تاریخ عضویت
22 می 2005
نوشته‌ها
8,362
لایک‌ها
5,745
سن
41
محل سکونت
یه خورده اونورتر
والا من این دستور رو نمیدونم. شاید بچه ها بدونن من شبکه زیاد کار نکردم. منتها اگر Input پورت رو مانیتور کنید میتونید با گرفتن سیگنال از داخل ویبی، بوسیله دستور API هم شات داون کنید.
دستورش رو گوگل کنید وجود داره:
http://www.google.com/search?num=100&hl=en&rls=com.microsoft%3Aen-US&q=vb6+shutdown
 

aliali1

Guest
تاریخ عضویت
12 فوریه 2006
نوشته‌ها
14
لایک‌ها
0
اين كنترلMSComm يه سري event داره که باید بررسی کنی.
واسه اینکه ببینی درخواستی اومده یا نه میتونی از این دستور تو روال OnCom کنترلت استفاده کنی:

[LEFTPrivate Sub MSComm1_OnComm()
If MSComm1.CommEvent = comEvReceive Then
MsgBox "Incoming"
End If
End Sub
[/LEFT][/LEFT]


البته قبلش باید پورت مورد نظر رو انتخاب و باز کرده باشی مثلا تو FormLoad میشه اینکارو کرد:


Private Sub Form_Load()
MSComm1.CommPort = "YourPortNumber"
MSComm1.PortOpen = True
End Sub​
 

aliali1

Guest
تاریخ عضویت
12 فوریه 2006
نوشته‌ها
14
لایک‌ها
0
http://www.engadget.com/2006/05/16/how-to-ir-remote-control-your-computer
این هم pdf ساخت سخت افزار
دوستان لطفا راهنمایی کنید می شود با eventدستور MSComm1 پورت کام را چک کرد که سیگنال دریافت شده یا خیر سپس کد ما را اجرا کند چون من فکر می کنم این دستور برای شبکه می باشد و نمی شود پورت را با ان چک کرد از دوست عزیزی هم که جواب مرا داد متشکرم
 

balabala

کاربر قدیمی پرشین تولز
کاربر قدیمی پرشین تولز
تاریخ عضویت
22 می 2005
نوشته‌ها
8,362
لایک‌ها
5,745
سن
41
محل سکونت
یه خورده اونورتر
شما میتونید از این روش هم استفاده کنید. اگر بافر input پر بشه مسیج میده:
کد:
Dim txt As String
Do While MSComm1.InputLen = 0
DoEvents
Loop
txt = MSComm1.Input
MsgBox txt
فکر نمیکنم COM اصلا ربطی به شبکه داشته باشه.
روشی هم که گذاشتید باید کار کنه. منتها باید توی یک حلقه بگذارید تا مدام چکش کنه یا توی یک تایمر بذارید... بعد هم تا وقتی MSComm1.Input رو فراخوانی نکنید، بافر پر می مونه.
 

aliali1

Guest
تاریخ عضویت
12 فوریه 2006
نوشته‌ها
14
لایک‌ها
0
از راهنمایی شمه دوست عزیز متشکرم
 

aliali1

Guest
تاریخ عضویت
12 فوریه 2006
نوشته‌ها
14
لایک‌ها
0
دوست عزیز مگه وقتی که از دستور MSComm1.CommEvent و ایونتش استفاده می کنیم هر وقت سیگنالی به ما رسید از پورت نمی خواند اگر جواب مثبت باید با بافر این کا را کرد If MSComm1.InBufferCount >= 1 Then
مثل استفاده از این دستور یا این MSComm1.CommEvent فقط یک بار از پورت می خواند و باید از تایمر استفاده کرد که پی درپی پورت را چک بکند
 

balabala

کاربر قدیمی پرشین تولز
کاربر قدیمی پرشین تولز
تاریخ عضویت
22 می 2005
نوشته‌ها
8,362
لایک‌ها
5,745
سن
41
محل سکونت
یه خورده اونورتر
هر سه روش میشه. منتها تا Input رو نریزید توی یه متغییر، بافر خالی نمیشه: txt = MSComm1.Input
اگر از event استفاده کنید دیگه تایمر لازم نیست...
 

aliali1

Guest
تاریخ عضویت
12 فوریه 2006
نوشته‌ها
14
لایک‌ها
0
دوست عزیز چطور می توانم چک کنم چه موقع پین دوم از پورت کام توسط ریموت فعال شده سپس عمل شات دان شدن انجام شود ایا ایونت خاصی هست بدون استفاده از لوپ
ایا خود MSComm این قابلیت را دارد
 
بالا