Я согласен с Artiom и вижу только один действительный ответ: протестируйте его на Windows 7.
Мы могли бы записать список возможных проблем здесь (и я сделаю это через секунду), но вам все равно нужно
- Проверьте ваше программное обеспечение на соответствующей архитектуре
- Проверьте сообщения об ошибках / условия самостоятельно
Возможные изменения между XP и Windows 7:
Контроль доступа пользователей (UAC):
Это означает, что ваша программа не запускается с правами администратора, если вы не
- явно запустить его так
- требовать административные права в конкретном ресурсе манифеста, который поддерживается в Vista / Windows7
Это также означает, что ваше приложение не может выполнять запись в некоторые папки (UAC пытается «помочь» вам с «Перенаправление виртуальной папки»: если вы записываете в% ProgramFiles%, оно автоматически записывает в ваш профиль пользователя и «успешно». пользователь ожидает увидеть ваше изменение в директории% ProgramFiles%, хотя его там не будет), даже не получив сообщение об ошибке.
Относительно ваших конкретных отчетов и проблем:
1) Дайте более подробную информацию об этой функции. Возможно, это зависит от DLL, которой нет в Windows7 (но она была на каждой машине с XP). Может быть, это просто связано с разрешениями (см. Выше). Подробнее -> Дополнительная помощь.
2) Опять подробнее. Возможный кандидат: Ваше приложение работает как 64-битное приложение, хотя оно имеет жесткие / ранние зависимости от 32-битных собственных DLL через P / Invoke. Опять же, вы предоставляете недостаточно информации.