powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / Crypto + Unicode
8 сообщений из 8, страница 1 из 1
Crypto + Unicode
    #37208513
AIS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть такая вот задача:
- сохранение данных из DW в файл с последующим его шифрованием ( freecode_crypto ).
- восстановление: файл окрывается (StreamMode), данные дешифруються и далее импортируються в DW.
Данные - это русский и английский языки.
Возникла такая же проблема как была ранее , и вроде бы тогда разобрался. Сейчас снова у заказчика ОС с нерусской раскладкой, и в итоге после восстановления данных английские буквы и цифры видны, а русские - иероглифы.
Функция (SaveAs) сохранения данных из DW привязана к EncodingANSI.
Как сохранить в EncodingUTF8?
Может есть другой способ решить задачу?
...
Рейтинг: 0 / 0
Crypto + Unicode
    #37208608
Локшин Марк
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AIS,

Можно попробовать использовать GetFullState\SetFullState
...
Рейтинг: 0 / 0
Crypto + Unicode
    #37208820
AIS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Локшин МаркAIS,

Можно попробовать использовать GetFullState\SetFullState
Спасибо за подсказку.
Попробовал так:
- вставил в DW строку с "нерусским" текстом.
- GetFullState + шифрация результата.
- дешифрация + SetFullState результата.
Таки да, восстанавливает и эту строку с "нерусским" текстом. Причем как с EncodingAnsi!, так и с EncodingUTF16LE! (например).
Это конечно тест не совсем адекватный, но всеже уже обнадеживает.

Непонятны и беспокоят две вещи:
- почему нет реакцию на разное значение EncodingХХХ ?
- при восстановлении сбиваються прописанные в DW формулы размеров и координат столбцов? т.е. при изменении ширины стобца, заголовок не отрабатывает.
В любом случае придется сделать тестовый примерчик и выслать для проверки заказчику.
...
Рейтинг: 0 / 0
Crypto + Unicode
    #37208864
Локшин Марк
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[quot AIS]Локшин МаркНепонятны и беспокоят две вещи:
- почему нет реакцию на разное значение EncodingХХХ ?
- при восстановлении сбиваються прописанные в DW формулы размеров и координат столбцов? т.е. при изменении ширины стобца, заголовок не отрабатывает.
В любом случае придется сделать тестовый примерчик и выслать для проверки заказчику.
Потому что эти функции по сути делают дамп внутренней структуры для DataWindow и потом загружают ее. Соответственно вполне логично что все что было там наменено с последнего GetFullState потеряется. Можно сделать отдельное DataStore и в него делать SetFullState, а потом данные через RowsMove, например, перенести в исходное.
...
Рейтинг: 0 / 0
Crypto + Unicode
    #37209237
AIS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[quot Локшин Марк]AISпропущено...

Потому что эти функции по сути делают дамп внутренней структуры для DataWindow и потом загружают ее. Соответственно вполне логично что все что было там наменено с последнего GetFullState потеряется. Можно сделать отдельное DataStore и в него делать SetFullState, а потом данные через RowsMove, например, перенести в исходное.
Уже так и выкрутился. :))
На этом пока и остановимся.

А насчет "логики", то напротив - всё должно восстанавливаться на момент последнего GetFullState, не зависимо, что потом делалось. Это как точка отката. И "дамп внутренней структуры" получается что снимает не всё, т.е. (в частности) ширина столбцов востановилась, а кнопки в заголовках - нет. У меня на столбце по две кнопки и их положение и размеры корректируют формулы, так вот эти формулы не срабатывают. Т.е. они по всей видимости не сохранились.
...
Рейтинг: 0 / 0
Crypto + Unicode
    #37209542
Фотография Anatoly Moskovsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я когда-то столкнулся с тем что SetFullState не полностью восстанавливает DW в некоторых случаях.
Подробности не помню.
...
Рейтинг: 0 / 0
Crypto + Unicode
    #37220757
AIS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всё, как говорится, срослось, т.е. выкрутился, но всё же интересно:

Почему для DW вариант
Код: plaintext
1.
2.
3.
/*Win\RU*/
SaveAs->Encrypt(File + EncodingANSI)
/*Win\Not RU*/
Decrypt(File + EncodingANSI)->ImportFile
не сработал на ОС с НЕрусской локализацией,
а вариант
Код: plaintext
1.
2.
3.
/*Win\RU*/
GetFullState->Encrypt(File + EncodingANSI)
/*Win\Not RU*/
Decrypt(File + EncodingANSI)->SetFullState
сработал?
...
Рейтинг: 0 / 0
Crypto + Unicode
    #37220842
Локшин Марк
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну очевидно при использовании ImportFile PowerBuilder пытается вести себя интеллектуально...
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / Crypto + Unicode
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]