Страница 1 из 1
					
				Подключить свою dll к Галактике/support/vip
				Добавлено: 02 авг 2005, 10:40
				 san
				Как подлючить свою dll так, что бы она автоматически загружалась при
запуске галактики/support/vip. Что то вроде добавить loadlibrary(mydll) в существующую dll/exe, возможно еще какой-то еще способ.
Нужно для использования в конфигураторе. Объявление ф-ции библиотеки из vip неподходят. 
Кто что знает?
			 
			
					
				
				Добавлено: 02 авг 2005, 11:15
				 Goblin
				Свой рес, в нем описание функции , в какой DLL она , и этот рес в конфиге подключать
			 
			
					
				
				Добавлено: 02 авг 2005, 11:29
				 san
				Goblin писал(а):Свой рес, в нем описание функции , в какой DLL она , и этот рес в конфиге подключать
Объявление ф-ции библиотеки из vip неподходят. Не будет видно из конфигуратора/вычислителя.
 
			
					
				
				Добавлено: 23 авг 2005, 17:25
				 Maverick
				тогда докомпилировать объявленные ф-ии в стандартный рес. в тот же extfun.res
			 
			
					
				
				Добавлено: 24 авг 2005, 11:25
				 san
				Maverick писал(а):тогда докомпилировать объявленные ф-ии в стандартный рес. в тот же extfun.res
Тоже не вариант, ф-ции видно только в вип-программах, по ctrl-f4 ее не вычислить. Также можно проверить в "Отчет о системе", подключеная через рез длл туда не попадает.
 
			
					
				
				Добавлено: 24 авг 2005, 13:10
				 Maverick
				тогда остается одно - вычислить ресурсники, которые цепляются и саппортом и галкой и докомпилять в него.
			 
			
					
				
				Добавлено: 02 сен 2005, 18:12
				 san
				Maverick писал(а):тогда остается одно - вычислить ресурсники, которые цепляются и саппортом и галкой и докомпилять в него.
Тоже не вариант, ф-ции видно только в вип-программах, по ctrl-f4 ее не вычислить. Также можно проверить в "Отчет о системе", подключеная через рез длл туда не попадает.
 
			
					
				
				Добавлено: 22 сен 2005, 17:07
				 Screw
				1. Пишем dll-ку.
2. Пишем файл с прототипами вида:
function XXX(тип, тип,..., var тип,...): тип; external 'имя dll-ки.dll';
procedure YYY(тип, тип,..., var тип,...); external 'имя dll-ки.dll';
Будьте осторожны с передачей параметров по ссылке - они передаются в библиотеку в виде указателей на TField.
3. Компилим этот файл в какой-нибудь ресурс.
4. Пишем код, использующий функции dll-ки.
5. Компилим этот код и подключаем при этом ранее собранный ресурс с прототипами функций.
Dll-ка будет подключаться динамически, в момент, когда будет произведена попытка загрузки интерфейса, использующего экспортируемые библиотекой функции. Написать стороннюю dll-ку так, чтобы она линковалась статически, невозможно по определению.
			 
			
					
				
				Добавлено: 23 сен 2005, 10:52
				 san
				Вот этого и хочется:Написать стороннюю dll-ку так, чтобы она линковалась статически.
			 
			
					
				
				Добавлено: 23 сен 2005, 11:10
				 Maverick
				Screw писал(а):1. Пишем dll-ку.
2. Пишем файл с прототипами вида:
function XXX(тип, тип,..., var тип,...): тип; external 'имя dll-ки.dll';
procedure YYY(тип, тип,..., var тип,...); external 'имя dll-ки.dll';
Будьте осторожны с передачей параметров по ссылке - они передаются в библиотеку в виде указателей на TField.
3. Компилим этот файл в какой-нибудь ресурс.
4. Пишем код, использующий функции dll-ки.
5. Компилим этот код и подключаем при этом ранее собранный ресурс с прототипами функций.
Dll-ка будет подключаться динамически, в момент, когда будет произведена попытка загрузки интерфейса, использующего экспортируемые библиотекой функции. Написать стороннюю dll-ку так, чтобы она линковалась статически, невозможно по определению.
Вау! Нас атакуют галактические монстры!  

 
			
					
				
				Добавлено: 23 сен 2005, 14:11
				 Screw
				2san:
Вот этого и хочется:Написать стороннюю dll-ку так, чтобы она линковалась статически.
Это означает, что обращения к функциям твоей бибилиотеки должны быть встроены в код Галактики. Дальше всё просто: берем сырцы, правим их, компилим и наслаждаемся результатами титанического труда.