1 / 1 / 0
Регистрация: 06.03.2013
Сообщений: 124
|
|
1 | |
Опять подводные грабли или Delphi 7 шутит?16.12.2017, 23:11. Показов 965. Ответов 10
Метки нет (Все метки)
Все началось со вчерашнего вечера, сидел я дома, наслаждался выходным.
После чего, мне написал человек, мол: " у меня ничего не работает, после того, как ты написал софт". Сращу же начал я шаманить с чертовой ошибкой ERangeError и знаете что? Я пришёл к выводу, что баг этот с этой ошибкой зависит от разрядности ОС. Разработка шла на Win10 x64, у меня все работает. Человек запускает на Win8.1 х32, у него бьёт ошибку. Кинулся я в гугл, но ответа не нашел на этот вопрос. Что вызывает эту ошибку (виновника) , тоже не было найдено. Единственное моё подозрение на функцию для отправки запроса на WinInet, где и происходит работа с буферами. Прошу какой-либо подсказки куда ковырять или как обеспечить поддержку х32?
0
|
16.12.2017, 23:11 | |
Ответы с готовыми решениями:
10
Новые теги HTML или MS шутит Delphi 10.2 – уменьшение размера приложения и подводные камни подводные камни при переходе на delphi 2010 Отмотка счетчика 2 или Старые грабли |
пофигист широкого профиля
4733 / 3167 / 859
Регистрация: 15.07.2013
Сообщений: 18,252
|
|
17.12.2017, 01:19 | 2 |
Вот и покажите код, который работает с буферами.
Мои программы все 32-битные. В них много работ с буферами. На х64 проблем никаких.
0
|
7 / 7 / 2
Регистрация: 21.07.2016
Сообщений: 68
|
|
19.12.2017, 13:25 | 3 |
Delphi 7 - 32 битная!
1
|
Модератор
|
|
20.12.2017, 15:17 | 4 |
Это как это? Я думал, Вы программу на Delphi разрабатывали... Вот там-то и надо смотреть, для какой платформы Вы ее компилировали.
Добавлено через 1 минуту RatWar, где хоть слово о том, что разработка велась в Д7?
0
|
7 / 7 / 2
Регистрация: 21.07.2016
Сообщений: 68
|
|
20.12.2017, 21:26 | 5 |
Опять подводные грабли или Delphi 7 шутит? - Delphi
Это заголовок темы, значит разработка велась в Delphi 7, а она 32-х битная
0
|
Asm/C++/Delphi/Py/PHP/VBA
|
|
20.12.2017, 22:54 | 6 |
Человек пишет, что "Разработка шла на Win10 x64". Перевожу: "Я компилировал на Delphi 7 из-под Win10 x64".
Причём тут "Delphi 7 - 32 битная!" ? Добавлено через 1 минуту Короче, stasuk25, код нужен. Вероятно, там какой-то косяк, который x64 (или любая 10-ка) хавает, а 8.1 x86 спотыкается.
0
|
пофигист широкого профиля
4733 / 3167 / 859
Регистрация: 15.07.2013
Сообщений: 18,252
|
|
21.12.2017, 01:31 | 7 |
Про необходимость кода я уже ТС сказал. Даже ограничил рамки необходимого для приведения на форум кода.
Не по теме: P.S.
0
|
Джоуи
|
|
21.12.2017, 22:28 | 8 |
Прежде всего скажу: не стоит разрабатывать на D7 под 64-разрядной виндой. Это плохо и чревато.
Всем 32-битным приложениям, работающим в x64 среде, характерно следующее: 1. Обращение в некоторые разделы реестра (и запись, и чтение) перенаправляется в специальные так называемые WOW64-ветки. В результате, приложение даже не поймет, что обращается не совсем в нужную ветку. Затрагиваемые разделы: https://msdn.microsoft.com/en-... 85%29.aspx 2. То же самое касается работы с файловой системой, опять же, в некоторых случаях, например, 32-bit приложение не сможет записать/прочесть из папки system32 в 64-битной винде. Ей будет подсунута sysWOW64 P.S. Данное подсовывание можно явно отменить. Об этом читайте на msdn. Но лучше все же переходить на более современную версию Delphi.
1
|
Джоуи
|
|
23.12.2017, 21:54 | 9 |
Дополнительно: Проверка ключей реестра на подверженность перенаправлению Wow6432 (redirected, shared, reflected)
0
|
пофигист широкого профиля
4733 / 3167 / 859
Регистрация: 15.07.2013
Сообщений: 18,252
|
|
24.12.2017, 02:27 | 10 |
Joey, ну не надо слишком много уделять вопросам версий Виндовс в данной ситуации. Особенно относящимся к витруальным папкам и виртуальным веткам реестра. Ведь ТС упомянул
Добавлено через 12 минут
Ну и по поводу Имхо, это абсолютно ничем не чревато. Я сам разрабатываю или поддерживаю 32-битное ПО под Win7 64х. Единственная проблема была с использованием BDE при размещении БД в Program Files. Ну это собственно и ожидалось. Достаточно было поместить БД в непроблемное место на диске и всё.
1
|
Джоуи
|
|
24.12.2017, 07:42 | 11 |
Не обратил внимание
Если разработчик начнет обращаться к вышеназванным веткам реестра или директориям, то начнется веселая жизнь. Лирическое отступление
Одна из моих первых прог была как раз на D7 под x64-виндой, и это привело к ошибке, которой я отдал много времени. Компилируешь - не возникает никаких ошибок, даже читаешь значение реестра или проверяешь, существует ли созданный файл - все true. Заходишь через проводник или regedit - ничего не создано. Много моих времени и нервов полегло на решение этой загадки.
0
|
24.12.2017, 07:42 | |
24.12.2017, 07:42 | |
Помогаю со студенческими работами здесь
11
SD через SPI или новые грабли STM32F415 Возвращаемся на старые грабли или снова тормоза системы Не надо наступать на мои грабли или типы чисел Delphi и кодировка. Опять. Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |