0 / 0 / 0
Регистрация: 05.11.2015
Сообщений: 33
1

Портирование приложения на другой компьютер

05.11.2015, 18:47. Показов 543. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте.

Долго искал что сделать, чтобы портировать получившийся релиз на другие ПК.
Приложение разрабатывалось в VS2010 как проект CLR->Windows Form Application в ОС Windows 8. Соответственно, в настройках компилятора значится /clr:pure, поэтому изменить параметры кодогенерации с /MD (динамическая линковка библиотек) на /MT (статическая линковка библиотек) не увенчалась успехом.

В итоге на целевой компьютер (Windows XP) поставил .NET 4, vsredist_x86. После этого приложение все равно грязно ругалось и выдавало какую-то там ошибку. После просмотра обращений к файлам через утилиту Русиновича скопировал все dll из папки, где фигурировало слово .NET. И чудо - прога заработала. Как выяснилось позже, необходима была лишь библиотека Microsoft.VisualBasic.PowerPacks.Vs.dll, которую я запихнул в папку с приложением.

Все бы хорошо, прога работает, даже как надо работает, но вот только поползло оформление формы. Прикладываю скрин приожения, слева - в разрабатываемой системе (Windows 8), справа - на целевой машине (Windows XP).

Причем заметно, что, например, кнопки и элементы Label приняли "местные" позиции и почему-то уменьшились, а вот линии (элементы lineShape) решили отрисовываться как раз по тем же позициям, что и в основной системе. Пробовал запускать приложение на 3-й машине - в ОС Windows 7, тоже самое, что и в Windows XP.
Подскажите, из-за чего поползло оформление формы и как это поправить?
Миниатюры
Портирование приложения на другой компьютер  
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
05.11.2015, 18:47
Ответы с готовыми решениями:

Перенос приложения с БД на другой компьютер
Здравствуйте. У меня есть прога на винформах которая берет данные с БД(добавляет,удаляе и тд.). Эту...

Перенос приложения на другой компьютер
Закинул в папку с exe libmysql.dll, на моем компе работает, запускаю на другом и libmysql.dll...

Перенос приложения на другой компьютер
Есть приложение Windows Forms, на моём компе всё работает. БД на localDB. Отправляю проект...

Перенос приложения с БД на другой компьютер
Прет всем , есть такая проблемка я реализовал на на своём ноуте обычное приложение которое...

2
Администратор
Эксперт .NET
9410 / 4696 / 759
Регистрация: 17.04.2012
Сообщений: 9,539
Записей в блоге: 14
06.11.2015, 08:07 2
Можно предположить, что на используемых вами Win 8 и XP разный DPI.
К сожалению, это одно из слабых мест в Windows Forms; можете попробовать установить AutoScaleMode = DPI для всех форм и там, где это возможно, поместить контролы в контейнеры, такие как FlowLayoutPanel и TableLayoutPanel. Но это помогает не всегда, приходится вручную двигать контролы для разных настроек DPI.
1
0 / 0 / 0
Регистрация: 05.11.2015
Сообщений: 33
06.11.2015, 14:40  [ТС] 3
Спасибо за ответ!

Поковырялся с этим параметром для основной формы (по умолчанию параметр был Font):
AutoScaleMode = DPI
DPI не прокатило, а вот выставление параметра None дало нужный результат:
AutoScaleMode = None
В итоге все нормально отрисовалось в WinXP, больше ничего изменять не пришлось, только этот параметр в основной форме.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
06.11.2015, 14:40
Помогаю со студенческими работами здесь

Установка приложения на другой компьютер
Написал свою первую программу на VB. Когда принес ее заказчику, то она стала выдавать ошибку...

Перенос приложения с БД SQLite на другой компьютер
Столкнулся с следующей ситуацией: приложение с базой данных SQLite, написанное на C#, не...

Qt5 Перенос приложения на другой компьютер
Установил я QtCreator + Qt5 + MinGW. Все зашибись работает. Что бы иметь возможность запускать...

Перенос Qt приложения на другой компьютер (linux)
Cоздал небольшое приложение на Qt 5.8.0, из используемого QtCore, QtNetwork и QtSql. Сборка qt...

Проблема при переносе приложения на другой компьютер
Доброго времени суток. Написал приложения с помощью WinAPI, на моем компьютере запускается, однако,...

Установка приложения и базы данных на другой компьютер
Всем привет! Подскажите как можно собрать установщик из приложения wpf, в котором выполняются...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru