0 / 0 / 0
Регистрация: 26.08.2013
Сообщений: 161
|
|||||||||||
1 | |||||||||||
Передача данных из драйвера в c# приложение15.09.2013, 14:13. Показов 2725. Ответов 6
Метки нет (Все метки)
Добрый день, подскажите пожалуйста где я могу ошибаться в этом вопросе.
Тестовый кусок кода драйвера имеет вид:
Спасибо.
0
|
15.09.2013, 14:13 | |
Ответы с готовыми решениями:
6
При открытии базы данных FoxPro в приложение Delphi возникает ошибка драйвера внешней базы данных (8961) Разработать приложение на Java, взаимодействующие с базой данных при помощи JDBC-драйвера Передача данных из JS в десктопное приложение на C# Передача данных из плагина в приложение |
Ушел с форума
|
|
15.09.2013, 14:37 | 2 |
В DeviceIoControl размер выходного буфера установлен равным "sizeof (char)", т.е. 1 байт.
И еще желательно показать, как определен controlCode.
0
|
0 / 0 / 0
Регистрация: 26.08.2013
Сообщений: 161
|
|
15.09.2013, 14:44 [ТС] | 3 |
1. Исправил на 10, но результат остался прежним.
2. ControlCode определен как uint число и имеет значение 1001.
0
|
Ушел с форума
|
||||||
15.09.2013, 15:14 | 4 | |||||
Значения управляющих кодов (I/O Control Code, IOCTL) должны подчиняться
определенным правилам. В Windows SDK для упрощения этого процесса есть специальный макрос CTL_CODE. Например:
способ передачи данных в драйвер (буферизированный ввод-вывод) и необходимые для данного кода права доступа (write access). Разные определения IOCTL требуют разной стратегии обработки I/O-запросов в драйвере.
1
|
0 / 0 / 0
Регистрация: 26.08.2013
Сообщений: 161
|
|
15.09.2013, 17:38 [ТС] | 5 |
Спасибо!
Скажите, правильно ли я понимаю, в c# нет макросов, следовательно нужно определить их в c++ и, вычисленные, подставить в c#? Еще остался один вопрос, обязательно ли указывать длину возвращаемого буфера, что если я не знаю количество возвращаемых значений? Память она же не разбивается, параметр returnedBytes вернет эту длину...
0
|
Ушел с форума
|
|
16.09.2013, 10:36 | 6 |
Да, можно и так.
Драйвер должен знать, сколько максимум данных ему позволяется вернуть приложению. Хотя никто не запрещает сделать это не за один подход, а за два или больше.
0
|
0 / 0 / 0
Регистрация: 26.08.2013
Сообщений: 161
|
|
17.09.2013, 11:47 [ТС] | 7 |
Спасибо, буду дергать драйвер дважды...
0
|
17.09.2013, 11:47 | |
17.09.2013, 11:47 | |
Помогаю со студенческими работами здесь
7
Передача данных из FastReport .Net в приложение Передача данных в консольное приложение. TPJPipe и TByteStream Передача данных из 1С в приложение Java (android studio) Клиент-серверное приложение. Передача строки без потери данных Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |