Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » .NET - C#. Обработка события подключения флешки.

Ответить
Настройки темы
.NET - C#. Обработка события подключения флешки.

Аватара для Efsey

Пользователь


Сообщения: 55
Благодарности: 0

Профиль | Отправить PM | Цитировать


Здрасте. Подскажите каким образом можно детектить подключение флешки.
В MSDN нашел:
Код: Выделить весь код
LRESULT CALLBACK WindowProc(
  HWND hwnd,       // handle to window
  UINT uMsg,       // WM_DEVICECHANGE
  WPARAM wParam,   // device-change event
  LPARAM lParam    // event-specific data
);
Только вот что с этим делать непонятно, VS С# ругается.

Отправлено: 18:37, 22-01-2011

 

Аватара для Delirium

Ветеран


Сообщения: 5624
Благодарности: 936

Профиль | Отправить PM | Цитировать


Цитата Efsey:
VS С# ругается »
И правильно делает, приведенный код - код C++, а не C#.

-------

Пройденные курсы:
[Microsoft №10174 Sharepoint], [SharePoint]
Мои проекты:[CheckAdmins], [NetSend7], [System Uptime], [Remote RAdmin LogViewer],[Netdom GDI], [Holidays - напоминалка о днях рождения]

А я офис-гуру :)


Отправлено: 00:49, 24-01-2011 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Аватара для Efsey

Пользователь


Сообщения: 55
Благодарности: 0

Профиль | Отправить PM | Цитировать


А как это будет на с#?

мда, английский все таки придеться выучить

Отправлено: 06:31, 24-01-2011 | #3


Аватара для Delirium

Ветеран


Сообщения: 5624
Благодарности: 936

Профиль | Отправить PM | Цитировать


Efsey, в программировании без англ. вообще никуда. Верно составленный вопрос на том же гугле на англ. языке даст множество решений твоего вопроса.
Результаты поиска:
http://www.lvr.com/hidpage.htm#MyExampleCode - пример определения флешки
http://community.opennetcf.com/forums/p/6081/59773.aspx - пример кода
http://bytes.com/topic/c-sharp/answe...vents-usb-port - описание принципов работы с Win32_USBControllerDevice
http://www.codeproject.com/KB/system/DriveDetector.aspx - готовое приложение.

-------

Пройденные курсы:
[Microsoft №10174 Sharepoint], [SharePoint]
Мои проекты:[CheckAdmins], [NetSend7], [System Uptime], [Remote RAdmin LogViewer],[Netdom GDI], [Holidays - напоминалка о днях рождения]

А я офис-гуру :)

Это сообщение посчитали полезным следующие участники:

Отправлено: 06:49, 24-01-2011 | #4


Ветеран


Сообщения: 3320
Благодарности: 916

Профиль | Отправить PM | Цитировать


Efsey, обрабатывать оконные события можно и в С#, к примеру на заинтересованное WM_DEVICECHANGE
Код: Выделить весь код
using System;
using System.Drawing;
using System.Windows.Forms;

class UsbDetector : Form
{
    public static void Main()
    {
        Application.Run(new UsbDetector());     
    }
    /*UsbDetector()
    {
    }*/
    protected override void WndProc(ref Message msg)
    {
        if (msg.Msg == 537) //WM_DEVICECHANGE
            MessageBox.Show("Device Changed " + msg.WParam + " " + msg.LParam );
        base.WndProc(ref msg);
    }
}
Но я бы присмотрелся к актуальности срабатывания WM_DEVICECHANGE, есть сообщения USB : Автоматическое обнаружение съёмных дисков что на события подключение/отключение флешки может не быть реакции.

Хоть тесты не выявили аномалии.
По коду выше пришло два сообщения с соответственными кодами
Device Changed 32772 78763296
Device Changed 7 0

Отправлено: 16:39, 27-01-2011 | #5



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » .NET - C#. Обработка события подключения флешки.

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
EventID - Уведомление Ист. события: HHCTRL Категория события: Отсутствует. Код события: 1903 cleric1985_n Устранение критических ошибок Windows 7 27-11-2015 16:14
[решено] автоопределение подключения флешки! novosibirec AutoIt 3 07-11-2010 17:51
Разное - скрыть факт подключения флешки mambet43 Microsoft Windows 2000/XP 1 17-12-2009 10:42
EventID - Источник события: SceCli, код события: 1202, предупреждение 0x534 Michael Устранение критических ошибок Windows 3 28-01-2009 13:25
EventID - [решено] Источник события:Windows Installer 3.1 Код события: 4379 ozzik Устранение критических ошибок Windows 2 31-10-2007 15:41




 
Переход