Проблема сохранения параметров проекта в VS
От: Chernyavskiy  
Дата: 25.03.09 12:46
Оценка:
Доброго времени суток.

Необходимо сохранить установку Environment из закладки Configuration Properties/Debugging.

При сохранение проекта, данная настройка попадает не в основной .vsproj, а в .vcproj.USERNAME.user, что недопустимо, т.к.
я готовлю примеры, которые будут распространяться вместе с продуктом.

Пробовал использовать Property Sheets (.vsprops), однако в них нет Environment.

Суть борьбы за сохранность Environment кроется в необходимости загрузки DLL не из текущего каталога. Притом, каталог не обязан быть прописан в PATH.

Люди добрые, поделитесь своими соображениями на этот счет.

С уважением,
Chernyavskiy

27.03.09 15:36: Перенесено модератором из 'C/C++. Прикладные вопросы' — Кодт
Re: Проблема сохранения параметров проекта в VS
От: Sergey Россия  
Дата: 25.03.09 12:48
Оценка:
"Chernyavskiy" <80634@users.rsdn.ru> wrote in message news:3341717@news.rsdn.ru...

> Необходимо сохранить установку Environment из закладки Configuration Properties/Debugging.

>
> При сохранение проекта, данная настройка попадает не в основной .vsproj, а в .vcproj.USERNAME.user, что недопустимо, т.к.
> я готовлю примеры, которые будут распространяться вместе с продуктом.
>
> Пробовал использовать Property Sheets (.vsprops), однако в них нет Environment.
>
> Суть борьбы за сохранность Environment кроется в необходимости загрузки DLL не из текущего каталога. Притом, каталог не обязан быть прописан в PATH.

Dll, путь к которой надо указывать, откуда берется?
Posted via RSDN NNTP Server 2.1 beta
Одним из 33 полных кавалеров ордена "За заслуги перед Отечеством" является Геннадий Хазанов.
Re[2]: Проблема сохранения параметров проекта в VS
От: Chernyavskiy  
Дата: 25.03.09 12:57
Оценка:
Здравствуйте, Sergey, Вы писали:


S>"Chernyavskiy" <80634@users.rsdn.ru> wrote in message news:3341717@news.rsdn.ru...


>> Необходимо сохранить установку Environment из закладки Configuration Properties/Debugging.

>>
>> При сохранение проекта, данная настройка попадает не в основной .vsproj, а в .vcproj.USERNAME.user, что недопустимо, т.к.
>> я готовлю примеры, которые будут распространяться вместе с продуктом.
>>
>> Пробовал использовать Property Sheets (.vsprops), однако в них нет Environment.
>>
>> Суть борьбы за сохранность Environment кроется в необходимости загрузки DLL не из текущего каталога. Притом, каталог не обязан быть прописан в PATH.

S>Dll, путь к которой надо указывать, откуда берется?

DLL собираются при сборке основного проекта. Разрабатываемые мною сэмплю призваны показать конечному пользователю пример сипользования
возможностей данных DLL.
Re[3]: Проблема сохранения параметров проекта в VS
От: Sergey Россия  
Дата: 25.03.09 13:05
Оценка:
"Chernyavskiy" <80634@users.rsdn.ru> wrote in message news:3341741@news.rsdn.ru...

>>> Необходимо сохранить установку Environment из закладки Configuration Properties/Debugging.

>>>
>>> При сохранение проекта, данная настройка попадает не в основной .vsproj, а в .vcproj.USERNAME.user, что недопустимо, т.к.
>>> я готовлю примеры, которые будут распространяться вместе с продуктом.
>>>
>>> Пробовал использовать Property Sheets (.vsprops), однако в них нет Environment.
>>>
>>> Суть борьбы за сохранность Environment кроется в необходимости загрузки DLL не из текущего каталога. Притом, каталог не обязан быть прописан в PATH.
>
> S>Dll, путь к которой надо указывать, откуда берется?
> DLL собираются при сборке основного проекта. Разрабатываемые мною сэмплю призваны показать конечному пользователю пример сипользования
> возможностей данных DLL.

Ну так и переделать сэмплы так, чтобы Dll собиралась при сборке основного проекта в нужную директорию. Насколько помню, последние версии студии так по дефолту и делают.
Posted via RSDN NNTP Server 2.1 beta
Одним из 33 полных кавалеров ордена "За заслуги перед Отечеством" является Геннадий Хазанов.
Re[4]: Проблема сохранения параметров проекта в VS
От: Chernyavskiy  
Дата: 25.03.09 13:13
Оценка:
Здравствуйте, Sergey, Вы писали:


S>"Chernyavskiy" <80634@users.rsdn.ru> wrote in message news:3341741@news.rsdn.ru...


>>>> Необходимо сохранить установку Environment из закладки Configuration Properties/Debugging.

>>>>
>>>> При сохранение проекта, данная настройка попадает не в основной .vsproj, а в .vcproj.USERNAME.user, что недопустимо, т.к.
>>>> я готовлю примеры, которые будут распространяться вместе с продуктом.
>>>>
>>>> Пробовал использовать Property Sheets (.vsprops), однако в них нет Environment.
>>>>
>>>> Суть борьбы за сохранность Environment кроется в необходимости загрузки DLL не из текущего каталога. Притом, каталог не обязан быть прописан в PATH.
>>
>> S>Dll, путь к которой надо указывать, откуда берется?
>> DLL собираются при сборке основного проекта. Разрабатываемые мною сэмплю призваны показать конечному пользователю пример сипользования
>> возможностей данных DLL.

S>Ну так и переделать сэмплы так, чтобы Dll собиралась при сборке основного проекта в нужную директорию. Насколько помню, последние версии студии так по дефолту и делают.

Так не получится. Во-первых, DLL много. Так что логично, что они лежат в отдельном каталоге.
Во-вторых, сэмплов тоже много. Копировать все необходимые DLL в каждый сэмпл — много места лишнего потребуется, да и клиентов оттолкнет.
Re[5]: Проблема сохранения параметров проекта в VS
От: Sergey Россия  
Дата: 25.03.09 13:58
Оценка:
"Chernyavskiy" <80634@users.rsdn.ru> wrote in message news:3341777@news.rsdn.ru...

>>>>> Необходимо сохранить установку Environment из закладки Configuration Properties/Debugging.

>>>>>
>>>>> При сохранение проекта, данная настройка попадает не в основной .vsproj, а в .vcproj.USERNAME.user, что недопустимо, т.к.
>>>>> я готовлю примеры, которые будут распространяться вместе с продуктом.
>>>>>
>>>>> Пробовал использовать Property Sheets (.vsprops), однако в них нет Environment.
>>>>>
>>>>> Суть борьбы за сохранность Environment кроется в необходимости загрузки DLL не из текущего каталога. Притом, каталог не обязан быть прописан в PATH.
>>>
>>> S>Dll, путь к которой надо указывать, откуда берется?
>>> DLL собираются при сборке основного проекта. Разрабатываемые мною сэмплю призваны показать конечному пользователю пример сипользования
>>> возможностей данных DLL.
>
> S>Ну так и переделать сэмплы так, чтобы Dll собиралась при сборке основного проекта в нужную директорию. Насколько помню, последние версии студии так по дефолту и делают.
> Так не получится. Во-первых, DLL много. Так что логично, что они лежат в отдельном каталоге.
> Во-вторых, сэмплов тоже много. Копировать все необходимые DLL в каждый сэмпл — много места лишнего потребуется, да и клиентов оттолкнет.

Дело хозяйское. Вариантов вижу ровно 2:
1) попробовать найти в студии недокументированные особенности, например скопировав отвечающий за Environment кусок XML из vcproj.USERNAME.user в нужный vsprops. На мой взгляд, есть неплохие шансы на то, что оно его смерджит и не выкинет. Правда, такие же шансы я вижу и у варианта, когда найденный сейчас хак перестанет работать в следующей версии студии. Что оттолкнет клиентов значительно сильнее.
2) использовать delayload (там изначально хуки предусмотрены), ищущий dll по нужным путями. Пути (относительные) придется хардкодить.
Ну а лично я бы не заморачивался и все сложил в кучу — и экзешники, и dll.
Posted via RSDN NNTP Server 2.1 beta
Одним из 33 полных кавалеров ордена "За заслуги перед Отечеством" является Геннадий Хазанов.
Re: Проблема сохранения параметров проекта в VS
От: chipmunk  
Дата: 03.04.09 10:33
Оценка:
Здравствуйте, Chernyavskiy, Вы писали:

C>Люди добрые, поделитесь своими соображениями на этот счет.



у меня недавно стоял точно такой же вопрос

я решил простым добавлением в Post-Build Event команды:
copy "относительный путь где лежит dll" "$(OutDir)"

копии получаются в нужной папке только при сборке примера

кстати так же любит делать C# — он копирует зависимые сборки в рабочую директорию
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.