Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Общие вопросы > URL decode Windows XP


Автор: NOCaut 4.10.2011, 14:57
InternetCanonicalizeUrl и UrlEscape нехотят кордировать текст в XP
Помогите разобратся! работает только в Windows7


    
Код

DWORD len = 1023;
    wchar_t encoded[1024] = {0};
    HRESULT hr = UrlEscape (L"фффіпфіпа",encoded,&len,0x00040000);
    MessageBox(0,encoded ,L"",0);

Автор: NOCaut 4.10.2011, 15:39
mesedgbox возвращает "фффіпфіпа"

Автор: xvr 4.10.2011, 17:03
Смотрим на последний параметр и смотрим в MSDN:
Цитата

URL_ESCAPE_AS_UTF8 (0x00040000)

    Windows 7 and later. Percent-encode all non-ASCII characters as their UTF-8 equivalents.

Так что на XP работать не должно - переводите входную строку в UTF-8 сами

Автор: NOCaut 4.10.2011, 17:11
как ето не долж.жно, если xp вишла ранше чем windows7

Добавлено через 11 минут и 52 секунды
видимо строчки Windows 7 and letter означают не то что я думал ранше

Автор: xvr 4.10.2011, 19:39
Цитата(NOCaut @  4.10.2011,  17:11 Найти цитируемый пост)
как ето не долж.жно, если xp вишла ранше чем windows7

Именно

Цитата(NOCaut @  4.10.2011,  17:11 Найти цитируемый пост)
видимо строчки Windows 7 and letter означают не то что я думал ранше

Там не letter (что означает 'письмо'), а later (что означает 'позже'). Т.е. для Windows 7 и более поздних

Автор: NOCaut 5.10.2011, 11:30
я вас непонимаю люди. слово "раньше" означает, что она вишла перед windows7
http://ru.wiktionary.org/wiki/%D1%80%D0%B0%D0%BD%D1%8C%D1%88%D0%B5

Автор: xvr 5.10.2011, 12:40
Цитата(NOCaut @  5.10.2011,  11:30 Найти цитируемый пост)
слово "раньше" означает,

Там нет слова 'раньше', там есть слово 'позже'

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)