| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Для новичков > Создание dll |
| Автор: Xao 10.1.2008, 14:58 | ||||||
| Всем привет! У меня не получается создать dll, возникают ошибки
Вот первая ошибка
если изменть тип driveName на char, то тогда возникнет ошибка наподобие 3, в это месте:
подскажите плз какой тип мне правильней выбрать или может использовать другие функции? |
| Автор: Dray 10.1.2008, 15:05 |
| У тебя напутано с Unicode и ANSI в С++ есть разные типы. Определись хочешь ли ты сбилдить библиотеку в Unicode или нет. И поставь тогда соответствующие типы или используй универсальные макросы. |
| Автор: Xao 10.1.2008, 15:31 |
| Dray, ну мне dll нужна будет, чтобы использовать ее в другом проекте на C# а есть разница между тем, в какой кодировке я буду ее делать? а что за универсальные макросы? если я буду делать ее в Unicode, какие типы надо выставить? |
| Автор: Dray 11.1.2008, 11:07 | ||
| ИМХО если в C# то лучше в UNICODE. В таком случае надо использовать wchar_t, а вместо sprintf вызывать swprintf. Что касается CreateFile, то там первый параметр типа LPCTSTR - это есть универсальный тип, который в зависимости от опций UNICODE или ANSI разворачивается в LPCWSTR (юникод) или LPCSTR. Видимо у тебя в опциях стоит юникод, поэтому у тебя не компилировалось когда ты менял тип driveName на char. Или используй тогда TCHAR - этот тип будет разворачиваться всегда в нужном виде.
А вместо sprintf и swprintf используй _stprintf. |