Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > WPF и Silverlight > Не удается запустить приложение-пример


Автор: V0fka 14.11.2013, 17:19
Привет!

Скачал пример калькулятора: http://msdn.microsoft.com/ru-ru/library/vstudio/ms771362(v=vs.90).aspx

Открыл проект в VS2012, оно ругнулось на что-то связанное с "manifest". Кстати, в дереве проекта файл app.manifest помечен желтеньким восклицательным знаком. Самого этого файла по указанному в свойствах пути не обнаружено. Причем в проекте до конвертации тоже его нету. Это была преамбула.

После конвертации проект открылся. Форма основного окна в редакторе показывается, никаких ошибок студия не обнаруживает. Пробую запустить приложение в отладке. Оно стопорится в конструкторе основного окна на строке инициализации:

user posted image

Жмем "продолжить отладку", программа двигается дальше и стопорится на этой строке уже намертво:

user posted image

Захожу в метод InitializeComponent(), там есть такое:

Код

        public void InitializeComponent() {
            if (_contentLoaded) {
                return;
            }
            _contentLoaded = true;
            System.Uri resourceLocater = new System.Uri("/AvalonCalculator2;component/window1.xaml", System.UriKind.Relative);
            
            #line 1 "..\..\Window1.xaml"
            System.Windows.Application.LoadComponent(this, resourceLocater);
            
            #line default
            #line hidden
        }


Ну и вроде как понятно, что беда в строке:

Код
System.Uri resourceLocater = new System.Uri("/AvalonCalculator2;component/window1.xaml", System.UriKind.Relative);


Но, во-первых, непонятно что оно вообще хочет, а во-вторых этот же код генерируется из XAML и теперь непонятно ещё больше smile

Добавлено через 3 минуты и 18 секунд
Забыл сказать. Приложение компилируется без ошибок. При попытке его запустить процесс появляется в диспетчере задач на пару секунд и пропадает. Никаких "визуальных эффектов" при этом не замечается.

Автор: Partizan 28.11.2013, 15:43
Вернул.

Автор: V0fka 28.11.2013, 16:32
Спасибо! А то я было расстроился.

По теме: вопрос до сих пор для меня актуальный. smile 

Автор: jonie 29.11.2013, 10:03
вкратце в том проекте: 1) кривые неймспейсы в свойствах проекта 2) стоит UICulture отличная (видимо) от того под которой ты работаешь. Из-за этого генератор resx файлов для xaml кода (который в resx пихает baml) создаёт файлы с указанием культуры en-us в названии файла. В тоже время сборщик приложения почему-то не использует эту настройку и пытается найти natural ресурс для включения. Не находит => baml не попадает в ресурсы приложения => двиг WPF не может их найти.


короче поправил пример и приаттачил.

Автор: V0fka 4.12.2013, 22:09
На досуге обязательно посмотрю и отпишу по результату. Спасибо большое!

Автор: V0fka 9.12.2013, 23:35
jonie, посмотрел. Работает smile . Но, признаться, я не понял, как ты заставил его работать :( . Открыл 2 проекта в VS, кое какие различия увидел, в т.ч. в App.xaml и Window1.xaml, но попытка перенести из твоего проекта в оригинальный к успеху не привели. Если не составит труда, ты бы не мог немного подробнее описать, как "завести" проект?

Цитата(jonie @  29.11.2013,  10:03 Найти цитируемый пост)
1) кривые неймспейсы в свойствах проекта

Это где смотреть? У меня свойства проекта (ПКМ\Свойства) по началу не открывались, говорило, что чего-то не хватает и с вопросом "Не показывать это окно?", я нажал "Да, не показывать" и теперь при попытке открыть своства проекта вообще ничего не происходит. Посмотрел свойства всех файлов в проекте, но для себя ничего "интересного" не обнаружил.

Цитата(jonie @  29.11.2013,  10:03 Найти цитируемый пост)
2) стоит UICulture отличная (видимо) от того под которой ты работаешь.

А это где смотрится?

Автор: jonie 16.12.2013, 15:10
Цитата(V0fka @  10.12.2013,  00:35 Найти цитируемый пост)

А это где смотрится? 

csproj файл смотри.

Автор: V0fka 4.1.2014, 15:27
jonie, извини, что не отвечал долго.

Цитата(jonie @  16.12.2013,  15:10 Найти цитируемый пост)
csproj файл смотри. 

Посмотрел, отличия увидел. Но даже с учетом того, что ты выше подробно написал в чем проблема, на данном уровне развития в C# я так и не понял откуда ты узнал в чем проблема и как её исправить. Видимо, это опыт smile .

Спасибо тебе за ответы! Тему помечаю решенной, т.к. решение этой проблемы упирается в мои знания. Но если будет что сюда добавить - я с удовольствием с этим ознакомлюсь!

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)