Что лучше всего подходит для настольных виджетов (небольшой размер и красивая графика)? - PullRequest
4 голосов
/ 17 сентября 2008

Если бы я захотел создать красивый виджет, который бы работал в фоновом режиме с небольшим объемом памяти, с чего бы я начал создавать приложение для Windows. Его цель - сохранить обновленный список элементов веб-службы. Похож на читателя RSS.

примечание: слой данных будет подключаться через REST, который у меня уже есть C # dll, который, я полагаю, не сильно повлияет на площадь.

Очевидно, что я хотел бы использовать хороший проект WPF, но начальный размер ~ 60 000 КБ слишком велик.

* Приложение C # Forms составляет около ~ 20000

* C ++ Forms ~ 16 000 К

* CLR или MFC намного меньше, меньше 5

Есть ли способ урезать WPF или формы? и если бы я застрял с помощью CLR или MFC, то это был бы самый простой способ сделать его красивым. (мой опыт работы с MFC делает очень призовые формы)

Обновление: уточнение Вышеуказанные размеры - это память, используемая при запуске процесса, а не исполняемый файл.

Ответы [ 4 ]

2 голосов
/ 17 сентября 2008

Re:

Обновление: уточнение вышеуказанных размеров, память используется в качестве процесс запущен, а не исполняемый файл.

Хорошо, когда вы запускаете крошечное приложение C # Win Forms, наименьший объем ОЗУ, отведенный для него, составляет около 2 мегабайт, может быть, 4 мегабайт. Это просто рабочий набор, который он создает. Он не активно использует всю эту память или что-то подобное. Он просто резервирует столько места заранее, поэтому ему не нужно делать длинные / медленные / дорогие запросы на дополнительную память позже, когда это необходимо.

Резервирование меньшего размера заранее, вероятно, будет ложной оптимизацией.

(Вы можете уменьшить рабочий набор с помощью вызова pinvoke, если это действительно имеет значение. См. pinvoke для 'установки размера рабочего набора процесса' )

0 голосов
/ 02 октября 2009

Почему бы не использовать Silverlight? Вот статья , в которой говорится только об этом.

0 голосов
/ 17 сентября 2008

Если оно действительно должно быть как можно меньше, используйте обычный C и обращайтесь к Windows API напрямую.

Однако, поскольку вы все равно будете загружать CLR из-за .NET dll, я бы выбрал что-то менее болезненное и просто использовал бы C # для пользовательского интерфейса.

0 голосов
/ 17 сентября 2008

Если у вас «уже есть C # dll», которую вы собираетесь использовать, тогда на целевой машине должен быть уже установлен .net.

В этом случае приложение C # win form не обязательно должно быть где-то рядом с 20 Мб. Наименьшая форма приветствия типа "Привет, мир" будет 7 килобайт.

...