Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

WideString конвертировать в PChar

290
07 июня 2013 года
Patr1ot
458 / / 09.02.2008
Добрый день!

Никак не получается конвертировать WideString в PChar . Подскажите как???!!!
целый день мучаюсь)) среда XE3 C++ RAD STUDIO

Вобще нужно проксю для cppWebBrowser указать: PIInfo->lpszProxy = PChar("10.10.10.10.:8080");
Пишу вручную все ок, вставляю переменную типа WideString(peremennaya).c_bstr() не канает, не работает, не пашет((((
  • Может воспользоваться std::string классом. Его метод c_srt() возвращает c-строку. Просто не знаю String билдера. от sadovoya, 08 июня 2013 года
  • Где в коде ниже возникает WideString? Ваш вопрос после уточнения стал вообще запутанным вдрызг :) от sadovoya, 08 июня 2013 года
290
07 июня 2013 года
Patr1ot
458 / / 09.02.2008
Для более наглядной задачи вот код:

Код:
char szBuf[4096] = { 0 };
INTERNET_PROXY_INFO *PIInfo= (INTERNET_PROXY_INFO*)szBuf;
BOOL (WINAPI * _UrlMkSetSessionOption)(DWORD, LPVOID, DWORD, DWORD);
HINSTANCE hPsApi = LoadLibrary(_T("URLMON.DLL"));
*(FARPROC *)&_UrlMkSetSessionOption = GetProcAddress(hPsApi, "UrlMkSetSessionOption");
 PIInfo->dwAccessType = INTERNET_OPEN_TYPE_PROXY;
 String prx =proxy->Strings[prox];


  PIInfo->lpszProxy = PChar(prx.c_str());
  PIInfo->lpszProxyBypass = PChar("");
 _UrlMkSetSessionOption(INTERNET_OPTION_PROXY, PIInfo, sizeof(INTERNET_PROXY_INFO),0);
Если задаю значение для PIInfo->lpszProxy вручную "10.10.10.10:8080" все работает как надо, но мне нужно подставляться разные значения из StringList. С этим то и проблема, по идее такой вариант вроде правильный PChar(prx.c_str()) но с ним не работает. Видимо в конечном счете не конвертируется в PChar.
11K
26 июля 2013 года
Babandr
76 / / 05.05.2008
Есть ф-ция WideCharLenToStrVar

цитата из хелпа

procedure WideCharLenToStrVar(Source: PWideChar; SourceLen: Integer; var Dest: string); overload;

procedure WideCharLenToStrVar(Source: PWideChar; SourceLen: Integer; var Dest: AnsiString); overload;

Description
WideCharLenToStrVar converts WideString characters to UnicodeString or AnsiString.

А к AnsiString уже можно применить c_str().
The WideCharLenToStrVar procedure converts SourceLen WideString characters from Source into a UnicodeString or AnsiString, and copies the result into Dest.
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог