Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2007.08.12;
Скачать: [xml.tar.bz2];

Вниз

Как получить указатель на строку в Table1.Fields[2].AsString ?   Найти похожие ветки 

 
TTable   (2007-04-25 02:24) [0]


procedure TForm1.Button3Click(Sender: TObject);      
begin
Table1.First;
  ShowMessage(Table1.Fields[2].AsString);
Table1.Next;
  ShowMessage(Table1.Fields[2].AsString);
end;


При доступе к Table1.Fields[2].AsString результат выводится в виде вопросительных знаков ??????, т.к. кодировка таблицы неизвестна. Можно ли как-нибудь получить доступ напрямую к тем ячейкам памяти, где хранятся данные, что бы узнать их char-коды?


 
sniknik ©   (2007-04-25 02:48) [1]

> т.к. кодировка таблицы неизвестна.
юникод... на 95%

> получить доступ напрямую
не поможет, если только не сделаешь (самостоятельно ?) поддержку юникода на всех этапах.
> Table1
BDE? все, забудь о поддержке. лучше попытайся настроить сервер/коннект (чего там у тебя?) чтобы выдавал/конвертил строки в ansi стандарте.


 
TTable   (2007-04-25 14:35) [2]

>юникод... на 95%

Да, скорее всего юникод.

>не поможет, если только не сделаешь (самостоятельно ?) поддержку юникода на всех этапах.

Это элементарно, к тому же цель - вывод в файл в юникоде.

Сама база данных в формате access (*.mdb)


 
sniknik ©   (2007-04-25 15:45) [3]

> Это элементарно,
исходные коды BDE и ODBC драйверов есть? тогда да, элементарно, пару тройку лет работы в одиночку и программа почти готова...

> к тому же цель - вывод в файл в юникоде.
> Сама база данных в формате access (*.mdb)
тогда прощай D3 и BDE, здравствуй D7(оптимум имхо, чтото >= D5), ADO и TNT (необязательно для записи в файл, но если нужно отображение то не обойтись)


 
sniknik ©   (2007-04-25 15:47) [4]

хотя... в D3 есть импорт библиотеки типов? тогда можно непосредственно с обьектами ADO работать. попробуй.


 
Плохиш ©   (2007-04-25 16:11) [5]


> TTable   (25.04.07 02:24)  


MessageBoxW(nil, PWideChar(WideString(Table1.Fields[2].Value)), "Unicode", MB_OK + MB_ICONINFORMATION);


 
TTable   (2007-04-25 20:10) [6]

>MessageBoxW(0, PWideChar(WideString(Table1.Fields[2].Value)), "Unicode", MB_OK + MB_ICONINFORMATION);

Этим способом результат тот же - вопросительные знаки - значит дело в драйвере базы данных, буду пробовать через ADO.

>хотя... в D3 есть импорт библиотеки типов?

Есть Import ActiveX Control, я экспортировал TAdodc это оно?


 
sniknik ©   (2007-04-25 20:32) [7]

нет видимо, надо импортировать Microsoft ActiveX Data Objects (msado15.dll) там описание типов/обьектов ADO, вот с ними и работать... в принципе можно и без них через вариант, но с описаниями проще... хотя ты и с описаниями "упаришся", еще проще 7делфю поставить, и готовые компоненты использовать.


 
TTable   (2007-04-28 15:01) [8]

Всё, проблему я решил установив вот эти бесплатные компоненты -

http://torry.net/db/direct/ms_access/ODA356os.exe
http://www.opus.ch/OpenSource/DirectAccess/Documentation/Default.htm

Они понимают unicode через WideString.



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2007.08.12;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.044 c
2-1184826661
pathfinder
2007-07-19 10:31
2007.08.12
Сообщение компилятора Delphi 2006..


2-1184208569
a.sitkin
2007-07-12 06:49
2007.08.12
Открыть книгу Exel и запустить в ней макрос


1-1181045623
Kolan
2007-06-05 16:13
2007.08.12
Какие могут быть причины не попасть в код потока после Resume?


2-1184074536
Xion
2007-07-10 17:35
2007.08.12
Проблема с потоком.


2-1184435002
Sonic90
2007-07-14 21:43
2007.08.12
Кнопка формы на панели задач





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский