حالة الموضوع:
مغلق
  1. !»°بہًكہًر الہًعہًراقہًي°«!

    !»°بہًكہًر الہًعہًراقہًي°«! нєℓℓ вσуѕ тєαм V • I • P

    الأنتساب:
    ‏7 فبراير 2015
    المشاركات:
    633
    الإعجابات المتلقاة:
    1,410
    نقاط الجائزة:
    93
    الجنس:
    ذكر
    الوظيفة:
    طالب
    الإقامة:
    العراق\واسط



    [​IMG]



    كيف الحال اعضاء وزوار ومشرفين منتدى عراق تيم

    عسا ان تكونوا بصحه وسلامه

    [​IMG]

    اليوم معنا شرط دلفي يتحقق من usb اذا متصل او منفصل



    لا احب المقدمات اتركم مع الاكواد


    كود PHP:

    unit U_Usb
    ;

    interface

    uses
    Windows
    MessagesSysUtilsClassesForms;

    type

    PDevBroadcastHdr 
    = ^DEV_BROADCAST_HDR;
    DEV_BROADCAST_HDR packed record
    dbch_size
    DWORD;
    dbch_devicetypeDWORD;
    dbch_reservedDWORD;
    end;

    PDevBroadcastDeviceInterface = ^DEV_BROADCAST_DEVICEINTERFACE;
    DEV_BROADCAST_DEVICEINTERFACE record
    dbcc_size
    DWORD;
    dbcc_devicetypeDWORD;
    dbcc_reservedDWORD;
    dbcc_classguidTGUID;
    dbcc_nameshort;
    end;

    const
    GUID_DEVINTERFACE_USB_DEVICETGUID '{A5DCBF10-6530-11D2-901F-00C04FB951ED}';
    DBT_DEVICEARRIVAL = $8000// system detected a new device
    DBT_DEVICEREMOVECOMPLETE = $8004// device is gone
    DBT_DEVTYP_DEVICEINTERFACE = $00000005// device interface class

    type

    TComponentUSB 
    = class(TComponent)
    private
    FWindowHandleHWND;
    FOnUSBArrivalTNotifyEvent;
    FOnUSBRemoveTNotifyEvent;
    procedure WndProc(var MsgTMessage);
    function 
    USBRegisterBoolean;
    protected
    procedure WMDeviceChange(var MsgTMessage); dynamic;
    public
    constructor Create(AOwnerTComponent); override;
    destructor Destroyoverride;
    published
    property OnUSBArrival
    TNotifyEvent read FOnUSBArrival write FOnUSBArrival;
    property OnUSBRemoveTNotifyEvent read FOnUSBRemove write FOnUSBRemove;
    end;

    implementation

    constructor TComponentUSB
    .Create(AOwnerTComponent);
    begin
    inherited Create
    (AOwner);
    FWindowHandle := AllocateHWnd(WndProc);
    USBRegister;
    end;

    destructor TComponentUSB.Destroy;
    begin
    DeallocateHWnd
    (FWindowHandle);
    inherited Destroy;
    end;

    procedure TComponentUSB.WndProc(var MsgTMessage);
    begin
    if (Msg.Msg WM_DEVICECHANGEthen
    begin
    try
    WMDeviceChange(Msg);
    except
    Application
    .HandleException(Self);
    end;
    end
    else
    Msg.Result := DefWindowProc(FWindowHandleMsg.MsgMsg.wParamMsg.lParam);
    end;

    procedure TComponentUSB.WMDeviceChange(var MsgTMessage);
    var
    devTypeInteger;
    DatosPDevBroadcastHdr;
    begin
    if (Msg.wParam DBT_DEVICEARRIVAL) or (Msg.wParam DBT_DEVICEREMOVECOMPLETEthen
    begin
    Datos 
    := PDevBroadcastHdr(Msg.lParam);
    devType := Datos^.dbch_devicetype;
    if 
    devType DBT_DEVTYP_DEVICEINTERFACE then
    begin 
    // USB Device
    if Msg.wParam DBT_DEVICEARRIVAL then
    begin
    if Assigned(FOnUSBArrivalthen
    FOnUSBArrival
    (Self);
    end
    else
    begin
    if Assigned(FOnUSBRemovethen
    FOnUSBRemove
    (Self);
    end;
    end;
    end;
    end;

    function 
    TComponentUSB.USBRegisterBoolean;
    var
    dbiDEV_BROADCAST_DEVICEINTERFACE;
    SizeInteger;
    rPointer;
    begin
    Result 
    := False;
    Size := SizeOf(DEV_BROADCAST_DEVICEINTERFACE);
    ZeroMemory(@dbiSize);
    dbi.dbcc_size := Size;
    dbi.dbcc_devicetype := DBT_DEVTYP_DEVICEINTERFACE;
    dbi.dbcc_reserved := 0;
    dbi.dbcc_classguid := GUID_DEVINTERFACE_USB_DEVICE;
    dbi.dbcc_name := 0;

    := RegisterDeviceNotification(FWindowHandle, @dbi,
    DEVICE_NOTIFY_WINDOW_HANDLE
    );
    if 
    Assigned(rthen Result := True;
    end;

    end


    ارجو ان تكون الاكواد واضحه وان يكون الشرح قد نال اعجابكم


    [​IMG]



    امير ايكل


    المعاقب الصدري


    علي الصقور هنا


    مخلد هكسور


    محمد العراقي



    الى هنا انتهى الموضوع نلتقي بموضوع اخر

    [​IMG]






     
  2. المعاقب الصدري

    المعاقب الصدري V • I • P

    الأنتساب:
    ‏20 يوليو 2014
    المشاركات:
    924
    الإعجابات المتلقاة:
    681
    نقاط الجائزة:
    93
    الجنس:
    ذكر
    رد: تلغيمه شرطيه دلفي

    عااشت ايدك حبيبي بكر الحمد لله اكو اشخاصب بدو يطورون نفسهم على لغات برمجية غير دوت نت هههههههههههه بلتوفيق حبي
     
  3. !»°بہًكہًر الہًعہًراقہًي°«!

    !»°بہًكہًر الہًعہًراقہًي°«! нєℓℓ вσуѕ тєαм V • I • P

    الأنتساب:
    ‏7 فبراير 2015
    المشاركات:
    633
    الإعجابات المتلقاة:
    1,410
    نقاط الجائزة:
    93
    الجنس:
    ذكر
    الوظيفة:
    طالب
    الإقامة:
    العراق\واسط
    رد: تلغيمه شرطيه دلفي

    تسلم حبي علاوي الدوت نت مواضعيه جاي تنعاد وحبيت اخرج عن المؤلوف لانو الدلفي لغه عملاقه لكن مواضعيه قليله السبب البعض يقول صعبه وانا جنت اقول صعبه لكن بالتعويد والمتابعه تسهل وعندي هواي مواضعيه قويه بهذه الغه لكن وقت لايوجود تحياتي الك
     
  4. тнe wαʀʀɪoʀ

    тнe wαʀʀɪoʀ <font color="#FF0000">.:: نجم قسم حمايه الاجهزه :: DeveloPer Plus

    الأنتساب:
    ‏6 مارس 2015
    المشاركات:
    212
    الإعجابات المتلقاة:
    2
    نقاط الجائزة:
    18
    الإقامة:
    ĪRÂҨ
    رد: تلغيمه شرطيه دلفي

    بآرك آلله بيك حبيبي ,

    لكن وين آلشرط !
    unit U_Usb
    {3$0}
     
  5. !»°بہًكہًر الہًعہًراقہًي°«!

    !»°بہًكہًر الہًعہًراقہًي°«! нєℓℓ вσуѕ тєαм V • I • P

    الأنتساب:
    ‏7 فبراير 2015
    المشاركات:
    633
    الإعجابات المتلقاة:
    1,410
    نقاط الجائزة:
    93
    الجنس:
    ذكر
    الوظيفة:
    طالب
    الإقامة:
    العراق\واسط
    رد: تلغيمه شرطيه دلفي

    اخي هذا يتحقق مجرد تضع then وتخلي الاستداع بعد التحقق تحياتي لك
     
  6. Girl - SilenT

    Girl - SilenT <span style="font-weight: bold; text-shadow: #BBBB مشرفات المنتدى

    الأنتساب:
    ‏1 ابريل 2015
    المشاركات:
    236
    الإعجابات المتلقاة:
    4
    نقاط الجائزة:
    18
    رد: تلغيمه شرطيه دلفي

    بارك الله بيك
     
  7. тнe wαʀʀɪoʀ

    тнe wαʀʀɪoʀ <font color="#FF0000">.:: نجم قسم حمايه الاجهزه :: DeveloPer Plus

    الأنتساب:
    ‏6 مارس 2015
    المشاركات:
    212
    الإعجابات المتلقاة:
    2
    نقاط الجائزة:
    18
    الإقامة:
    ĪRÂҨ
    رد: تلغيمه شرطيه دلفي

    يآتحقق يآ then حبيبي


    شنو هنود كدآمك ! آقرة وآنتبه مرآح آكولك آفتهم بس آي شخص يفتهم آنكليزي رآح يفسر آلكود ..


    USBRegister; آول شي معرف هو تسجيل آلرجستري


    واذا قصدك هذآ آلشرط


    [C#]procedure TComponentUSB.WndProc(var Msg: TMessage);
    begin
    if (Msg.Msg = WM_DEVICECHANGE) then
    begin
    try
    WMDeviceChange(Msg);
    except
    Application.HandleException(Self);
    end;
    end
    else
    Msg.Result := DefWindowProc(FWindowHandle, Msg.Msg, Msg.wParam, Msg.lParam);
    end;[/C#]


    فـ آنت آقرآه بحسب خبرتك ي حبيبي , مجرد رسآلة تحقق


    طيب ممكن تنطيني آلشرط يعني


    آلي بدآيتة if وشنو عملة بآلتحديد !
     
  8. حازم مشكله

    حازم مشكله V • I • P

    الأنتساب:
    ‏26 مارس 2015
    المشاركات:
    380
    الإعجابات المتلقاة:
    15
    نقاط الجائزة:
    18
    الجنس:
    ذكر
    رد: تلغيمه شرطيه دلفي

    بآرك آلله بيك حبيبي
     
  9. !»°بہًكہًر الہًعہًراقہًي°«!

    !»°بہًكہًر الہًعہًراقہًي°«! нєℓℓ вσуѕ тєαм V • I • P

    الأنتساب:
    ‏7 فبراير 2015
    المشاركات:
    633
    الإعجابات المتلقاة:
    1,410
    نقاط الجائزة:
    93
    الجنس:
    ذكر
    الوظيفة:
    طالب
    الإقامة:
    العراق\واسط
    رد: تلغيمه شرطيه دلفي


    اخوي الغالي هذا الكود يتحقق اذا كان اليو اس بي متصل او لا عن طريق
    RegisterDeviceNotification
    انا يعني في بداتي لتعلم الدلفي فنا شفت ابكود انه يقوم بالتحقق اذا كان usb

    متصل

    فالكود يحتاج الي التطوير يعني بالامكان تطويره

    ليقوم بتشغل الدواندور او الاستدعاء

    بعد التحقق من ان usb متصل فانا سوف احاول ان اطوره لكن نشرت الموضوع مستعجل وانتظر منك اذا استطعت ابتطوير لا اعتبرك كمثال

    اعلى لي بالدلفي كل الاحترام والتقدير لك
     
  10. Dr.AhMeD.IRAQI

    Dr.AhMeD.IRAQI Developer

    الأنتساب:
    ‏13 أغسطس 2014
    المشاركات:
    31
    الإعجابات المتلقاة:
    0
    نقاط الجائزة:
    6
    رد: تلغيمه شرطيه دلفي

    بأرك الله بيك ياغالي
     
حالة الموضوع:
مغلق

مشاركة هذه الصفحة