Fa refresh device or Usb

Singular

Active Member
سلام به دوستان



وارد manage بشید بعد refresh device اون بالا گزینه ای داره واسه refresh device


چطور میشه refresh device را توسط ی دستوری انجام داد
حالا با پلاگین شده با کد شده...فقط این کار انجام بشه.. :(

من در واقع کاری رو پورت یو اس بی انجام میدم...که میخام قسمت device رفرش بشه ..... که کارای من انجام بشه دگ فلشو نکنم دوباره وصل کنم
 

Singular

Active Member
دوستان کسی نیست کمکی کنه؟؟؟؟؟؟؟؟؟؟؟؟

با هر زبانی باشه مشکلی نیست
فقط اینکه رفرش انجام بده ...سورسم ندادید مشکلی نیست...کارم گیره همینه....
دوستان بررسی کنید در این زمینه ... :(
 
آخرین ویرایش:

Singular

Active Member
من بررسی کردم

دیدم این پلاگین فراخوانی میشه

plug & play



؟؟؟؟؟؟؟؟؟؟؟
هیچ کس تو انجمن نیست یعنی..بلد باشه؟؟؟
 

silvercover

کاربر متخصص
این اطلاعات در رجیستری ویندوز در کلید "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class" ذخیره میشن که میشه با بررسی این کلید به مقادیر و تغییرات دست پیدا کرد. گذشته از این توابع لازم که ویندوز ازش برای این مورد شما استفاده می کنه داخل فایل cfgmgr32.dll در داخل پوشه Windows هست. کد زیر به زبان C تقریبا همین کار رو می کنه:

کد:
#INCLUDE "Win32Api.inc"
DECLARE FUNCTION fCM_Locate_DevNode (BYREF dvInst AS LONG, BYVAL n AS LONG, BYVAL c AS LONG) AS LONG
DECLARE FUNCTION fCM_Reenumerate_DevNode (BYVAL dvInst AS LONG, BYVAL n AS LONG) AS LONG

FUNCTION Scan_for_hardware_changes () AS LONG

    %CR_SUCCESS = 0
    %CM_LOCATE_DEVNODE_NORMAL = 0

    LOCAL hLib AS LONG, pCM_DevNode AS DWORD, fSTATUS AS LONG, dvInst AS LONG

    hLib = LoadLibrary( "cfgmgr32.dll" )
    IF hLib THEN
        pCM_DevNode = GetProcAddress( hLib, "CM_Locate_DevNodeA" )
        IF pCM_DevNode THEN
            CALL DWORD pCM_DevNode USING fCM_Locate_DevNode(dvInst, 0, %CM_LOCATE_DEVNODE_NORMAL ) TO fSTATUS
            IF fSTATUS=%CR_SUCCESS THEN
                pCM_DevNode = GetProcAddress( hLib, "CM_Reenumerate_DevNode" )
                IF pCM_DevNode THEN
                    CALL DWORD pCM_DevNode USING fCM_Reenumerate_DevNode(dvInst, 0 ) TO fSTATUS
                    IF fSTATUS=%CR_SUCCESS THEN FUNCTION=%TRUE
                END IF
            END IF
        END IF
        FreeLibrary hLib
    END IF

END FUNCTION

FUNCTION PBMAIN

  IF Scan_for_hardware_changes() THEN MSGBOX "OK!" ELSE MSGBOX "Sorry!"

علاوه بر این یه ابزار Command Line موسوم به Devcon وجود داره که من قبلا روی ویندوز XP تستش کردم و برای ویندوز 7 و 8 ازش مطمئن نیستم. با استفاده از دستور RUN در بیلدر میتونید با این ابزار ارتباط برقرار کنید. لینک دانلود این برنامه:

http://download.microsoft.com/download/1/1/f/11f7dd10-272d-4cd2-896f-9ce67f3e0240/devcon.exe

لینک توضیحات سوییچ های این برنامه که برای شما سوییچ rescan مورد نیاز هست:
http://support.microsoft.com/kb/311272/en-us

البته این برنامه باید با مجوز مدیر سیستم اجرا بشه که هر بار پیام امنیتی نده. در این راستا بخونید:
http://forum.majidonline.com/threads/188383-player-bin-%D9%87%D8%A7%DB%8C-%D9%85%D9%88%D9%84%D8%AA%DB%8C-%D9%85%D8%AF%DB%8C%D8%A7-%D8%A8%DB%8C%D8%A7%D8%AF%D8%B1
http://forum.majidonline.com/threads/188383-player-bin-های-مولتی-مدیا-بیادر
 

Singular

Active Member
خخخیلیییییییییییییییی ممنونم اززززت خیلییییی (آقای silvercover عزیز )


:X

این دستور و فایلی که گزاشتید نیازمو برطرف کرد

devcon.exe /rescan
 

جدیدترین ارسال ها

بالا