Действительно портативное приложение, если это действительно ваш вопрос, должно:
- Не требует установки.
- Работайте везде, куда вы копируете.
Мое собственное определение переносного приложения на гештальте не всегда требует , чтобы приложение работало, когда оно находится в месте, доступном только для чтения, и кроме этой ссылки на википедию, я не уверен, что оно стандартное в дикой природе. Это здорово, что вы пытаетесь следовать букве закона, как изложено в статьях Википедии. Меня раздражает, что цитата, которую вы дали из статьи в Википедии, содержит некоторое внутреннее противоречие; если оба определения предполагают, что CDROM должен поддерживаться (или ваше приложение не переносимо), а также указывает, что данные должны храниться только на этом носителе. Вы столкнулись с этим противоречием и теперь нарушаете одну часть буквы закона, чтобы избежать нарушения первой части этого закона. Таким образом, определение либо запрещает вам вообще что-либо сохранять в этом случае, либо это определение на самом деле не является законом само по себе, и вы можете делать все, что хотите, при условии соблюдения двух пунктов, упомянутых выше.
Минималистское определение портативного приложения - это то, которое я дал выше, и то, что вы делаете помимо этих двух пунктов, должно быть тем, что подходит вашим пользователям.
Я действительно не понимаю, как кто-либо в SO может дать вам зеленый свет на мобильность. Вы можете по-настоящему проверить мобильность только путем тестирования и, в идеале, тестирования группой людей, например, бета-тестерами или пользователями fieldtest. Я также не вижу StackOverflow как хорошее место для запросов о помощи в тестировании двоичных файлов. Это сайт для того, чтобы задавать вопросы по программированию, а не для формирования бета-тестов, полевых тестов и т. Д. Или для продвижения вашего приложения. На самом деле я не понимаю, как мы могли бы безопасно загрузить двоичный файл от вас и не рисковать нашими системами, использующими двоичный код, который мы загрузили по ссылкам здесь. Я рекомендую вам удалить ссылку на двоичные файлы.
Тесты, которые я бы сделал:
Поместите его на USB-ключ и запустите на нескольких разных компьютерах на нескольких разных системах Windows, включая XP, Vista, Win 7, Windows Server 2008 на нескольких уровнях пакета обновления (без SP, Sp1, Sp2 , Sp3 на XP и т. Д.) И на нескольких разных грязных системах (системах с установленной Visual Studio, установленной Delphi, установленной в офисе и различными антивирусными системами).
Убедитесь, что вам не требуются внешние BPL / DLL библиотеки времени выполнения или другие компоненты времени выполнения, кроме тех, которые находятся в той же папке, что и ваш исполняемый файл (конфигурация рядом друг с другом). Таким образом, путь пользователя не должен быть изменен, чтобы ваше приложение работало, и вам не нужно беспокоиться о путанице в DLL.
Убедитесь, что в вашем приложении нет записей реестра или файловой системы вне папки приложения. SysInternals Process Monitor отлично подходит для этого.