| 
			
			 | 
		#1 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
			
			
			Что такое класс в понятиях WinApi?
			 
			
			Тут прочитал книгу по WinApi, но так и ненашёл для себя ответ на этот вопрос. 
		
		
		
		
		
		
		
	Ну не слова что есть такое понятие WinApi как "класс". Есть процессы, потоки. И вот возник ещё такой вопрос все классы в Axapt-е наследуются от Object. Так почему тогда handle есть у Object-а, но нет у класса?  | 
| 
	
 | 
| 
			
			 | 
		#2 | 
| 
			
			 Сенбернар 
		
			
	 | 
	
	
	
		
		
		
		 
			
			Ужос НАХ (Navision AXapta...)
		 
		
		
		
		
		
		
		
	 | 
| 
	
 | 
| 
			
			 | 
		#3 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
		
		 
			
			Обоснуй.
		 
		
		
		
		
		
		
		
	 | 
| 
	
 | 
| 
			
			 | 
		#4 | 
| 
			
			 Сенбернар 
		
			
	 | 
	
	
	
		
		
			
			
			Обоснование
			 Цитата: 
	
Цитата: 
	
Рекомендую обратить внимание на словосочетание "экземпляр (суть объект) класса"... Последний раз редактировалось RVS; 02.06.2008 в 10:30.  | 
| 
	
 | 
| 
			
			 | 
		#5 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
		
		 
			
			Рекомендую http://www.rusforus.ru/ зря вы тут с нами с неучами. 
		
		
		
		
		
		
		
	 
		 | 
| 
	
 | 
| 
			
			 | 
		#6 | 
| 
			
			 Сенбернар 
		
			
	 | 
	
	|
| 
	
 | 
| 
			
			 | 
		#7 | 
| 
			
			 Участник 
		
			
	 | 
	
	|
| 
	
 | 
| 
			
			 | 
		#8 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
		
		 
			
			WinAPI - в общем не объектная библиотека и оперирует понятиями из структурного программирования. 
		
		
		
		
		
		
		
	По второму вопросу - прочитай в любом учебнике who is класс и объект - сразу все понятно станет.  | 
| 
	
 | 
| 
			
			 | 
		#9 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
		
		 Цитата: 
	
Ну может это не kernel32.dll (сначало думал в ней найти то что нужно, не нашёл пока) , но какая то библиотека должна быть для этих целей.  | 
| 
	
 | 
| 
			
			 | 
		#10 | 
| 
			
			 Сенбернар 
		
			
	 | 
	
	
	
		
		
		
		 
			
			К теме - легко. 
		
		
		
		
		
		
		
		
			Задайте точнее вопрос - полУчите (с большой вероятностью) правильный ответ. Или, может, поделитесь - что за задача у Вас? PS: Про handle, которого "нет у класса", я вам, кстати, маякнул. Последний раз редактировалось RVS; 02.06.2008 в 10:59.  | 
| 
	
 | 
| 
			
			 | 
		#11 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
		
		 Цитата: 
	
Поэтому начал с терминалогии. Так легче понять где копать. Вопросов много. Один из вопросов. Как зная handle класса получить объект класса?  | 
| 
	
 | 
| 
			
			 | 
		#12 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
		
		 
			
			С точки зрения WinAPI - это запись во внутренней структуре - со своим номером (handle), это уже в прикладной проге как-то преобразуется в объект. 
		
		
		
		
		
		
		
	Для каких целей ?  | 
| 
	
 | 
| 
			
			 | 
		#13 | 
| 
			
			 Сенбернар 
		
			
	 | 
	
	
	
		
		
		
		 
			
			 Это вряд ли. 
		
		
		
		
		
		
		
	Так. У класса не бывает handle. Handle есть у экземпляра класса. Далее. Предположим, у вас есть handle объекта какого-то непонятного класса, структура которого (свойства, методы...) вам неизвестна. Вопрос: что вы с ним делать-то собираетесь? Задачу уточните, плиз...  | 
| 
	
 | 
| 
			
			 | 
		#14 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
		
		 Цитата: 
	
Не удобно пользоваться скриптами, которые в EditorsScripts. Сначало убрал все ненужные мне скрипты оставил пять. (Просто из заголовка метода убрал Editor e внуторь метода и в списке метод исчезает). Всё равно как то не комфортно, класно бы было в Tabax добавить на кнопки. Класс Editor имеет один и тот же handle(65299 похоже зарезервированный). Когда мы закрываем редактор кода и открываем новый, класс Editor перезагружается, handle остаётся тем же.  | 
| 
	
 | 
| 
			
			 | 
		#15 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
		
		 
			
			В понятиях WinApi...там нет ничего о том, что такое класс. WinAPI это просто набор функций по работе с виндовсом и больше ничего. 
		
		
		
		
		
		
			С помошью WinAPI можно создать любое приложение под виндовс на любом языке программирования (ну или почти любом). Например на ассемблере - там классами никак не пахнет. 
				__________________ 
		
		
		
		
	AxAssist 2012 - Productivity Tool for Dynamics AX 2012/2009/4.0/3.0  | 
| 
	
 | 
| 
			
			 | 
		#16 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
		
		 
			
			Это наверное id класса и все. Проверьте. Ничего путного из этой цифры с точки зрения винапи вы не получите.
		 
		
		
		
		
		
		
			
				__________________ 
		
		
		
		
	AxAssist 2012 - Productivity Tool for Dynamics AX 2012/2009/4.0/3.0  | 
| 
	
 | 
| 
			
			 | 
		#17 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
		
		 
			
			Пробовал такой вариант сделать метод setEditor() в EditorScripts и сохранял Editor в классе Info (переменную добавил Editor curEditor). 
		
		
		
		
		
		
		
	И всё работает даёт правильные значения местонахождения курсора. Но до тех пор пока я не закрую текущий редактор кода и не открою новый. Editor исчезает.  | 
| 
	
 | 
| 
			
			 | 
		#18 | 
| 
			
			 Сенбернар 
		
			
	 | 
	
	
	
		
		
		
		 
			
			Ох... 
		
		
		
		
		
		
		
	Я правильно понимаю, что: - вы работаете в Axapta - вы открываете редактор кода (в Axapta) - вам не нравится, что надо давить на правую кнопку мыша, потом ползать по менюшке, чтобы выполнить скрипт - вы хотите вынести вызов нужных вам скриптов на отдельно стоящие кнопки (то есть, отдельные от Аксаптиного Редактора кода) - вы хотите, чтобы вызванный с кнопки скрипт выполнялся в том редакторе, который сейчас активен (это если открыто несколько Редакторов кода) Это так?  | 
| 
	
 | 
| 
			
			 | 
		#19 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
		
		 Цитата: 
	
		
			Сообщение от RVS
			 
 
			Я правильно понимаю, что: 
		
	- вы работаете в Axapta - вы открываете редактор кода (в Axapta) - вам не нравится, что надо давить на правую кнопку мыша, потом ползать по менюшке, чтобы выполнить скрипт - вы хотите вынести вызов нужных вам скриптов на отдельно стоящие кнопки (то есть, отдельные от Аксаптиного Редактора кода) - вы хотите, чтобы вызванный с кнопки скрипт выполнялся в том редакторе, который сейчас активен (это если открыто несколько Редакторов кода) Это так?  | 
| 
	
 | 
| 
			
			 | 
		#20 | 
| 
			
			 Administrator 
		
			
	 | 
	
	
	
		
		
		
		 
			
			Че-то читаю и не втыкаю. Есть параллельная тема Получение экземпляра текущего Editor в которой собсно все обсуждается. 
		
		
		
		
		
		
			Если у Вас не получается получить экземпляр Editor e - то сделайте просто: удалите весь EditorScripts до dis-слоя, поставьте бряку в методе showScripts (актуально только если у Вас 3-шка - в 4-ке - это другой метод) и попробуйте вызвать какой-либо скрипт как обычно - либо по Alt-M, либо по нажатию кнопки на тулбаре (только не через правую кнопку мыши!). Увидите - что Вы провалитесь в отладчик. Далее - дело техники - ведь уже экземпляр класса Editor у Вас уже есть 
				__________________ 
		
		
		
		
	Возможно сделать все. Вопрос времени  | 
| 
	
 |