2014-01-24 3 views
1

Я хочу сделать некоторую автоматизацию с помощью студии управления SQL Server и вам нужно будет отслеживать, какие сообщения Windows были отправлены на нее, когда я нажимаю кнопку «Выполнить». В основном то, что я хочу сделать, это:Если я нажал кнопку в SSMS, как отслеживать, какие сообщения Windows были отправлены на нее?

  1. Когда пользователь нажимает на кнопку «Выполнить» или нажать клавишу F5 , перехватить его.
  2. Проверьте текст в редакторе, это первая строка --sqlcmd, затем измените режим запроса на «режим SQLCMD». В противном случае убедитесь, что режим запроса не является «режимом SQLCMD».
  3. Выполнение как обычно.

Я хочу использовать AutoHotKey's PostMessage функцию для этого. Однако я не знаю, как отслеживать, какие сообщения отправлять. Кто-нибудь может дать некоторые предложения?

look at this

+0

Использование Spy ++ и он может работать. Но VS2010 Shell построена на WPF в большинстве мест и не использует сообщения Windows, кроме необходимости. –

+1

Я думаю, что отправка сообщений в SSMS на уровне окон будет намного сложнее, чем автоматизировать процесс с помощью powershell/SQL api. –

ответ

0

Я предлагаю вам создать собственные надстройки. У вас больше контроля, когда вы работаете из «внутри». Есть некоторые образцы и проекты доступны, вот один, который я создал:

http://www.ssmsboost.com/create-own-ssms-2012-add-in-sample-code-with-download

+0

Согласовано. Я работал над проектом в Red Gate, чтобы открыть свой код расширения SSMS. Здесь есть руководство для разработчиков: http://www.red-gate.com/ssmsecosystem/developerresources –