Silverlight 4 - 将文本发送到记事本

时间:2011-02-13 16:58:16

标签: silverlight shell notepad

我尝试本教程

http://elegantcode.com/2010/02/20/silverlight-4-com-interop-and-the-cool-stuff-you-can-do-with-it/

我需要打开记事本并将文本发送到。我使用这段代码:

using (dynamic shell = AutomationFactory.CreateObject("WScript.Shell"))
    {
        shell.Run(@"C:\windows\notepad.exe"); //you can open anything

        shell.SendKeys(txtTextToSend.Text);
    }

当我开始使用时,记事本已经出现,但其中没有文字。

我错了什么。我的系统是W7 64bit。 感谢

1 个答案:

答案 0 :(得分:2)

问题是Run是一个非阻塞操作,一旦它启动进程就会返回。记事本的UI可能没有出现,并且在您的代码调用SendKeys时将焦点放入其输入区域。

尝试引入Thread.Sleep几秒钟来证明这是否属实。