Детальное рассмотрение проблемы SQLite показало, что проблема находится у нас, в неправильном подаваемой кодовой странцы пути
sqlite.org писал(а):
These routines open an SQLite database file whose name is given by the filename argument. The filename argument is interpreted as UTF-8 for sqlite3_open() and sqlite3_open_v2() and as UTF-16 in the native byte order for sqlite3_open16()
У нас применется
sqlite3_open(), так что путь необходимо подавать в UTF-8.
Вот этот пример у меня нормально стал работать с длинными кириллическими путями
Add(MainForm,1034065,238,231)
{
Width=519
}
Add(MTStrTbl,7815638,574,273)
{
Width=511
Height=235
Align=2
Name="tab"
}
Add(Button,5475230,238,273)
{
Left=235
Top=240
link(onClick,2816519:doExecute,[])
}
Add(DS_SQLite,7855820,385,273)
{
Name="base"
Point(onError)
link(onOpen,1824278:doEvent1,[])
}
Add(ODialog,2816519,287,273)
{
Filter="Файлы SQLite db|*.db"
link(onExecute,5857427:doCharset,[])
}
Add(DSC_Query,9350671,469,273)
{
SQL="SELECT name AS 'Имя Элемента',info AS 'Описание' FROM Elements ORDER BY Tab, pos;"
DSManager="base"
link(onQuery,16515339:doAddRow,[])
link(onColumns,16515339:doAddCols,[])
}
Add(MST_DB,16515339,525,273)
{
MSTControl="tab"
}
Add(Hub,1824278,434,273)
{
link(onEvent1,9350671:doQuery,[])
link(onEvent2,2752118:doColAction,[(458,286)(458,321)])
}
Add(MST_ColAction,2752118,469,315)
{
Action=9
Index=-1
MSTControl="tab"
}
Add(Charset,5857427,336,273)
{
Type=6
link(onCharset,7855820:doOpen,[])
}
Очень надеюсь, что это оканчательное решение проблемы.
Dilma, возможно это решение поможет преодолеть препятствие использования HiAsm с кириллическими путями