Преобразование строки

Тема в разделе "LANGS.C", создана пользователем Keva, 20 мар 2007.

  1. Keva

    Keva New Member

    Публикаций:
    0
    Регистрация:
    24 ноя 2006
    Сообщения:
    130
    Каким образом можно осуществить следующее преобразование AnsiString->Unicode?
     
  2. wasm_test

    wasm_test wasm test user

    Публикаций:
    0
    Регистрация:
    24 ноя 2006
    Сообщения:
    5.582
    Код (Text):
    1. wsprintfW( lpszUnicodeBuffer, L"%s", lpszAnsiString);
    или через ядерные структуры UNICODE_STRING и ANSI_STRING - RtlUnicodeStringToAnsiString
     
  3. IceStudent

    IceStudent Active Member

    Публикаций:
    0
    Регистрация:
    2 окт 2003
    Сообщения:
    4.300
    Адрес:
    Ukraine
    MultiByteToWideChar
     
  4. wasm_test

    wasm_test wasm test user

    Публикаций:
    0
    Регистрация:
    24 ноя 2006
    Сообщения:
    5.582
    ну или так.. чето я забыл про нее совсем=\ надо меньше дрова писать наверное..
    но это все платформозависимое. из платформонезависимого можно предложить чтонить из CRT вида
    swprintf( unibuf, L"%s", ansibuf);
    хотя хз может там есть и прямые аналоги MultiByteToWidrChar
     
  5. Keva

    Keva New Member

    Публикаций:
    0
    Регистрация:
    24 ноя 2006
    Сообщения:
    130
    Код (Text):
    1. PCCERT_CONTEXT pSignerCert;
    2. AnsiString Recepient="Сидоров";
    3. wchar_t buf[50];
    4. swprintf(buf,L"%S",Recepient);
    5. const void *signer = buf;
    6. pSignerCert = CertFindCertificateInStore(
    7.         hStoreHandle,
    8.         MY_ENCODING_TYPE,
    9.         0,
    10.         CERT_FIND_SUBJECT_STR,
    11.         signer,
    12.         NULL);
    если Recepient на английском языке то сертификат находится, а если на русском то нет. Вчем может быть дело?
     
  6. wasm_test

    wasm_test wasm test user

    Публикаций:
    0
    Регистрация:
    24 ноя 2006
    Сообщения:
    5.582
    хм.. попробуй всякие OemToAnsi & AnsiToOem. Скорее всего проблема в нестыковке кодировок
     
  7. LSK

    LSK New Member

    Публикаций:
    0
    Регистрация:
    23 мар 2006
    Сообщения:
    3
    Попробуй CERT_FIND_SUBJECT_STR_A и обычную строку.
     
  8. _DEN_

    _DEN_ DEN

    Публикаций:
    0
    Регистрация:
    8 окт 2003
    Сообщения:
    5.383
    Адрес:
    Йобастан
    Great

    И в какой кодировке это будет отъюникожено? :derisive: