Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Клуб программистов > Свободное общение
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 06.01.2010, 19:26   #1
ZuBy
Участник клуба
 
Аватар для ZuBy
 
Регистрация: 29.09.2008
Сообщений: 1,234
По умолчанию UNICoder

Вот на протяжении ~2 месяцев писал эту библиотеку и вроде все работает на УРА!

Теперь о библиотеке:
Это конвертер Ansi/Unicode/UTF8
Размер ~20,0 кб


Вот функционал
Код:
function UNICoder_AnsiCharToWideChar(Str: PAnsiChar): PWideChar; 
function UNICoder_AnsiStringToWideString(Str: AnsiString): WideString; 

function UNICoder_WideCharToAnsiChar(Str: PWideChar): PAnsiChar; 
function UNICoder_WideStringToUTF8(const S: WideString): AnsiString; 

function UNICoder_UTF8ToWideString(const S: AnsiString): WideString; 

function UNICoder_GetInformation: string; 
function UNICoder_OpenFileDlg(HND: HWND; Filter: PWideChar): PWideChar;
Написан на Delphi 7 и для пользователей Delphi 7.

Протестируйте плиз

демо-пример:
запуск BASS с флагом BASS_UNICODE на Delphi7
Вложения
Тип файла: zip UNICoder_Demo.zip (737.0 Кб, 19 просмотров)

Последний раз редактировалось mihali4; 06.01.2010 в 20:09.
ZuBy вне форума Ответить с цитированием
Старый 06.01.2010, 20:03   #2
mihali4
*
Старожил
 
Регистрация: 22.11.2006
Сообщений: 9,201
По умолчанию

При чем тут раздел "Общие вопросы Delphi" ???
Переношу в свободное общение.
mihali4 вне форума Ответить с цитированием
Старый 06.01.2010, 20:05   #3
raxp
Старожил
 
Регистрация: 29.09.2009
Сообщений: 9,713
По умолчанию

первое - из-за этой строчки... "Caption := UNICoder_GetInformation" выскакивает ошибка...
второе - вынос в библиотеку столь простых функций не оправдан, удобнее и прозрачней для пользователя будет использование модуля в виде pas.
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation
raxp вне форума Ответить с цитированием
Старый 09.01.2010, 23:11   #4
ZuBy
Участник клуба
 
Аватар для ZuBy
 
Регистрация: 29.09.2008
Сообщений: 1,234
По умолчанию

Вот обновил библиотеку

Функционал:

// UTF 7
function UNICoder_WideStringToUTF7(const S: WideString): AnsiString; stdcall;
function UNICoder_UTF7ToWideString(const S: AnsiString): WideString; stdcall;

// UTF 8
function UNICoder_WideStringToUTF8(const S: WideString): AnsiString; stdcall;
function UNICoder_UTF8ToWideString(const S: AnsiString): WideString; stdcall;

// UTF 16
function UNICoder_UTF16ToWideString(Str: PWideChar): WideString; stdcall;
// not work!!! function UNICoder_WideStringToUTF16(Str: PAnsiChar): AnsiString; stdcall;
// UTF 32
// not work!!! function UNICoder_UTF32ToStr(Str: PWideChar): PAnsiChar; stdcall;

// ANSI TO XX
function UNICoder_AnsiStringToKoi(St: PAnsiChar): PAnsiChar; stdcall;
function UNICoder_AnsiStringToDos(St: PAnsiChar): PAnsiChar; stdcall;
function UNICoder_AnsiStringToIso(St: PAnsiChar): PAnsiChar; stdcall;

// KOI TO XX
function UNICoder_KoiToAnsiString(St: PAnsiChar): PAnsiChar; stdcall;
function UNICoder_KoiToDos(St: PAnsiChar): PAnsiChar; stdcall;
function UNICoder_KoiToIso(St: PAnsiChar): PAnsiChar; stdcall;

// DOS TO XX
function UNICoder_DosToAnsiString(St: PAnsiChar): PAnsiChar; stdcall;
function UNICoder_DosToKoi(St: PAnsiChar): PAnsiChar; stdcall;
function UNICoder_DosToIso(St: PAnsiChar): PAnsiChar; stdcall;

// ISO TO XX
function UNICoder_IsoToAnsiString(St: PAnsiChar): PAnsiChar;
function UNICoder_IsoToKoi(St: PAnsiChar): PAnsiChar; stdcall;
function UNICoder_IsoToDos(St: PAnsiChar): PAnsiChar; stdcall;

// OTHER
// not work!!! function UNICoder_GetCodePage(const Chr: Byte): TUCodePage; stdcall; external dll;
function UNICoder_GetInformation: WideString; stdcall; external dll;

ТО ЧТО ОБОЗНАЧЕНО not work!!! В РАЗРАБОТКЕ.

Библиотека http://zuby.ucoz.kz/Library/UNICoder.zip
Демо http://zuby.ucoz.kz/Library/Demo-UNICoder-.zip
ZuBy вне форума Ответить с цитированием
Старый 20.01.2015, 20:26   #5
alex208210
Новичок
Джуниор
 
Регистрация: 14.09.2010
Сообщений: 2
По умолчанию

привет, сайт по ссылкам не работает. Откуда можно скачать исходники? или есть ли dll для wince ? если нет, можно ли взять исходники функций?
alex208210 вне форума Ответить с цитированием
Старый 20.01.2015, 20:49   #6
waleri
Старожил
 
Регистрация: 13.07.2012
Сообщений: 6,331
По умолчанию

Цитата:
Сообщение от alex208210 Посмотреть сообщение
привет, сайт по ссылкам не работает. Откуда можно скачать исходники? или есть ли dll для wince ?
Ну, за столько лет...

А чем вас WideCharToMultiByte и MultiByteToWideChar не устраивают?
waleri вне форума Ответить с цитированием
Старый 21.01.2015, 05:57   #7
ZuBy
Участник клуба
 
Аватар для ZuBy
 
Регистрация: 29.09.2008
Сообщений: 1,234
По умолчанию

Этой библиотеки уже нет, даже исходников после версии ХЕ+ она уже не нужна, TEncoding справляется со всеми кодировками
ZuBy вне форума Ответить с цитированием
Старый 21.01.2015, 12:13   #8
pproger
C++ hater
СтарожилДжуниор
 
Аватар для pproger
 
Регистрация: 19.07.2009
Сообщений: 3,333
По умолчанию

Цитата:
Написан на Delphi 7 и для пользователей Delphi 7.
любитель мертвечины?
I invented the term Object-Oriented, and I can tell you I did not have C++ in mind. (c)Alan Kay

My other car is cdr.

Q: Whats the object-oriented way to become wealthy?
A: Inheritance
pproger вне форума Ответить с цитированием
Старый 21.01.2015, 12:19   #9
pu4koff
Старожил
 
Аватар для pu4koff
 
Регистрация: 22.05.2007
Сообщений: 9,065
По умолчанию

Цитата:
Сообщение от pproger Посмотреть сообщение
любитель мертвечины?
5 лет прошло так-то
pu4koff вне форума Ответить с цитированием
Старый 21.01.2015, 23:14   #10
pproger
C++ hater
СтарожилДжуниор
 
Аватар для pproger
 
Регистрация: 19.07.2009
Сообщений: 3,333
По умолчанию

аа, опять некрофилы активизировались(( а делфя седьмая уже в 2005 году была obsolete
I invented the term Object-Oriented, and I can tell you I did not have C++ in mind. (c)Alan Kay

My other car is cdr.

Q: Whats the object-oriented way to become wealthy?
A: Inheritance
pproger вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц