Здравствуйте, InDY, Вы писали:
IDY>У меня имя сервера лежит в массиве. Как его передать в CoCreateInstanceEx? IDY>PS Что значит L перед текстом? Локальная кодировка?
Не совсем понятно о чем речь. А L скорее всего уникод.
L"это строка в уникоде"
Да пребудет с тобой Великий Джа
Re[2]: CoCreateInstanceEx - вопрос по заданию имени сервера
Здравствуйте, Ведмедь, Вы писали:
В>Здравствуйте, InDY, Вы писали:
IDY>>У меня имя сервера лежит в массиве. Как его передать в CoCreateInstanceEx? IDY>>PS Что значит L перед текстом? Локальная кодировка?
В>Не совсем понятно о чем речь. А L скорее всего уникод. В>L"это строка в уникоде"
Поясняю. При вызове CoCreateInstanceEx я должен передать структуру COSERVERINFO. В поле pwszName я должен занести имя сервера. Имя сервера у меня хронится в char ServName[200]. Вопрос — как из массива передать имя в pwszName.
Или может быть есть более красивое решение?(т.е. не в массиве хранить имя сервера, а как-то ещё?)
В MSDN написано, что N обозначает UNICODE.
Re[3]: CoCreateInstanceEx - вопрос по заданию имени сервера
Здравствуйте, InDY, Вы писали:
IDY>Здравствуйте, Ведмедь, Вы писали:
В>>Здравствуйте, InDY, Вы писали:
IDY>>>У меня имя сервера лежит в массиве. Как его передать в CoCreateInstanceEx? IDY>>>PS Что значит L перед текстом? Локальная кодировка?
В>>Не совсем понятно о чем речь. А L скорее всего уникод. В>>L"это строка в уникоде"
IDY>Поясняю. При вызове CoCreateInstanceEx я должен передать структуру COSERVERINFO. В поле pwszName я должен занести имя сервера. Имя сервера у меня хронится в char ServName[200]. Вопрос — как из массива передать имя в pwszName. IDY>Или может быть есть более красивое решение?(т.е. не в массиве хранить имя сервера, а как-то ещё?) IDY>В MSDN написано, что N обозначает UNICODE.
Строчка уникодовская задается как
LPWSTR wszString = L"string";
А для трансфорамции из уникода и обратно смотри функции
MultiByteToWideChar и WideCharToMultiByte, а так же макросы A2W, W2A
Да пребудет с тобой Великий Джа
Re: CoCreateInstanceEx - вопрос по заданию имени сервера
Здравствуйте, InDY, Вы писали:
IDY>Здравствуйте, Ведмедь, Вы писали:
В>>Здравствуйте, InDY, Вы писали:
IDY>>>У меня имя сервера лежит в массиве. Как его передать в CoCreateInstanceEx? IDY>>>PS Что значит L перед текстом? Локальная кодировка?
В>>Не совсем понятно о чем речь. А L скорее всего уникод. В>>L"это строка в уникоде"
IDY>Поясняю. При вызове CoCreateInstanceEx я должен передать структуру COSERVERINFO. В поле pwszName я должен занести имя сервера. Имя сервера у меня хронится в char ServName[200]. Вопрос — как из массива передать имя в pwszName. IDY>Или может быть есть более красивое решение?(т.е. не в массиве хранить имя сервера, а как-то ещё?) IDY>В MSDN написано, что N обозначает UNICODE.
...
USES_CONVERSION;
COSERVERINFO csi;
csi.pwszName = A2W(ServName);
С Уважением.
Re[4]: CoCreateInstanceEx - вопрос по заданию имени сервера
Здравствуйте, Viktor Sklyar, Вы писали:
VS>USES_CONVERSION;
VS>COSERVERINFO csi; VS>csi.pwszName = A2W(ServName);
Я уже пытался использовать этот макрос. Для его работы необходима afxpriv.h, но у меня оэтот файл подключиться не может, т.к. не загружается afxv_w32.h.
Эту проблему я решил с помощью
mbstowcs( wszServName, szServName, 255 ); // ИМХО верно использовал
Здравствуйте, InDY, Вы писали:
IDY>У меня имя сервера лежит в массиве. Как его передать в CoCreateInstanceEx? IDY>PS Что значит L перед текстом? Локальная кодировка?