edlin или редактирование
плюс существуют Windows Services для Unix, который идет со многими инструментами Unix для окон. http://technet.microsoft.com/en-us/interopmigration/bb380242.aspx
Обновление 07.12.12 В Windows 2003 R2, Windows 7 & Сервер 2008, и т.д. вышеупомянутое заменяется Подсистемой для Основанных на UNIX Приложений (SUA) как дополнение. Но необходимо загрузить утилиты: http://www.microsoft.com/en-us/download/details.aspx?id=2391
Также проверьте Qt. Это очень многофункциональная кроссплатформенная структура.
Что касается установщиков, я настоятельно рекомендую WiX .
Для тестирования будет намного лучше использовать какую-нибудь виртуализацию, например VirtualBox от Sun Microsystems. Я считаю, что вы можете использовать пробную версию Windows или Windows 7 RC, которую можно использовать бесплатно до марта 2010 года.
Во-первых, да, это хорошая идея. У меня есть несколько проектов, в которых я поддерживаю их версию Windows таким образом.
В любом случае, я предлагаю вам протестировать конечный продукт на машине Windows. Если у вас есть лицензия на ОС Windows, вы можете использовать виртуализацию для проведения финальных тестов.
Я предлагаю использовать Autotools , который имеет очень хорошую поддержку кросс-компиляции и работает "изначально" с кросс-компилятором.
В Debian, например, при запуске
./configure --host=i586-mingw32msvc
Это создаст правильный make-файл кросс-компиляции, как если бы это был проект Unix.
В любом случае я бы рекомендовал разработать кросс-платформенную версию и время от времени тестировать родная версия Windows с Wine / Windows путем их кросс-компиляции.
Вы подразумеваете, что приложения предназначены только для Windows, а не для кроссплатформенности, и в этом случае я думаю, что ответ на вопрос 3. - Это действительно не очень хорошая идея - превосходит все остальные.
Причина в том, что вам в любом случае придется тщательно протестировать приложение под Windows, напрямую или в виртуальном экземпляре. Таким образом, вам лучше разрабатывать под целевой ОС, потому что вы с большей вероятностью создадите лучшее приложение - как за счет более раннего и более тщательного выявления ошибок, так и за счет обеспечения того, чтобы ваше приложение «работало» для ваших пользователей. Я бы не стал доверять только Wine .
Я не большой поклонник кроссплатформенных виджетов. Как и в случае с Java-приложениями, вы обычно получаете что-то, что не совсем выглядит правильно, и как сверхъестественный пробел, которого может быть достаточно, чтобы ваше приложение плохо пахло большой частью ваших пользователей. Даже на более абстрактном уровне приложения каждой ОС немного по-разному воспринимают то, как они работают, и вы, скорее всего, получите приложение Windows, которое похоже, скажем, на KDE, что снова оттолкнет ваших пользователей .
Так что да, это, безусловно, возможно, но, вероятно, это не оптимальный подход с точки зрения качества конечного продукта. Поступая так, вы столкнетесь с некоторыми затруднениями в том, что вы производите, и я бы сказал, что это, вероятно, сведет на нет удобство использования платформы Linux. На самом деле я был бы удивлен, если бы у вас получилось даже это, потому что готов поспорить,
Сообщайте нам, как у вас дела - это интересно.
2) Нет, Wine, как он говорит, не Windows, вы не можете надежно протестировать его таким образом. Я предлагаю запустить виртуальную машину в вашем Linux, что сделает вашу работу более гладкой.
3) Кажется возможным, для графического аспекта я бы также рассмотрел GTK + , который использовался для GIMP и работает примерно так же в Windows и Linux.
В любом случае вам понадобится лицензия MSDN, чтобы получить доступ ко всему множеству версий Windows, на которых вы захотите протестировать.
Вы захотите установить тестовые ОС на виртуальные машины. . Это может быть на вашем рабочем столе Linux, но специальный ящик может быть лучше.
Я не знаю, сколько версий Windows вы планируете поддерживать, но вам определенно следует протестировать на всех из них. Wine - это не Windows, и Windows XP не то же самое, что Windows Vista, Windows 7 и т. Д. Существует также множество различных дистрибутивов и языков Windows, некоторые из которых вы, несомненно, должны протестировать.
В любом случае, разрабатывайте в Linux. Обязательно используйте кроссплатформенные виджеты (да, они хороши). Но вам все равно понадобится лицензия MSDN, чтобы вы могли устанавливать тестовые ОС.
NSIS , система установки сценариев Nullsoft может быть скомпилирована под Linux и использоваться для создания двоичных файлов установки для Windows. Инструкции здесь . Прочтите общий раздел и раздел, посвященный построению на POSIX.
Я использую его для выполнения установок для нескольких проектов.