Модераторы: gambit, Partizan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> снова textBox и перевод. С++, Замучился. не могу толком перевести 
:(
    Опции темы
egorovsa
Дата 3.12.2007, 10:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 2
Регистрация: 3.12.2007

Репутация: нет
Всего: нет



Добрый день ребята. Проблема номер 1 ! Бьюсь над ней второй день. smile 
Всю жизнь прогриаммировал на Паскале и на Делфи, а тут по приговору универа пришлось изучать
Microsoft Visual C++ с Windows Form Application 
Ну так вот в чем встал вопрос.
Пишу чат, через сокеты
Создал textBox1 и мне надо его передать на сервер посредством сокета, но загвоздка в том что данные с textBox я получаю только таким способом
Код

String* text;
text = textBox1->text;


а в сокетах я могу передать тока переменную char

Юзал поиск на сайте нашел вот эти примеры: http://forum.vingrad.ru/topic-118189.html

Код

 System::String^ str = "ABC";
    
    char *buf = new char[10];
    System::IntPtr ptr(buf);
    System::Runtime::InteropServices::Marshal::Copy(str->ToCharArray(), 0, ptr, 3); 

 этот пример сработал, но русские симполы не передает, а англиские тока 1 символ.

Код

 System::String^ str = "ABC";
    
    char *buf = new char[str->Length + 1];
    cli::array<unsigned char>^ arr =
        System::Text::Encoding::ASCII->GetBytes(str);
    System::IntPtr intPtr(buf);
    System::Runtime::InteropServices::Marshal::Copy(arr, 0, intPtr, arr->Length);
    
    buf[arr->Length] = 0;

А этот пример у меня не сработал, изза того что не принимает "cli::" и вообще чета никак не пойму.. 


PM MAIL   Вверх
egorovsa
Дата 3.12.2007, 14:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 2
Регистрация: 3.12.2007

Репутация: нет
Всего: нет



Все ... Докопался до сапорта майкрософт.ком..
Там все написано 
http://support.microsoft.com/kb/311259/en-...41&sid=1136
Кушаем
Все выглядит просто, 
Код

System::String * str = S"Hello world\n";
char* str2 = (char*)(void*)System::Runtime::InteropServices::Marshal::StringToHGlobalAnsi(str);
printf(str2);
Marshal::FreeHGlobal(str2);

PM MAIL   Вверх
it_medved
Дата 12.12.2007, 11:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 171
Регистрация: 1.5.2007
Где: Днепропетровск

Репутация: нет
Всего: 1



Можно так:
Код

string str = "Текст";
char[] ch = str.ToCharArray();

PM MAIL WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Разработка Windows Forms | Следующая тема »


 




[ Время генерации скрипта: 0.2072 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.