| Alex Lable 
 
   
 
						
						
					 | Дата: 02.02.2010 
 
 
	
			Да нет, все хватает, все отлично...Это так сказать для собственногоразвития, интересно, как это реализовано...или если есть возможно, то
 пожалуйста поделитесь ссылкой, где об этом можно почитать.
 
 | 
			
				| Alex Lable 
 
   
 
						
						
					 | Дата: 05.02.2010 
 
 
	
			Еще раз здравствуйте!Я тут написал утилиту на QPILE по обработке текущих данных, которые
 уже представлены мне в нужном виде, получилось что-то похожее на
 таблицу текущих параметров, но видоизмененная...Теперь, при запуске
 робота нужно данные выводить в DDE, пытаюсь смоделировать сочетание
 клавиш ctrl+L. Получаю дескриптор окна утилиты, перевожу фокус на
 него, потом получаю  дескриптор таблицы,, нажимаю программно сочетание
 клавиш, но все равно не работает:
 
 IntPtr  lK = (IntPtr)17;  //код CTRL
 IntPtr rK = (IntPtr)65;   //код L
 
 retValue = SendMessage(hWnd, WM_KEYDOWN, IntPtr.Zero, IntPtr.Zero);
 retValue = SendMessage(hWnd, WM_CHAR, lK, IntPtr.Zero);
 retValue = SendMessage(hWnd, WM_KEYDOWN, IntPtr.Zero, IntPtr.Zero);
 retValue = SendMessage(hWnd, WM_CHAR, rK, IntPtr.Zero);
 retValue = SendMessage(hWnd, WM_KEYUP, lK, IntPtr.Zero);
 retValue = SendMessage(hWnd, WM_KEYUP, lK, IntPtr.Zero);
 
 Просьба помочь, а то уже третий день с этими кнопками маюсь...
 
 
 | 
			
				| Mikhail Sukhov 
 
   
 
						
						
					 | Дата: 06.02.2010 
 
 
	
			QuikTrader.StardDde =)
 А если без шуток, то опять же, нужно влазить в код, открывать
 исходник, смотреть, где оно там. Это время, которое я берегу для новой
 версии. Тут не все так просто. Это в Вашем примере все строчки идут
 друг за другом. А в чуть сложных программах появляется инкапсуляция,
 абстракция, и все может быть размыто на несколько сотен строк. Весь
 код отдавать по этическим соображениям не могу - на S# построены
 другие проекты, где я не единственный автор. Библиотека такая, какая
 она есть сейчас (и такая останется). Бесплатная, без ограничений в
 использовании, но с закрытым кодом.
 
 
 | 
			
				| Alex Lable 
 
   
 
						
						
					 | Дата: 09.02.2010 
 
 
	
			Вот реализация, но почему то она тоже не работает, хотя фокус натаблице.
 
 keybd_event(VK_CONTROL, 0, 0, 0);
 keybd_event((byte)'L', 0, 0, 0);
 keybd_event((byte)'L', 0, WM_KEYUP, 0);
 keybd_event(VK_CONTROL, 0, WM_KEYUP, 0);
 
 Попробовал также чере SendKeys.Send(), для таблицы текущих параметров
 работает только SendKeys.Send("{F2}") - выставление новой заявки, а
 вот сочетание Ctrl+L  SendKeys.Send("^L") не хочет(((
 
 
 |