|
|
|
Обрыв строки на Chr(0)
|
|||
|---|---|---|---|
|
#18+
Вотпростой пример st = Chr(65) st2 = Chr(0) st3 = Chr(66) st4 = st & st2 & st3 Me.Поле1.Value = st4 и посмотрите значение в 2-х вариантах 1-ый посмотрите значение st4 2-посмотрите то что отображается в поле. Строка обрывается на том месте где Chr(0) Как сделать что бы этого не происходило????? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2003, 09:13 |
|
||
|
Обрыв строки на Chr(0)
|
|||
|---|---|---|---|
|
#18+
Windows работает со строками в формате LPSTR (но не только), для которого символ Chr(0) - признак конца строки, вот и отбрасывается лишнее. VB/VBA работает со строками в формате BSTR. Там другой принцип, и ему все равно, какие символы внутри строки. Проблемы возникают, когда строка с Chr(0) передается другому процессу, оперирующему строками в LPSTR, например, при вызове API функций. Тот же результат можно наблюдать, передав вашу строку в MsgBox. Расскажите, какая у вас задача, может хором и подскажем решение. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2003, 11:28 |
|
||
|
Обрыв строки на Chr(0)
|
|||
|---|---|---|---|
|
#18+
А задача такая, шифровать текст и заносить его в таблицу в качестве СУБД sql2000. С чего все началалось, началось именно с того что шифрвоанный текст не заноситься в табилцу, потому что возникает обрыв строки. В результате шифрования видать возникает символ который является признаком конца строки, но на сама деле текст еще не закончился.Вот такая проблемма ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2003, 11:39 |
|
||
|
Обрыв строки на Chr(0)
|
|||
|---|---|---|---|
|
#18+
Могу порекомендовать использовать символы от 32...256 включительно... там нету символа окончания строки... Сделать можно всё!!! Только бы знать как... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2003, 18:56 |
|
||
|
Обрыв строки на Chr(0)
|
|||
|---|---|---|---|
|
#18+
2Mild Тебе эе уже советовали использовать тип данных binary/image Коль взялся за шифрование - прийдется идти на издержки И еще: как вариант - хранить не символы, а их кода. == А вообще: шо це за алгоритм такой хитрый ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2003, 19:29 |
|
||
|
Обрыв строки на Chr(0)
|
|||
|---|---|---|---|
|
#18+
Какие типы данных я только не пробывал и не Image и не binary не подходит!!! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.11.2003, 07:13 |
|
||
|
Обрыв строки на Chr(0)
|
|||
|---|---|---|---|
|
#18+
Не понимаю, зачем шифровать и заносить в textbox формы? Заносите значение сразу в поле таблицы. И memo нормально работает с такими значениями. Простой пример, что вернет функция?: Function mytest() Dim rs As DAO.Recordset Dim lngId As Long Set rs = CurrentDb.OpenRecordset("SELECT * FROM tmemo") With rs .AddNew lngId = !id !mymemo = Chr(&H41) & Chr(&H0) & Chr(&H42) .Update .Close End With mytest = 1 mytest = Asc(Mid(DLookup("mymemo", "tmemo", "id=" & lngId), 2, 1)) End Function ?mytest 0 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.11.2003, 11:03 |
|
||
|
|

start [/forum/topic.php?fid=45&msg=32318077&tid=1678376]: |
0ms |
get settings: |
8ms |
get forum list: |
17ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
66ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
62ms |
get tp. blocked users: |
1ms |
| others: | 214ms |
| total: | 391ms |

| 0 / 0 |
