.NET 4 Программа, написанная / скомпилированная на машине с Windows 7, не будет работать на XP

У меня есть приложение, которое я написал с помощью C # .NET 4.0 в Visual Studio 2010 на моем компьютере с Windows 7 Ultimate. Это приложение отлично работает как на Vista, так и на других компьютерах с Windows 7, но всякий раз, когда кто-то, работающий под управлением Windows XP, пытается его запустить, происходит сбой.

Чтобы воспроизвести это, я попытался запустить его на моей машине Win XP VMWare, и у меня там произошел сбой. К сожалению, это не дает мне никакой конкретной ошибки, просто информирует меня о том, что программа вылетела и ее необходимо закрыть.

Другой пользователь прислал мне следующее:

Run-time error '339'
Component 'vbalSGrid6.ocx' or one of its dependencies not correctly registered: a file is  missing or invalid.

Code 0xe0434352
Flags 0x00000001

Я не получаю этот конкретный бит, когда пытаюсь запустите его на моей машине Virtual XP, и я также убедился, что установил там .NET 4.0.

Что может быть причиной этого и почему приложение не запускается в XP, если платформа .NET 4 поддерживается для XP ?

Компоненты, используемые в программе: DataGridView, ComboBox, Buttons, Labels, LinkLabel, парсер JSON NewtonSoft, и это все.

Я сбит с толку и совершенно не знаю, с чего начать. Идеи?

ОБНОВЛЕНИЕ : Хм, попробовал запустить другое мое недавно созданное приложение на XP, и оно нормально загрузилось. Единственное существенное различие (в компонентах, которые я все равно использовал) между ними - это то, что я использую библиотеку NewtonSoft JSON, которая, как мне кажется, является компонентом .NET 3.5.

ОБНОВЛЕНИЕ 2 : Просто ради удовольствия я попытался запустить программа на моей машине Wind7 в режиме совместимости "Windows XP SP3", и она работала нормально. Конечно, я понятия не имею, насколько точно "режим совместимости" имитирует настоящую среду XP SP3, но я решил, что все равно дам вам информацию.

5
задан Sootah 20 February 2011 в 04:29
поделиться