|
|
|
JNA возращаем char*
|
|||
|---|---|---|---|
|
#18+
Добрый день. Имеем описание функции в my_dll.dll Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. На Java у меня такой код: Код: java 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. Вопрос - как работать с Check и track2, которые имеют в dll тип char*. Кроме того Check заполняется функцией и содержит текст(500 и более символов). Как Check определить в структуре и получить от туда текст в нужной кодировке? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.06.2013, 17:53:20 |
|
||
|
JNA возращаем char*
|
|||
|---|---|---|---|
|
#18+
Не уже ли ни у кого нет идей :((?? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2013, 11:17:04 |
|
||
|
JNA возращаем char*
|
|||
|---|---|---|---|
|
#18+
LeoArslan, Обычно ещё дополнительный параметр используют для передачи количества байт. Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2013, 21:53:13 |
|
||
|
JNA возращаем char*
|
|||
|---|---|---|---|
|
#18+
Кол-во байт не указывается, но проблема возникает еще ранее: Код: java 1. 2. 3. Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.06.2013, 12:27:42 |
|
||
|
JNA возращаем char*
|
|||
|---|---|---|---|
|
#18+
вот тут "..." что находится? Сам по себе код Код: java 1. 2. ошибок не вызовет, просто p = null будет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.06.2013, 14:25:24 |
|
||
|
JNA возращаем char*
|
|||
|---|---|---|---|
|
#18+
Вызывает ошибку именно это место. Что между этим было написано выше, т.е. получаем: Код: java 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. Сама функция dll точно работает и заполняет значения параметров OUT, так как на другом языке програмирования я получаю нужные значения. В параметре Check возвращается ссылка на область памяти, из который потом достаю текст. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.06.2013, 16:06:59 |
|
||
|
JNA возращаем char*
|
|||
|---|---|---|---|
|
#18+
Маппинг типов некорректный. Вообще char* соответствует String-у. https://jna.java.net/nonav/javadoc/overview-summary.html#marshalling (И PointerByReference перед употреблением необходимо инициализировать) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.06.2013, 17:24:00 |
|
||
|
JNA возращаем char*
|
|||
|---|---|---|---|
|
#18+
>Вообще char* соответствует String-у Именно с этого описания и начал, и стал пробовать со String, но в этом случае ошибка возникает еще раньше на этапе вызова функции: Код: java 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.06.2013, 17:57:12 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=38313096&tid=2129087]: |
0ms |
get settings: |
16ms |
get forum list: |
26ms |
check forum access: |
7ms |
check topic access: |
7ms |
track hit: |
56ms |
get topic data: |
20ms |
get forum data: |
5ms |
get page messages: |
71ms |
get tp. blocked users: |
3ms |
| others: | 295ms |
| total: | 506ms |

| 0 / 0 |
