Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > WPF, UWP, WinRT, XAML
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 29.06.2015, 22:47   #1
D][mon
Форумчанин
 
Регистрация: 05.01.2010
Сообщений: 150
По умолчанию WPF, визуальный конструтор, нативные dll

Сделал компонент, которые при инициализации может подтянуть #TagsLib.dll
(если добавлять дочерние элементы в контрол прямо в xaml)
визуальный конструктор при этом "Не удается загрузить DLL"
подскажите пожалуйста, где он ее ищет (визуальный конструктор xaml), ибо в debug и папке проекта, по видимому, не находит.
D][mon вне форума Ответить с цитированием
Старый 30.06.2015, 09:58   #2
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Вы о чем? Причем тут xaml? Код покажите что ли.

И XAML это не "визуальный конструктор", а язык разметки. "Визуальный конструктор" это то, что в студии или Blend'е позволяет мышкой кидать кнопки на формы без написания XAML самому (что я бы не советовал делать, ибо это не винформс и проще просто самому XAML писать).
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 02.07.2015, 01:06   #3
D][mon
Форумчанин
 
Регистрация: 05.01.2010
Сообщений: 150
По умолчанию

код не нужен, ибо он верен.
попробую объяснить по другому.

конструктор класса UserControl вызывает метод с атрибутом DllImport.
приложение работает, все ок.

но в визуальном конструкторе, в котором открыт xaml для класса окна, содержащего мой user control, этот контрол имеет желтый предупреждающий знак, и сообщение, в котором указано, что привызове конструтора, не удалось найти tagslib.dll, ту самую, функцию которой я импортирую и пытаюсь вызвать.

Вот и вопрос: где визуальный конструтор, вызывая конструтктор класса моего user control, в котором вызывается метод c аттрибутом dllimport, ожидает найти мою dll, если ни в папке проекта, и в папке debug, он ее там не видит. В то время как мое приложение прекрасно работает.
D][mon вне форума Ответить с цитированием
Старый 02.07.2015, 09:05   #4
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

А в WPF конструкторе Working Directory и т.п. это не папка приложения, а папка студии. То есть если написать
Код:
File.ReadAllText("file.txt");
то оно будет читать из C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE (в 2012 студии).

Если очень надо, то можно самому как-нибудь находить правильный путь и грузить через LoadLibrary + GetProcAddress http://stackoverflow.com/a/8836228/964478

Или просто не вызывать эту функцию в конструкторе
Код:
if (...IsDesignMode)
{
    = "dummyData";
}
else
{
    = myDllFunc();
}
http://stackoverflow.com/questions/4...roperty-in-wpf
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.

Последний раз редактировалось Alex11223; 02.07.2015 в 09:07.
Alex11223 вне форума Ответить с цитированием
Старый 02.07.2015, 15:02   #5
D][mon
Форумчанин
 
Регистрация: 05.01.2010
Сообщений: 150
По умолчанию

Alex11223,
действительно, спасибо.
D][mon вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[C# + WPF] Отлов нажатий клавиш, хуки, горячие клавиши в проекте WPF Casper-SC WPF, UWP, WinRT, XAML 3 03.03.2017 15:00
Дружественные функции.Конструтор - копирования. licherr Общие вопросы C/C++ 1 12.11.2012 23:27
WPF, DLL и потоки... Namolem WPF, UWP, WinRT, XAML 3 22.11.2010 22:54
WPF: xpcom.dll не найден. Lazio Общие вопросы .NET 2 22.10.2010 18:28
класс Screen в WPF. Есть ли такой? [?] Не добавлять же сборку Forms в WPF Casper-SC Общие вопросы .NET 2 30.07.2010 15:10