Управление программой написанной на C# другим приложением(ями)
Формулировка задачи:
Прошу предоставить примеры кода или ссылки на литературу по управлению программой написанной на C# другими приложениями.
Что собственно нужно:
1) Открыть приложение
2) Уменьшить/увеличить размер окна приложения, передвинуть окно.
3) Нажатие клавиш в приложении
4) Анализ происходящего в приложении.
Решение задачи: «Управление программой написанной на C# другим приложением(ями)»
textual
Листинг программы
using System;
using System.Diagnostics;
using System.Threading;
using System.Windows.Forms;
namespace WindowsFormsApplication5
{
public partial class Form1 : Form
{
bool doWork;
bool paused;
ManualResetEvent mrEvent;
public Form1 ( )
{
InitializeComponent();
mrEvent = new ManualResetEvent( true );
}
void button1_Click ( object sender, EventArgs e )
{
if ( doWork )
{
if ( paused )
mrEvent.Set();
else
mrEvent.Reset();
paused = !paused;
return;
}
// Запуск потока
doWork = true;
paused = false;
new Thread( DoSmth ).Start();
}
void button2_Click ( object sender, EventArgs e )
{
doWork = false;
if ( paused )
{
mrEvent.Set();
paused = false;
}
}
void DoSmth ( )
{
while ( true )
{
mrEvent.WaitOne();
if ( !doWork )
break;
Debug.WriteLine( "CALL" );
SendKeys.SendWait( "2" );
System.Threading.Thread.Sleep( 1100 );
SendKeys.SendWait( "3" );
System.Threading.Thread.Sleep( 1100 );
SendKeys.SendWait( "4" );
System.Threading.Thread.Sleep( 1820 );
}
}
}
}