| 
			
			 | 
		#1 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
			
			 
			
			Привет всем! 
		
		
		
		
		
		
		
	Хотел спросить такой практицеский вопрос. Куда лучше класть dll фаилы, на клиенте или на сервере? Например если один dll отвечает за обращение к серверному ресурсу а другой за отображение GUI. Как мне кажется один должен лежать на клиенте (GUI), а другой на сервере. Что касается доступа к dll фаилу то можно же положить его на сервер АОS и сколько бы не было клиентов все смогут его использовать, или виполнять код на сервере используя етот dll. Есть какая-то разница или правила Best Practice? С уважением, Анатолий.  | 
| 
	
 | 
| 
			
			 | 
		#2 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
		
		 
			
			О каких DLL идёт речь?
		 
		
		
		
		
		
		
		
	 | 
| 
	
 | 
| 
			
			 | 
		#3 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
		
		 
			
			Сложно сказать. Ето был вопрос из екзамена на сертификацию и меня ето очень заинтересовало на будующее. Ну я думау что реч там щла о dll написанних разработчиком. Тоесть хотелось бы узнать впринципи как поступить в такой цитуацыи и есть ли какие-то ограничения. К примеру одна длл имеет больще отношение к серверу тоесть работает с каким-то ресурсом (принтер, сканнер и так даллее) расположенном на сервере. А другая длл делает что-то с GUI и впринципи могла би и на клиенте лежать чтоб не использовать скорость сети, но в тоже время все пользователи ею пользуутся и в етом плане было бы болле целисообразним хранить ее в одном месте а не на каждом клиенте. Вот и вопрос как в такой ситации поступить?
		 
		
		
		
		
		
		
		
	 | 
| 
	
 | 
| 
			
			 | 
		#4 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
		
		 
			
			«C:\Program Files\Navision\Client\Bin» 
		
		
		
		
		
		
		
	можно даже заставить аксапту устанавливать DLL если их нет: http://erpkb.com/Axapta/AvtoregistracijaActiveX  | 
| 
	
 | 
| 
			
			 | 
		#5 | 
| 
			
			 Administrator 
		
			
	 | 
	
	
	
		
		
		
		 
			
			Вообще-то DLL-ки надо класть в приложение, в подпапку Include, затем сию DLL-ку грамотно прописывать в классах SysFileDeployment* (где кстати можно прописывать все пути, отличные от настроек по умолчанию). 
		
		
		
		
		
		
		
	Axapta сама при запуске копирует все прописанные в этих классах DLL-ки на клиента (точнее в Bin каталог, прописанный в конфиг утилите). Точнее - она спрашивает конечно - юзер должен ответить ОК и DLL-ка будет скопирована. Регистрация осуществляется к DLL-ке, лежащей в Bin-каталоге (опять-таки - все можно задать и самим). В 3-шке, с АОСом - у него также имеется Bin-каталог - куда также копируются dll-ки Опять-таки - вопрос прописывания в вышеуказанных классах  | 
| 
	
 | 
| 
			
			 | 
		#6 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
		
		 
			
			Я не знаю "правильного" ответа на этот странный сертификационный вопрос, но imho не стоит разделять DLL-ы по принципу, для рисования интерфейса он нужен или для общения с переферией. Если все они используются одним приложением, то и должны лежать они в одном месте, а уж на сервере или на клиенте - зависит от ситуации. Если на клиентах - проблемы с администрированием и обновлениями, если на файловом сервере (не обязательно на AOS) - то сетевой трафик и нагрузка на сервер
		 
		
		
		
		
		
		
		
	 | 
| 
	
 | 
| 
			
			 | 
		#7 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
			
			
			 braathe
			 
			
			ЕПРСТ... ФХЦЧШЩ... 
		
		
		
		
		
		
		
	Читать встроенное в Аксапта руководство разработчика пробовали? Поиск на 3 закладке по dll registration выдает единственную запись, дословное содержимое которой следующее: Take Care using DLL on the Server Using DLLs on the Server could cause problems with registration and security, so: DLLs should be Client based DLLs with GUI interaction must always be Client based. Если по русски, то можете и на сервере, но на свой страх и риск  | 
| 
	
 |