Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > VB .NET > Работа программы в 32 и 64 бит. версиях Net


Автор: bankuss 8.11.2006, 12:46
Есть программка, в 32-битном net 2.0 все прекрасно работает. А вот в 64-битном , (тоже 2.0) не хочет!
Запускается, но основная функция не работает. Процедуры которая эта функция вызывает, отрабатывают нормально (если их отдельно вызывать). Интересно чем вызвана несовместимость? И вобще, сделаешь так программу, а на 64-битнике она не работает! smile респект мелкософту!

p.s. попробую докопаться до причины, но вот с дебагом в 64-битах пока проблему не решил. я так понял там отделный дебагер нужно устанавливать...

Автор: Exception 8.11.2006, 15:57
А ты используешь какие-либо сторонние компоненты (не WF) или неуправляемый код?

Автор: bankuss 9.11.2006, 13:53
Exception никаких сторонних компонентов. и код обычный. вот думаю, может это функция Timer косячит. короче надо тестить...

Автор: Exception 9.11.2006, 18:54
Код в студию.

Автор: bankuss 14.11.2006, 13:34
Timer не причем. 
При запуске из CMD кое-какую дебаговую инфу выдает: типа индекс массива аут smile
в 32-битах никаких выходов за индекс массива не происходит!
вот так...
Exception код слишком большой, чтоб его размещать.

Автор: Exception 14.11.2006, 20:06
Ну тогда давай буквальное сообщение об ошибке.. или постарайся сократить код только до того места, что вызывает ошибку..

Автор: bankuss 23.11.2006, 14:01
запустили мою прогу на другом компе, тоже в 64 битах... тоже ошибка. выходит дело не в коде. а в MS.

Автор: Wanderer2019 23.11.2006, 15:19
Цитата(bankuss @  23.11.2006,  14:01 Найти цитируемый пост)
запустили мою прогу на другом компе, тоже в 64 битах... тоже ошибка. выходит дело не в коде. а в MS. 


это как из одного следует другое?  smile 

Автор: Дрон 23.11.2006, 15:38
Цитата(bankuss @  9.11.2006,  13:53 Найти цитируемый пост)
короче надо тестить... 

Цитата(bankuss @  14.11.2006,  13:34 Найти цитируемый пост)
При запуске из CMD кое-какую дебаговую инфу выдает: типа индекс массива аут

Цитата(bankuss @  23.11.2006,  14:01 Найти цитируемый пост)
запустили мою прогу на другом компе, тоже в 64 битах... тоже ошибка. выходит дело не в коде. а в MS. 

Так ты может всё-таки покажешь сообщение об ошибке или так и будешь .net впустую ругать?



Автор: Exception 27.11.2006, 16:48
А ещё лучше, покажешь участок кода, на котором она летает smile ?

Автор: DarkDragon 27.11.2006, 23:52
Не знаю как у вас тама с 64 битными машинами(никогда не раотал и невидел таких процессоров, но знаю что есть AMD), но может быть дело в размерах переменных, т. е. для 32 битных процессоров
и OS есть Int32 (32 битная версия целого числа, занимающая 4 байта), а в 64 битных, используется long или Int64 (64 битная версия, занимающая 8 байт), или может быть в настройке проекта нужно установить для 64 битных процессоров?

Ну и может быть...

Кидай в студию отрывок кода, или сообщение об ошибке, а то тут собрались простые люди, а не телепаты smile !

Добавлено @ 23:55 
 smile Если не можешь решить проблему, то ты должен подробно описать проблему, а не так, что типа у меня это непашет, догодайтесь сами в чем проблема smile 

Автор: bankuss 1.12.2006, 16:28
Короче все переписано с NET на обычный 32-разрядный клон бейсика. Нет NET нет проблем smile
Разбираться с ошибками не было времени, да и желания тоже. Но факт остается фактом... чистого переноса с 32 на 64 бита не происходит.

DarkDragon  в 32-х битах переменых хватает, а в 64 перестает хватать? smile думаю компилятор NET, если он 64 битный - должен создать код для 64 битного проца\винды. (из промежуточного)

Написание ошибки из под CMD кину. Вот только до своей винды доберусь smile

Автор: Exception 1.12.2006, 20:17
И заодно код скинь.

Автор: popzow 1.12.2006, 22:09

Если с немезким хоросчо то они описали сдес ету проблемy

http://www.vbarchiv.net/forum/id10_i49957t49957.html

они написали 4то для 64 bit ест спезиалныи Framework 64 bit, i 4то мегду 32 bit и 64  bit ест неболая раснитza (MSDN: "Breaking Changes").

Ty dolgen i kompilirowat dlja 64 bit spezialno, ne kak dlja 32 bit.

Автор: Exception 1.12.2006, 22:29
Да, кстати, надеюсь, ты проставил в свойствах проекта, чтобы он компилился под x64?

Автор: popzow 2.12.2006, 10:55

Цитата
Да, кстати, надеюсь, ты проставил в свойствах проекта, чтобы он компилился под x64?


У меня вопрос если такая функзия B Express Edition?

Автор: bankuss 8.12.2006, 13:32
popzow нет такого. просто build и все.
кстати перекомпил исходников похоже спас ситуацию - ошибка пропала. но уже поздно smile

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)