本文整理汇总了C#中WindowsAppFriend类的典型用法代码示例。如果您正苦于以下问题:C# WindowsAppFriend类的具体用法?C# WindowsAppFriend怎么用?C# WindowsAppFriend使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。
WindowsAppFriend类属于命名空间,在下文中一共展示了WindowsAppFriend类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: TestInitialize
public void TestInitialize()
{
_app = new WindowsAppFriend(Process.Start(Target.Path));
_main = WindowControl.FromZTop(_app);
_comboBox = new GcComboBoxDriver(_main.Dynamic()._comboBox);
_comboBoxShiftJIS = new GcComboBoxDriver(_main.Dynamic()._comboBox_ShiftJIS);
}
示例2: Initialize
public static AppVar Initialize(WindowsAppFriend app)
{
if (app == null)
{
throw new ArgumentNullException("app");
}
string key = typeof(WindowControl).Module.Name + "[Initialize]";
object ohterSystemAnalyzersObj;
if (!app.TryGetAppControlInfo(key, out ohterSystemAnalyzersObj))
{
//自身のアセンブリをロードさせる。
WindowsAppExpander.LoadAssembly(app, typeof(TargetAppInitializer).Assembly);
//WpfAnalyzerをコンパイルしてインストール
AppVar ohterSystemAnalyzers = null;
try
{
app["System.Windows.Application.Current"]()["Windows"]()["Count"]()["ToString"](); //ここでWPFのライブラリがロードできるかチェックする。
if ((bool)app[typeof(TargetAppInitializer), "InstallWpfInApp"]().Core)
{
AppVar wpfAnalyzer = app.Dim(new NewInfo("Codeer.Friendly.Windows.Wpf.Grasp.WpfAnalyzer"));
ohterSystemAnalyzers = app.Dim(new IOtherSystemWindowAnalyzer[1]);
ohterSystemAnalyzers["[]"](0, wpfAnalyzer);
}
}
catch { }
if (ohterSystemAnalyzers == null)
{
ohterSystemAnalyzers = app.Dim(new IOtherSystemWindowAnalyzer[0]);
}
app.AddAppControlInfo(key, ohterSystemAnalyzers);
ohterSystemAnalyzersObj = ohterSystemAnalyzers;
}
return ohterSystemAnalyzersObj as AppVar;
}
示例3: TestCpuTarget
public void TestCpuTarget()
{
Process process = null;
try
{
if (IntPtr.Size != 4)
{
process = Process.Start(TargetPath.Path32);
}
else
{
process = Process.Start(TargetPath.Path64);
}
WindowsAppFriend appCpuTest = new WindowsAppFriend(process, "2.0");
Assert.IsTrue(false);
}
catch (FriendlyOperationException e)
{
Assert.AreEqual(e.Message, "プラットフォームターゲットがテスト対象とテストプロセスで異なります。合わせてください。");
}
finally
{
process.Kill();
}
}
示例4: TestInitialize
public void TestInitialize()
{
_app = new WindowsAppFriend(Process.Start("Target.exe"));
WindowsAppExpander.LoadAssembly(_app, GetType().Assembly);
dynamic main = _app.Type<Application>().Current.MainWindow;
_ctrl = _app.Type<WPFListViewTest>().Init(main._grid);
}
示例5: WPF
public void WPF()
{
var app = new WindowsAppFriend(Process.Start("Wpf.exe"));
var window = app.Type().System.Windows.Application.Current.MainWindow;
//ガタガタ言わずにx:Name使えばいいじゃん。
var _textBox = new WPFTextBox(window._textBox);
_textBox.EmulateChangeText("x:Name最高!");
//嫌って言う人いるから頑張ったよ。
AppVar windowAppVar = window;
var logicalTree = windowAppVar.LogicalTree();
var textBox = new WPFTextBox(logicalTree.ByBinding("Memo").ByType<System.Windows.Controls.TextBox>().Single());
var textBlock = new WPFTextBlock(logicalTree.ByBinding("Memo").ByType<System.Windows.Controls.TextBlock>().Single());
var buttonModal = new WPFButtonBase(logicalTree.ByBinding("CommandModal").Single());
var buttonModalSequential = new WPFButtonBase(logicalTree.ByBinding("CommandModalSequential").Single());
var buttonModeless = new WPFButtonBase(logicalTree.ByBinding("CommandModeless").Single());
var listBox = new WPFListBox(logicalTree.ByBinding("Persons").Single());
//VisualTreeにしか現れない要素は気を付けて
var item = listBox.GetItem(20);
var itemText = new WPFTextBlock(item.VisualTree().ByBinding("Name").Single());
//これでもダメな場合は工夫してね!
Process.GetProcessById(app.ProcessId).Kill();
}
示例6: Attach
public void Attach()
{
_core.Attach();
_app = new WindowsAppFriend(_core.Process);
MainForm = new MainFormDriver(new WindowControl(_app, _core.Process.MainWindowHandle));
InitApp();
}
示例7: WindowsAppFriend
public void でもさけれるならその方がいいよね()
{
var app = new WindowsAppFriend(Process.Start("WinForms.exe"));
var form = app.Type().System.Windows.Forms.Application.OpenForms[0];
form.CountA(@"c:\TestData\data.txt");
Process.GetProcessById(app.ProcessId).Kill();
}
示例8: TestInitialize
public void TestInitialize()
{
app = new WindowsAppFriend(Process.Start("Target.exe"));
WindowsAppExpander.LoadAssembly(app, GetType().Assembly);
dynamic main = app.Type<Application>().Current.MainWindow;
dataGrid = new WPFDataGrid(app.Type<WPFDataGridTest>().InitDataGrid(main._grid));
}
示例9: TestErrorCLR
public void TestErrorCLR()
{
Process process = null;
try
{
if (IntPtr.Size == 4)
{
process = Process.Start(TargetPath.Path32);
}
else
{
process = Process.Start(TargetPath.Path64);
}
WindowsAppFriend appCpuTest = new WindowsAppFriend(process, "3.5");
Assert.IsTrue(false);
}
catch (FriendlyOperationException e)
{
Assert.AreEqual(e.Message, "対象プロセスの操作に失敗しました。" + Environment.NewLine +
"以下の可能性が考えられます。" + Environment.NewLine +
"・CLRのバージョン指定が間違っている。" + Environment.NewLine +
"・対象プロセスを操作する権限が足りていない。" + Environment.NewLine +
"・接続中に対象プロセスが終了した。" + Environment.NewLine +
"・指定のウィンドウハンドルのウィンドウが破棄された。" + Environment.NewLine +
"スプラッシュウィンドウを表示するアプリケーションの場合は、起動直後にメインウィンドウがスプラッシュウィンドウになっている場合があります。" + Environment.NewLine +
"明示的に期待のウィンドウのハンドルを指定してください。");
}
finally
{
process.Kill();
}
}
示例10: WinForms
public void WinForms()
{
var app = new WindowsAppFriend(Process.Start("WinForms.exe"));
var mainForm = app.Type().System.Windows.Forms.Application.OpenForms[0];
//WinFormsの場合は変数名で取りましょう。
var _buttonX = new FormsButton(mainForm._buttonX);
_buttonX.EmulateClick();
//ポップアップメニューも変数からとる
var _toolStripMenuItemA = new FormsToolStripItem(mainForm._toolStripMenuItemA);
_toolStripMenuItemA.EmulateClick();
//とは言え、取れないときも
//そんなときは工夫する
WindowsAppExpander.LoadAssembly(app, GetType().Assembly);
var button名無し = new FormsButton(app.Type().Tips.ChildControl.Get名無し(mainForm));
button名無し.EmulateClick();
//メニューアイテムも上位ライブラリ使えばインデックスとかテキストから取れたり
var menu = new FormsToolStrip(mainForm._contextMenuStrip);
var b = menu.FindItem("B");
b.EmulateClick();
Process.GetProcessById(app.ProcessId).Kill();
}
示例11: TestInitialize
public void TestInitialize()
{
app = new WindowsAppFriend(Process.Start("Target.exe"));
dynamic win = app.Type<Application>().Current.MainWindow;
dynamic grid = win._grid;
target = app.Type<ListBox>()();
grid.Children.Add(target);
}
示例12: TestInitialize
public void TestInitialize()
{
_app = new WindowsAppFriend( Process.Start( Target.Path ) );
var main = _app.Type<Application>().OpenForms[ 0 ];
new FormsButton( main._buttonNormal ).EmulateClick( new Async() );
var dlg = new WindowControl( main ).WaitForNextModal();
_grid = new GcMultiRowDriver( dlg.Dynamic()._grid );
}
示例13: TestInitialize
public void TestInitialize()
{
_app = new WindowsAppFriend(Process.Start(Target.Path));
_main = WindowControl.FromZTop(_app);
_textBox = new GcTextBoxDriver(_main.Dynamic()._textBox);
_textBoxShiftJIS = new GcTextBoxDriver(_main.Dynamic()._textBoxShiftJIS);
_multiLineText = new GcTextBoxDriver(_main.Dynamic()._multiLineText);
}
示例14: TestInitialize
public void TestInitialize() {
app = new WindowsAppFriend(Process.Start("Target.exe"));
WindowsAppExpander.LoadAssembly(app, GetType().Assembly);
win = app.Type(typeof(Application)).Current.MainWindow;
dynamic grid = win._grid;
control = app.Type<WPFContextMenuTestControl>()();
grid.Children.Add(control);
}
示例15: ResetConnection
void ResetConnection()
{
int id = _app.ProcessId;
_app.Dispose();
_app = new WindowsAppFriend(Process.GetProcessById(id));
dynamic main = _app.Type<Application>().Current.MainWindow;
_ctrl = _app.Type<WPFListViewTest>().Init(main._grid);
}