Решено: Кроссплатформеность проекта - как ее добиться?

Вопросы программирования и использования среды Lazarus.

Модератор: Модераторы

Re: Кроссплатформеность проекта - как ее добиться?

Сообщение Лекс Айрин » 18.11.2015 19:42:30

SSerge, у меня так же... обе ошибки, как я понял, из-за неправильной инициализации массива parol_mas
Аватара пользователя
Лекс Айрин
долгожитель
 
Сообщения: 5723
Зарегистрирован: 19.02.2013 16:54:51
Откуда: Волгоград

Re: Кроссплатформеность проекта - как ее добиться?

Сообщение azsx » 18.11.2015 19:47:26

Это оно где высвечивает?

Изображение
strip my_execution_name
сделает его меньше.

пока не умею. позже почитаю об этом.
Код: Выделить всё
Compile Project, Target: project1: Success, Warnings: 1, Hints: 1
unit1.pas(108,27) Warning: Local variable "parol_mas" of a managed type does not seem to be initialized
unit1.pas(71,11) Note: Local variable "parol" is assigned but never used

я нутром понимаю, что где то переменные потерял, но это так набросок ни для чего. В ехел пароли генерировать быстрее! Просто повозюкал кисточкой, чтобы краски поглазеть.
azsx
энтузиаст
 
Сообщения: 959
Зарегистрирован: 16.11.2015 06:38:32

Re: Кроссплатформеность проекта - как ее добиться?

Сообщение vitaly_l » 18.11.2015 19:51:25

azsx писал(а):Еще раз, луна бурая (заяц не врет), а фотки с луной серые (амеры ваще негодяи).

Хулиганы из США скрывали стратегическую информацию и преднамеренно удаляли цвет на фото. Суть в том что, спецы, по фото видят структуру и не только. Но Марс... я думаю их бы уже разоблачили, т.к. все спецслужбы видят/читают/копируют их сигнал с Марса. Да? Или опять промах?
azsx писал(а):Где надо сделать оптимизацию?

Например в коде if (chislo_paroley = 1) then <== можно смело убрать скобки ().

А в нижеследующем коде зачем два цикла? Можно обойтись одним (это я про затребованную оптимизацию).
Код: Выделить всё
for t := 1 to chislo_paroley do begin
   for i := 1 to razmer_parolya do begin
          sluhainoe := random (length(stroka)) + 1;
          parol_mas[t] := parol_mas[t] + stroka[sluhainoe];
   end;
end;
Аватара пользователя
vitaly_l
долгожитель
 
Сообщения: 3333
Зарегистрирован: 31.01.2012 16:41:41

Re: Кроссплатформеность проекта - как ее добиться?

Сообщение azsx » 18.11.2015 19:53:09

зы
проблемы в ошибках (наверное), что стринг лазарус делает в одной кодировке, а массивы в другой. Но так как я юзаю нерусские буквы, я проверять это не буду, врядли там ошибка будет.
azsx
энтузиаст
 
Сообщения: 959
Зарегистрирован: 16.11.2015 06:38:32

Re: Кроссплатформеность проекта - как ее добиться?

Сообщение SSerge » 18.11.2015 19:54:51

azsx, это в вашей системе в настройках запуска программ по кликанью по файлам, расширение .lpi приписано для передаче некоей проге pypar2 и не более того. Никакой это не формат.
SSerge
энтузиаст
 
Сообщения: 971
Зарегистрирован: 12.01.2012 05:34:14
Откуда: Барнаул

Re: Кроссплатформеность проекта - как ее добиться?

Сообщение Лекс Айрин » 18.11.2015 19:56:59

azsx писал(а):Пусть юзер введт там чо захочет, программа поправит сама.


А не обикаетесь? Вот как раз это неправильный подход. Пользователь просто не должен вводить неправильных команд. Он может даже не понять, что данные неправильные. И не обязательно показывать окошко -- есть куча менее тревожных сполобов (сделать неактивной кнопку, поменяв надпись на ней это первое, что приходит в голову.)
azsx писал(а):Где надо сделать оптимизацию?


Везде. Я бы переделал саму структуру программы. За подобный код я себя лишаю сладкого и бью по рукам.

azsx писал(а):спорно.


Если для Вас прога это девушка, то вопросов больше не имею.
Аватара пользователя
Лекс Айрин
долгожитель
 
Сообщения: 5723
Зарегистрирован: 19.02.2013 16:54:51
Откуда: Волгоград

Re: Кроссплатформеность проекта - как ее добиться?

Сообщение vitaly_l » 18.11.2015 19:57:07

azsx писал(а):проблемы в ошибках (наверное),

Переменная sluhainoe <=== может превышать размер стринга stroka... Сбой однако возможен.
Аватара пользователя
vitaly_l
долгожитель
 
Сообщения: 3333
Зарегистрирован: 31.01.2012 16:41:41

Re: Кроссплатформеность проекта - как ее добиться?

Сообщение azsx » 18.11.2015 20:03:58

это в вашей системе в настройках запуска программ по кликанью по файлам, расширение .lpi приписано для передаче некоей проге pypar2 и не более того. Никакой это не формат.

не уверен, что вы правы, но пока не знаю как это проверить. подумаю. ссылка по теме (это формат) http://www.linux.unn.ru/debian/node/46
И не обязательно показывать окошко -- есть куча менее тревожных сполобов (сделать неактивной кнопку, поменяв надпись на ней это первое, что приходит в голову.)

нет по мне так это тоже не правильно. Для меня более верным решением при абсолютно левых данных от юзера является правка на реальные значения и выполнение задачи.
Везде. Я бы переделал саму структуру программы.

еще раз. Это программа на коленке. Для меня она нормальная, работу выполнила - досвидания милая.
Опять же, можно не код править (хотя за некоторые правки спасибо конечно, я ведь самоучка), а рассказать мне о pypar2
azsx
энтузиаст
 
Сообщения: 959
Зарегистрирован: 16.11.2015 06:38:32

Re: Кроссплатформеность проекта - как ее добиться?

Сообщение Лекс Айрин » 18.11.2015 20:05:19

azsx писал(а):я нутром понимаю, что где то переменные потерял,


замените код
Код: Выделить всё
for i := low(parol_mas) to high(parol_mas) do parol := '';

на
Код: Выделить всё
for i := low(parol_mas) to high(parol_mas) do parol_mas[i] := '';


и сотрите переменную parol и ошибки исчезнут. А если останется вторая, то забейте -- это ей будет казаться.
Аватара пользователя
Лекс Айрин
долгожитель
 
Сообщения: 5723
Зарегистрирован: 19.02.2013 16:54:51
Откуда: Волгоград

Re: Кроссплатформеность проекта - как ее добиться?

Сообщение azsx » 18.11.2015 20:06:19

Переменная sluhainoe <=== может превышать размер стринга stroka... Сбой однако возможен.

почему то не превышает. Это наверное как в пуре С, нулевой байт на конце строки.
Код: Выделить всё
sluhainoe := random (length(stroka)) + 1;
azsx
энтузиаст
 
Сообщения: 959
Зарегистрирован: 16.11.2015 06:38:32

Re: Кроссплатформеность проекта - как ее добиться?

Сообщение Лекс Айрин » 18.11.2015 20:06:46

azsx писал(а):а рассказать мне о pypar2


Просто сотрите данную ассоциацию и забейте. Вы пытаетесь открыть программу как данные.

Добавлено спустя 1 минуту 13 секунд:
ну или открыть данные в программе которая для этого не предназначена.
Аватара пользователя
Лекс Айрин
долгожитель
 
Сообщения: 5723
Зарегистрирован: 19.02.2013 16:54:51
Откуда: Волгоград

Re: Кроссплатформеность проекта - как ее добиться?

Сообщение azsx » 18.11.2015 20:09:00

и сотрите переменную parol и ошибки исчезнут. А если останется вторая, то забейте -- это ей будет казаться.

спасибо, исправил. Обе ошибки исчезли.
azsx
энтузиаст
 
Сообщения: 959
Зарегистрирован: 16.11.2015 06:38:32

Re: Кроссплатформеность проекта - как ее добиться?

Сообщение SSerge » 18.11.2015 20:12:48

azsx писал(а):а рассказать мне о pypar2


А что мы можем о ней рассказать? судя по имени, какой-то питоновский парсер. Видимо, использует собственные файлы с расширением .lpi и был либо инсталлирован позже lazarusa и переписал расширение на себя, либо lazarus при инсталляции не приписал себе собственные расширения файлов для открытия столь странным способом. Вот и всё.
SSerge
энтузиаст
 
Сообщения: 971
Зарегистрирован: 12.01.2012 05:34:14
Откуда: Барнаул

Re: Кроссплатформеность проекта - как ее добиться?

Сообщение azsx » 18.11.2015 20:14:28

ясно, спасибо.
azsx
энтузиаст
 
Сообщения: 959
Зарегистрирован: 16.11.2015 06:38:32

Re: Кроссплатформеность проекта - как ее добиться?

Сообщение Лекс Айрин » 18.11.2015 20:19:06

azsx писал(а): Обе ошибки исчезли.

Они появились из-за того, что вы используете очень много одинаковых названий.
Аватара пользователя
Лекс Айрин
долгожитель
 
Сообщения: 5723
Зарегистрирован: 19.02.2013 16:54:51
Откуда: Волгоград

Пред.След.

Вернуться в Lazarus

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 234

Рейтинг@Mail.ru