25 / 41 / 14
Регистрация: 27.03.2014
Сообщений: 754

Конвертация string из с++ dll в c# клиент

07.07.2017, 09:59. Показов 6294. Ответов 22
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Привет, есть c++ dll с таким методом
C++
1
2
extern "C" __declspec(dllexport)
std::string myconvertmethod(std::string in){...}
в c# клиенте объявил импорт вида
C#
1
2
[DllImport("mylib.dll", CallingConvention = CallingConvention.Cdecl)]
        public static extern string myconvertmethod(string value);
но не работает! типы не совпадают! как сделать правильно чтобы работало?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
07.07.2017, 09:59
Ответы с готовыми решениями:

Конвертация из System::String^ в std::string
как перевести из System::String^ в std::srting

Использование String Tables в .dll(.dll.mui) (Для VB .NET)
Здравствуйте. Нужно извлечь(а потом запоковать) таблицу строк(string tables ). Допустим есть файл explorerframe.dll.mui из...

Конвертация string в float
Подскажиете, пожалуйста, есть строка string s= "832.26"; хочу переконвертировать ее в тип float (float f;) в строке ...

22
 Аватар для RunningMan
278 / 186 / 75
Регистрация: 12.04.2017
Сообщений: 1,088
Записей в блоге: 2
08.07.2017, 21:03
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от nmcf Посмотреть сообщение
память автоматически, что ли, выделяется для удлинения строки?
Что имели в виду?
В C# Про Пустую строку спрашиваете?
Цитата Сообщение от RunningMan Посмотреть сообщение
string dest = "";
Какая-то начальная ёмкость у строки есть. У типа string не знаю подробностей.
у StringBuilder начальная емкость 16 символов . В исходниках копаться нужно.
0
7804 / 6568 / 2988
Регистрация: 14.04.2014
Сообщений: 28,705
09.07.2017, 09:35
Цитата Сообщение от RunningMan Посмотреть сообщение
Что имели в виду?
dest пустая. Куда записывает функция? Память как-то скрыто выделяется?
Цитата Сообщение от RunningMan Посмотреть сообщение
Какая-то начальная ёмкость у строки есть.
Ну а если 100 символов записать или 200?
0
 Аватар для RunningMan
278 / 186 / 75
Регистрация: 12.04.2017
Сообщений: 1,088
Записей в блоге: 2
09.07.2017, 11:34
nmcf, если данные отправляем в нативную функцию, то используем string.
C#
1
Func(string s);
Если результат нужно вернуть из функции, то StringBuilder.
C#
1
Func(StringBuilder sb);
Цитата Сообщение от nmcf Посмотреть сообщение
Ну а если 100 символов записать или 200?
StringBuilder и указать размер.
C#
1
2
StringBuilder sb = new StringBuilder(100);
Func(sb);

Цитата Сообщение от nmcf Посмотреть сообщение
dest пустая. Куда записывает функция? Память как-то скрыто выделяется?

http://csharpindepth.com/Artic... rings.aspx
In the current implementation at least, strings take up 20+(n/2)*4 bytes (rounding the value of n/2 down), where n is the number of characters in the string.
Цитата Сообщение от RunningMan Посмотреть сообщение
string dest = "";
В нативную функцию отправили эти 20+(n/2)*4 байт. Просто блок памяти.
Если бы отправили какой-то другой тип с этим размером, то ничего бы не изменилось.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
09.07.2017, 11:34

Конвертация String и char
Всем добро!:senor: Проблема с конвертацией String и char, а именно вот таким способом я получаю индекс диска например диск "F"...

Конвертация String в VARCHAR()
если у меня есть переменная String var="text"; как мне выполнить запрос : INSERT INTO users(name) VALUES (var)") Не...

Конвертация string в IntPtr
Привет Всем Знающие, помогите, как можно конвертировать string в IntPtr Мой код: VAM = new VAMemory("PointBlank.exe"); ...

Конвертация из string в positive
Пишу ЭС на Visual Prolog. Предполагается, что пользователь должен вводить нужные параметры с клавиатуры в консоль. Скажем: ...

Конвертация string в LPCWSTR
Здравствуйте уважаемые программисты! Столкнулся с проблемой загрузки путей текстур из файла. Точнее грузить string из обыкновенного...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
23
Ответ Создать тему
Опции темы

Новые блоги и статьи
ИИ и человечность
kumehtar 21.07.2026
Забавно, что общаясь с ИИ, я замечаю, насколько он высказывается умно, и насколько верит в людей. Он умеет прощать. Он знает как отвечать не обесценивая опыт других людей, даже если сам не верит. Он. . .
Нейтральные знания ..., ... чистая наука. Пока что-то проходит модерацию на Хабре, стоит развить мысль ...
Hrethgir 20.07.2026
К таким радикальным взглядам я конечно в той публикации не приходил, но чтобы скоротать вечер, решил углубиться немного. 1. Почему показания термометра заряжены целью? Цель заложена в самом. . .
Установка нескольких штампов электронной подписи в строго определенных местах файла docx
ВладимирСамохин 19.07.2026
(В!) Работа с Электронной подписью - это неотъемлемая часть современного документооборота. Но что делать, если нужно поставить несколько штампов электронной подписи в строго определенных местах. . .
сукцессия 35. Научная статья о проделанной работе
anaschu 19.07.2026
Написал в формате латекс и пдф
Вангую, что это не пройдёт модерацию, и на неделе я запущу свой сервер.
Hrethgir 19.07.2026
Эта публикация сейчас в песочнице и ждёт приглашения. https:/ / habr. com/ ru/ sandbox/ 295048/ По ссылке 403. Не очень информативно такую ссылку постить. Запись от Usaga размещена Сегодня в 06:46 . . .
сукцессия 33. открытые вопросы от клауде
anaschu 19.07.2026
"Что накопилось за эту часть А — тринадцать правок, из которых шесть пришли из ваших вопросов и каждая оказалась реальной ошибкой, а не калибровкой: односторонний симбиоз, отсутствующий листопад,. . .
32 сукцессия
anaschu 19.07.2026
сукцессия 28‑мерное ядро стабилизировано Коллеги, фиксирую разбор инженерных правок и их изоморфную проекцию на экономику, меметику и половой отбор. Модель теперь не «подкручивает» сходимость —. . .
сукцессия 31: модель микоризы - это модель ещё нескольких явлений, социальных и экономических
anaschu 18.07.2026
Теория «Всего»: апдейт v1. 1. 2 — 28‑мерное ядро стабилизировано Коллеги, фиксирую разбор инженерных правок и их изоморфную проекцию на экономику, меметику и половой отбор. Модель теперь не. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru