|
Передача в С-функцию и возврат из С-функции указателя на структуру. Реализация для C#
|
|||
---|---|---|---|
#18+
Приветствую всех! Имеется dll c такими функциями Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28.
Частично реализовал импорт: Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36.
Но есть вопросы по поводу соответствия C#-структуры C-структуре. Насколько то что я написал соответствует действительности? И ещё как грамотно импортировать эти функции? Код: plaintext 1. 2.
... |
|||
:
Нравится:
Не нравится:
|
|||
19.06.2014, 12:04 |
|
Передача в С-функцию и возврат из С-функции указателя на структуру. Реализация для C#
|
|||
---|---|---|---|
#18+
igas, usb_relay_device_get_status - этому вторым параметром можно out uint скормить, меньше писанины будет что касается структур - предпочитаю строки в структурах маршаллить вручную (IntPtr объявлять) дабы прозрачно было unicode/anisi, кто и каким API выделяет освобождает память usb_relay_device_enumerate - я бы просто IntPtr вернул usb_relay_device_set_serial(int hHandle, [MarshalAs(UnmanagedType.ByValArray,SizeConst=5)] char[] serial) ... |
|||
:
Нравится:
Не нравится:
|
|||
19.06.2014, 12:36 |
|
|
start [/forum/topic.php?fid=20&msg=38674166&tid=1402780]: |
0ms |
get settings: |
8ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
4ms |
track hit: |
32ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
37ms |
get tp. blocked users: |
1ms |
others: | 360ms |
total: | 468ms |
0 / 0 |