В настоящее время у меня есть «приложение» VBScript для поддержки, которое нужно отправить клиентам для запуска, а затем клиент отправляет обратно HTML-файл с результатами. Для сравнения, выходные данные аналогичны Syscomp.exe из Absolute Dynamics за исключением того, что мой файл представляет собой один файл .vbs, и в нем нет функции «сравнения».
Проблема: требования к этому инструменту поддержки постоянно меняются, а его масштаб/цель расширяются — слишком велики, как мне кажется, для того, чтобы VBScript больше был подходящим инструментом. В идеале мой новый инструмент должен иметь механизм настройки. Например, вместо того, чтобы жестко кодировать все требования/что искать, может быть файл конфигурации, такой как App.config, или, что еще лучше, файл XML с моей собственной схемой разметки, который может быть поставляется как часть приложения на основе потребностей каждого клиента. Примечание. Я требую «без установки», потому что это будет постоянно меняться, а установщик сделает его гораздо менее гибким; мы не собираемся просить клиентов устанавливать каждый раз, когда рассылаем это.
желаемое решение: мне нужно перейти на платформу более общего назначения. .Net идеален, потому что мы уже являемся магазином .Net. Хотя, если с .Net я не могу придумать решение для распространения таким же образом, как я уже делаю это с текущим VBScript (единая сущность), тогда я рассмотрю другие платформы программирования общего назначения, если они будут упомянуты.
Что я пробовал:
DotNetZip, благодаря помощи Cheeso по этому вопросу SO: Запуск файла . Net из сжатого ZIP-файла. Я смог использовать это для отправки .Net EXE с поддерживающими DLL и App.config, упакованными в самораспаковывающийся ZIP-файл. К сожалению, это не работает в Windows XP, если я что-то не упустил. РЕДАКТИРОВАТЬ: подтверждено, что это ограничение Windows XP и Windows Vista, а не DotNetZip. Мне нужно, чтобы мое решение работало на XP (многие клиенты имеют XP или фермы Windows 2003 Server)
7Zip — не соответствует моим потребностям, потому что я не могу добавить .config в архив .7z после того, как «создал» свое решение. Я смог добавить файлы в SFX, созданные в DotNetZip, просто переименовав его в «.zip», добавив новый .config, а затем удалив расширение .zip.
NBox не будет работать, поскольку упаковка любого файла конфигурации (например, app.config) должна быть частью мой процесс сборки. Мне нужна конфигурация, которую я могу просто «вставить» после/вне процесса сборки в любой момент и сделать ее частью конечного продукта, который будет отправлен.
Мастер Zip для Coffee Cup не имеет способа распаковать файлы без вмешательства пользователя. Также не позволяет запускать EXE после распаковки
Zip-установщик от NirSoft. Не соответствует моим требованиям, потому что он по-прежнему предлагает конечному пользователю, где установить файлы.
ZIP 2 Secure EXE. К сожалению, это тоже не получилось, хотя я не могу вспомнить, в чем был недостаток
NAR. это не сработало, потому что для этого требуется установка. Кроме этого, это, вероятно, сработало бы.
вопросы:
- Возможно ли это, учитывая мои требования? Если да, то с чего мне начать, например. со сторонним, таким как упомянутый выше, или, может быть, тот, который я пропустил?
- Кто-нибудь сталкивался с похожей ситуацией, в которой я нахожусь, но выбрал другой маршрут, отличный от одного приложения файла/сущности, и хотел бы поделиться?
Требования:
- должен быть единым объектом (например, EXE или ZIP)
- должен поддерживать хотя бы один файл конфигурации, поддерживающие библиотеки DLL и т. д. «Надежное» приложение. Редактировать: например, после сборки моего кода его можно заархивировать как самораспаковывающийся ZIP. Любой может «настроить» его с помощью конфигурации XML, затем переименовать .exe в .zip, добавить свою конфигурацию и отправить ее.
- Должен работать в XP и вперед. Изменить: мы предполагаем, что среда выполнения .Net установлена (по крайней мере, v3.5)