MOPO3
							
								Ай да дэдушка! Вах... 
								Команда клуба
								
								 
								  Offline
								Пол:   
								Холадна аднака!
								
								
								
								
								
								  
							 
						 | 
						
							
								  | 
								
									
									 «  : 04-10-2004 06:29 »   | 
								
								 | 
							  
							 
							Попросили тут одну вещь сделать, только я не совсем понял что надо.
  Есть какой-то OCX (полностью написаный на MFC) , просят написать на ATL класс wrapper для этого OCX, который экспоузит все эвенты этого OCX.
  Куда копать то ? 
						 | 
					 
					
						
							
								| 
								 | 
							 
								| 
								 | 
								
									 
									Записан
								 | 
							  
							 
							MCP, MCAD, MCTS:Win, MCTS:Web 
						 | 
					 
				 
			 |  
		 
	 | 
	
		
		
			
				
					
						
							Pu
							
								Большой босс 
								
								 
								  Offline
								
								78
								
								
								
								
								
							  
						 | 
						
							
								  | 
								
									
									 « Ответ #1 : 04-10-2004 09:47 »   | 
								
								 | 
							  
							 
							MOPO3,   OCX - это компонент ActiveX, тот жа dll , только расширение .ocx. разница только в названии и не более. Вот и получается - копать надо в сторону  ActiveX компонентов. 
						 | 
					 
					
						
							
								| 
								 | 
							 
								| 
								 | 
								
									 
									Записан
								 | 
							  
							 
							Насколько я опытен? Достаточно, чтобы понимать, что дураков нельзя заставить думать по–другому, но недостаточно, чтобы отказаться от попыток это сделать. (с) Артур Джонс 
						 | 
					 
				 
			 |  
		 
	 | 
	
		
		
			
				
					
						
							MOPO3
							
								Ай да дэдушка! Вах... 
								Команда клуба
								
								 
								  Offline
								Пол:   
								Холадна аднака!
								
								
								
								
								
								  
							 
						 | 
						
							
								  | 
								
									
									 « Ответ #2 : 04-10-2004 10:59 »   | 
								
								 | 
							  
							 
							Pu, а по конкретней ? Поближе к теме чтобы. т.е. каким образом можно поиметь эти самые эвенты како го то ОЦИКСа ? 
						 | 
					 
					
						
							
								| 
								 | 
							 
								| 
								 | 
								
									 
									Записан
								 | 
							  
							 
							MCP, MCAD, MCTS:Win, MCTS:Web 
						 | 
					 
				 
			 |  
		 
	 | 
	
		
		
			
				
					
						| 
							Serega
							 
								Гость 
							 
						 | 
						
							
								  | 
								
									
									 « Ответ #3 : 04-10-2004 11:59 »   | 
								
								 | 
							  
							 
							ActiveX поддерживает модель событий COM, тебе надо преобразовать её (тоесть написать враппер) в твою модель событий Может лучше определиться сначала что ты хочешь получить, а потом уже подумать как этого добиться от COM ? 
						 | 
					 
					
						
							
								| 
								 | 
							 
								| 
								 | 
								
									 
									Записан
								 | 
							  
						 | 
					 
				 
			 |  
		 
	 | 
	
		
		
			
				
					
						| 
							Serega
							 
								Гость 
							 
						 | 
						
							
								  | 
								
									
									 « Ответ #4 : 04-10-2004 12:01 »   | 
								
								 | 
							  
							 
							Тоесть тебе надо написать клиента который делегирует события этого контрола ? 
						 | 
					 
					
						
							
								| 
								 | 
							 
								| 
								 | 
								
									 
									Записан
								 | 
							  
						 | 
					 
				 
			 |  
		 
	 | 
	
		
		
			
				
					
						
							MOPO3
							
								Ай да дэдушка! Вах... 
								Команда клуба
								
								 
								  Offline
								Пол:   
								Холадна аднака!
								
								
								
								
								
								  
							 
						 | 
						
							
								  | 
								
									
									 « Ответ #5 : 04-10-2004 12:24 »   | 
								
								 | 
							  
							 
							Serega, именно так! 
						 | 
					 
					
						
							
								| 
								 | 
							 
								| 
								 | 
								
									 
									Записан
								 | 
							  
							 
							MCP, MCAD, MCTS:Win, MCTS:Web 
						 | 
					 
				 
			 |  
		 
	 | 
	
		
		
			
				
					
						| 
							Serega
							 
								Гость 
							 
						 | 
						
							
								  | 
								
									
									 « Ответ #6 : 04-10-2004 13:04 »   | 
								
								 | 
							  
							 
							Так ты напиши какую модель событий ты используешь и тогда можно будет думать как к ней преобразовать модель событий COM Если совсем плохо с ATL почитай хоть  книжку от MS 
						 | 
					 
					
						
							
								| 
								 | 
							 
								| 
								 | 
								
									 
									Записан
								 | 
							  
						 | 
					 
				 
			 |  
		 
	 | 
	
		
		
			
				
					
						
							MOPO3
							
								Ай да дэдушка! Вах... 
								Команда клуба
								
								 
								  Offline
								Пол:   
								Холадна аднака!
								
								
								
								
								
								  
							 
						 | 
						
							
								  | 
								
									
									 « Ответ #7 : 04-10-2004 13:25 »   | 
								
								 | 
							  
							 
							Serega, с АТЛ никогда не имел дела. Какая модель событий я не знаю    Мне просто дали файл с расширением OCX и сказали написать    Вот сижу и не знаю с какого конца за это взяться  :new_shot: ЗЫ. правда вот сюда сказали сходить  http://support.microsoft.com/default.aspx?scid=kb;en-us;200839 , только я всё равно не въехал с чего и как начинать надо  
						 | 
					 
					
						
							
								| 
								 | 
							 
								| 
								 | 
								
									 
									Записан
								 | 
							  
							 
							MCP, MCAD, MCTS:Win, MCTS:Web 
						 | 
					 
				 
			 |  
		 
	 | 
	
		
		
			
				
					
						
							Pu
							
								Большой босс 
								
								 
								  Offline
								
								78
								
								
								
								
								
							  
						 | 
						
							
								  | 
								
									
									 « Ответ #8 : 04-10-2004 13:33 »   | 
								
								 | 
							  
							 
							MOPO3, завтра покумекаем седня просто совсем ну ни минуты не было    
						 | 
					 
					
						
							
								| 
								 | 
							 
								| 
								 | 
								
									 
									Записан
								 | 
							  
							 
							Насколько я опытен? Достаточно, чтобы понимать, что дураков нельзя заставить думать по–другому, но недостаточно, чтобы отказаться от попыток это сделать. (с) Артур Джонс 
						 | 
					 
				 
			 |  
		 
	 | 
	
		
		
			
				
					
						
							MOPO3
							
								Ай да дэдушка! Вах... 
								Команда клуба
								
								 
								  Offline
								Пол:   
								Холадна аднака!
								
								
								
								
								
								  
							 
						 | 
						
							
								  | 
								
									
									 « Ответ #9 : 04-10-2004 13:35 »   | 
								
								 | 
							  
							 
							Pu, ОК, не вопрос. Сегодня и я уже этим не буду заниматься. Завтра и покумекаем. А я пока дома поищу книжек по АТЛу.  По цпп у меня их много, может где и будет инфа по АТЛ . 
						 | 
					 
					
						
							
								| 
								 | 
							 
								| 
								 | 
								
									 
									Записан
								 | 
							  
							 
							MCP, MCAD, MCTS:Win, MCTS:Web 
						 | 
					 
				 
			 |  
		 
	 | 
	
		
		
			
				
					
						
							Pu
							
								Большой босс 
								
								 
								  Offline
								
								78
								
								
								
								
								
							  
						 | 
						
							
								  | 
								
									
									 « Ответ #10 : 05-10-2004 05:33 »   | 
								
								 | 
							  
							 
							MOPO3, по поводу книжек, я АТL осваивал по Трельсену "Модель СОМ и применение АТЛ 3.0", в электронном виде у меня нет , повторюсь что здесь в библтотеке есть COM inside. Тож неплохая книга. 
						 | 
					 
					
						
							
								| 
								 | 
							 
								| 
								 | 
								
									 
									Записан
								 | 
							  
							 
							Насколько я опытен? Достаточно, чтобы понимать, что дураков нельзя заставить думать по–другому, но недостаточно, чтобы отказаться от попыток это сделать. (с) Артур Джонс 
						 | 
					 
				 
			 |  
		 
	 | 
	
		
		
			
				
					
						
							MOPO3
							
								Ай да дэдушка! Вах... 
								Команда клуба
								
								 
								  Offline
								Пол:   
								Холадна аднака!
								
								
								
								
								
								  
							 
						 | 
						
							
								  | 
								
									
									 « Ответ #11 : 05-10-2004 05:41 »   | 
								
								 | 
							  
							 
							Pu, ок, почитаю как время будет. А пока попробую из мсдна вырулить что нить стоящее 
						 | 
					 
					
						
							
								| 
								 | 
							 
								| 
								 | 
								
									 
									Записан
								 | 
							  
							 
							MCP, MCAD, MCTS:Win, MCTS:Web 
						 | 
					 
				 
			 |  
		 
	 | 
	
		
		
			
				
					
						
							MOPO3
							
								Ай да дэдушка! Вах... 
								Команда клуба
								
								 
								  Offline
								Пол:   
								Холадна аднака!
								
								
								
								
								
								  
							 
						 | 
						
							
								  | 
								
									
									 « Ответ #12 : 05-10-2004 07:06 »   | 
								
								 | 
							  
							 
							Эх, что то я всё равно не втыкаю    Смотрю эту книгу и мсдн и всё равно не догоняю куда и как мне впихивать этот ocx  :new_twist:  
						 | 
					 
					
						
							
								| 
								 | 
							 
								| 
								 | 
								
									 
									Записан
								 | 
							  
							 
							MCP, MCAD, MCTS:Win, MCTS:Web 
						 | 
					 
				 
			 |  
		 
	 | 
	
		
		
			
				
					
						
							MOPO3
							
								Ай да дэдушка! Вах... 
								Команда клуба
								
								 
								  Offline
								Пол:   
								Холадна аднака!
								
								
								
								
								
								  
							 
						 | 
						
							
								  | 
								
									
									 « Ответ #13 : 05-10-2004 11:42 »   | 
								
								 | 
							  
							 
							Вопрос по : IProvideClassInfo2Impl  /* MSDN */ template <    const CLSID* pcoclsid,    const IID* psrcid,    const GUID* plibid = &CAtlModule{{m_libid,    WORD wMajor = 1,    WORD wMinor = 0,    class tihclass = CComTypeInfoHolder  > class ATL_NO_VTABLE IProvideClassInfo2Impl {    public IProvideClassInfo2
  //параметр pcoclsid     A pointer to the coclass' identifier.
 
 Подскажите как получить указатель pcoclsid     
						 | 
					 
					
						
							
								| 
								 | 
							 
								| 
								 | 
								
									 
									Записан
								 | 
							  
							 
							MCP, MCAD, MCTS:Win, MCTS:Web 
						 | 
					 
				 
			 |  
		 
	 | 
	
		
		
			
				
					
						
							Pu
							
								Большой босс 
								
								 
								  Offline
								
								78
								
								
								
								
								
							  
						 | 
						
							
								  | 
								
									
									 « Ответ #14 : 05-10-2004 13:05 »   | 
								
								 | 
							  
							 
							MOPO3, копай в сторону QueryInterface 
						 | 
					 
					
						
							
								| 
								 | 
							 
								| 
								 | 
								
									 
									Записан
								 | 
							  
							 
							Насколько я опытен? Достаточно, чтобы понимать, что дураков нельзя заставить думать по–другому, но недостаточно, чтобы отказаться от попыток это сделать. (с) Артур Джонс 
						 | 
					 
				 
			 |  
		 
	 | 
	
		
		
			
				
					
						| 
							Serega
							 
								Гость 
							 
						 | 
						
							
								  | 
								
									
									«  Ответ #15 : 05-10-2004 15:25 »    | 
								
								 | 
							  
							 
							MOPO3, CLSID это GUID класса(обьекта), для которого ты хочешь получить ClassInfo 
						 | 
					 
					
						
							
								| 
								 | 
							 
								| 
								 | 
								
									 
									Записан
								 | 
							  
						 | 
					 
				 
			 |  
		 
	 | 
	 |