Приложение C # зависает на Vista / 7, а не на сервере XP / 2003

Одна возможность:

myArray = myArray.filter(function( obj ) {
    return obj.field !== 'money';
});

Обратите внимание, что filter создает новый массив. Любые другие переменные, относящиеся к исходному массиву, не будут получать отфильтрованные данные, хотя вы обновляете исходную переменную myArray с помощью новой ссылки. Используйте с осторожностью.

1
задан Pierre 3 July 2010 в 15:05
поделиться

4 ответа

Попросите клиента захватить дамп процесса с помощью диспетчера задач Windows,

  1. В диспетчере задач найдите процесс, который зависает.
  2. Щелкните правой кнопкой мыши и создайте дамп памяти.

Затем вы можете провести анализ дампа, чтобы выяснить причину зависания.

Если вы не знакомы с анализом дампа, найдите того, кто может помочь, или откройте случай поддержки через http://support.microsoft.com

0
ответ дан 2 September 2019 в 23:19
поделиться

Обычно приложение .NET должно работать одинаково в любой версии Windows с установленной платформой .NET. Наиболее распространенная проблема связана с новой политикой контроля учетных записей пользователей в Vista и 7, которая предотвращает доступ приложений к областям, требующим повышенных привилегий (которые в противном случае нормально работали бы под учетной записью администратора в XP).

Например, если ваше приложение пытается записать параметры конфигурации в папку Program Files (что очень плохая идея, кстати) или использует жестко запрограммированные пути на диске или в реестре вместо переменных среды предоставленный в классах .NET, он может не работать в Vista.

Чтобы быстро проверить, не является ли это проблемой с правами UAC, попробуйте запустить приложение от имени администратора (щелкните правой кнопкой мыши на клиенте.exe и выберите Запуск от имени администратора ). Если это работает, то это говорит о том, что вам нужно изучить свой код и обновить его, чтобы убедиться, что вы получаете доступ только к разрешенным областям.

Для получения дополнительной информации перейдите по этой ссылке: Обеспечение поддержки UAC приложений .

Как было предложено в redsquare , лучший способ протестировать ваше приложение в различных системах Windows - запустить их на нескольких виртуальных машинах ( MS Virtual PC или VMWare Player , оба бесплатны для скачивания).

2
ответ дан 2 September 2019 в 23:19
поделиться

Вы не даете много информации, чтобы мы могли оказать большую помощь.

Я бы начал с попытки воссоздать проблему локально на виртуальной машине (перспектива доступна здесь ), а затем профилировать приложение с помощью чего-то вроде мемпрофиля .

0
ответ дан 2 September 2019 в 23:19
поделиться

Приложения csharp должны работать на vista/win7. Это их дом:)

Ваша проблема не в ОС, а в вашем приложении. Скорее всего, приложение ищет файл, папку, что-то на стороне клиента, чего там нет, и оно зависает. это мой опыт.

Проверьте проект на независимость и убедитесь, что вы отправили клиентам все, что нужно вашему проекту.

И последнее, распространите среди клиентов отладочную версию с включенными отладочными сообщениями и получите обратную связь от их системы.

0
ответ дан 2 September 2019 в 23:19
поделиться
Другие вопросы по тегам:

Похожие вопросы: