Вверх ↑
Этот топик читают: Гость
Ответов: 4612
Рейтинг: 746
#241: 2015-07-28 15:03:23 ЛС | профиль | цитата
Я у себя проверил - нет ошибок. Но у меня были исправления, кроме того, может компьютер/ОС отличаются. Попробуй у себя ghfjd.rar.
карма: 26

0
файлы: 1ghfjd.rar [89.8KB] [489]
Ответов: 1304
Рейтинг: 405
#242: 2015-07-28 16:47:10 ЛС | профиль | цитата
Netspirit писал(а):
Я у себя проверил - нет ошибок. Но у меня были исправления, кроме того, может компьютер/ОС отличаются

Netspirit, 15 секунд и вылет на win7_64.
Попробую перенести на Лазарус, может получится выявит проблему.
карма: 3

0
Ответов: 4612
Рейтинг: 746
#243: 2015-07-28 18:20:04 ЛС | профиль | цитата
На 14 странице можешь установить дополнительные модули и зарегистрировать отладочные компиляторы - будешь видеть более подробные сообщения об ошибках. К сожалению, во многих случаях не помогает.
карма: 26

0
Ответов: 1304
Рейтинг: 405
#244: 2015-10-11 18:51:23 ЛС | профиль | цитата
Netspirit, в плане совместимости своего проекта с 64x столкнулся с проблемой что в StrList нельзя занести больше 255 символов, если символов больше то ошибка исполнения при запуске программы. Так же ведёт себя Memory.
code_36378.txt
если будет возможность посмотрина на сие безобразие.
карма: 3

0
файлы: 1code_36378.txt [1.7KB] [588]
Ответов: 963
Рейтинг: 12
#245: 2015-10-11 20:09:54 ЛС | профиль | цитата
MAV писал(а):
Netspirit, в плане совместимости своего проекта с 64x столкнулся с проблемой что в StrList нельзя занести больше 255 символов, если символов больше то ошибка исполнения при запуске программы. Так же ведёт себя Memory.
code_36378.txt
если будет возможность посмотрина на сие безобразие.


Гм..А что с банальным "режимом совместимости" ? Не помогает ? (Или я не правильно понял и сама программа компилируется в 64бтный код ? В прочем что-то "режим совместимости" может и в этом случае изменить ... )

карма: 0

0
Ответов: 1304
Рейтинг: 405
#246: 2015-10-11 20:27:14 ЛС | профиль | цитата
AlexKir писал(а):
Гм..А что с банальным "режимом совместимости" ? Не помогает ?

ну ни разу

AlexKir, благодаря усилиям Netspirit, можно скомпилировать 64-битное приложение. Просто 64x версия компилятора находится в тестовом режиме, так сказать в режиме посмотреть.
карма: 3

0
Ответов: 4612
Рейтинг: 746
#247: 2015-10-12 10:17:11 ЛС | профиль | цитата
MAV, не знаю, у меня работает в обеих компонентах (дописал "1231456"):
Может я у себя уже поправил, но не выложил...
Разница между строками до 254 символов и больше 254 заключается в способе обработки строк в кодогенераторе в функции StringToCode.

MAV писал(а):
находится в тестовом режиме, так сказать в режиме посмотреть
Собственно, я поддерживаю 64-битную версию не хуже, чем 32: все выявленные ошибки исправляются одинаково по мере возможности.
карма: 26

0
файлы: 1fsdfwere.jpg [42.5KB] [1085]
Ответов: 1304
Рейтинг: 405
#248: 2015-10-12 19:01:12 ЛС | профиль | цитата
Netspirit, протестировал на чистом пакете из топика темы результат неизменен
err_string.png
остаётся только попросить кодогенератор, может в нём все-таки дело.

карма: 3

0
файлы: 1err_string.png [3.8KB] [941]
Ответов: 211
Рейтинг: 52
#249: 2015-10-12 22:47:29 ЛС | профиль | цитата
MAV, попробуйте в модуле StrCat включить директиву longstrings
#pas
unit hiStrCat;
{$IFDEF FPC}{$H+}{$ENDIF}//<-$longstrings on
interface...
если нет, то дополнительно в юнитах Share,hiHintManager hiMainForm,Win,hiMessage,WinList,EWinList,hiMemo,hiDebug
И в последнюю очередь ключ -Sh в строке компилятора (обычно такое не рекомендуют, но для проверки можно и гобально вкючить)
Должны были быть сообщения компилятора по этому поводу, но они вероятно подавлены..
включаются в подозрительном модуле:
{$warn IMPLICIT_STRING_CAST Error}
{$warn EXPLICIT_STRING_CAST Error}
{$warn IMPLICIT_STRING_CAST_LOSS Error}
{$warn EXPLICIT_STRING_CAST_LOSS Error}
явный/неявный кастинг, и потеря данных при явном/неявном кастинге(ваш случай)
карма: 1
слтв
0
Ответов: 1304
Рейтинг: 405
#250: 2015-10-12 23:50:58 ЛС | профиль | цитата
Minkovsky, повставлял использовать длинные строки в перечисленные модули, включил все сообщения в компиляторе fpc.cfg, -Sh добавил, но предупреждений не увидел . Не одно предупреждение увидел 23.40 опять глаза будут красные как у бычка с перепоя, и кто поверит на работе что я не пью .
карма: 3

0
Ответов: 211
Рейтинг: 52
#251: 2015-10-13 00:28:04 ЛС | профиль | цитата
MAV, планирую поставить xp64, там попробую, возможно это связанно с режимом совместимости с delphi
что я сделал:
1 установил HiAsm 186
2 установил FPC 271
3.1 старый fpc (просто удалил каталог)
3.2 командная строка запуска "%fname%" -FE"%opath%"
4 fpc.cfg включил asm intel, mode objfpc и прописал пути до HiAsm, остальное не менял
5.1 запустил вашу схему
5.2 исправил выше приведенные pas (и еще пару с ошибками синтаксиса)
заработало, но под xp32, а 64 попробую, как поставлю соответствующую os
карма: 1
слтв
0
Ответов: 1304
Рейтинг: 405
#252: 2015-10-13 20:25:17 ЛС | профиль | цитата
Netspirit, если смирится с потерей скорости кодогенератора то так работает
#pas
function StringToCode(const s:string):string;
var i:integer; intostr:bool;
begin
//if Length(s) > 254 then begin
// Result := 'PChar(LoadResData(''' + cgt.resAddStr(PChar(s)) + '''))';
// exit;
//end;
Result := 'PChar(';
intostr := false;
for i := 1 to Length(s) do
if ord(s[i])<32 then begin
if intostr then Result := Result + '''';
Result := Result + '#' + Int2Str(ord(s[i]));
intostr := false;
end else begin
if not intostr then Result := Result + '''';
if s[i]='''' then Result := Result + '''';
Result := Result + s[i];
intostr := true;
end;
if intostr then Result := Result + '''';
Result := Result + '#0)';
end;
хотя это конечно не решение
карма: 3

0
Ответов: 4612
Рейтинг: 746
#253: 2015-10-14 15:08:32 ЛС | профиль | цитата
MAV, достаточно в Share.pas:

function LoadResData;
var
hResource: NativeInt;
begin
//s := 'hello world';
//Result := @s[1];
hResource := LoadResource( hInstance, FindResource(hInstance,PChar(name), PChar(100)));
Result := LockResource(hResource);
FreeResource(hResource);
end;

Редактировалось 7 раз(а), последний 2016-10-14 14:24:17
карма: 26

1
Голосовали:MAV
Ответов: 1304
Рейтинг: 405
#254: 2015-10-14 18:36:04 ЛС | профиль | цитата
Netspirit, спасибо.
------------ Дoбавленo в 18.36:
ps: во время опытов обратил внимание что на 64x у меня на элементах Memo и RichEdit нельзя изменить шрифт.
карма: 3

0
Ответов: 4612
Рейтинг: 746
#255: 2015-10-15 10:26:51 ЛС | профиль | цитата
Выложена обновленная версия компилятора и пакета. Пакет соответствует ревизии 2039 основного SVN. Содержит также исправления ошибок, обнаруженных с момента последней выложенной версии.

Если у вас уже был установлен этот компилятор - перед установкой новой версии удалите каталог HiAsm\compiler\FPC2.

Редактировалось 1 раз(а), последний 2016-10-24 12:03:59
карма: 26

3
Голосовали:Konst, MAV, halt
Сообщение
...
Прикрепленные файлы
(файлы не залиты)