我开发一个C/S程序,点击一个按钮我希望它做一些这样的事。
打开一个指定的文件,进去以后我们一边都可以选择另存为之类的选项。
不用人工操作。我只要在这个按钮的代码里面写好。
请问这个怎么实现?

解决方案 »

  1.   

    我希望能在代码里面实现Ctrl+S的永能。也就是他能代替我直接去控制键盘。
      

  2.   

    你说快捷键?   MenuTrip的属性里面就能设置啊
      

  3.   

    谢谢你。
        我把问题再描述一次。
    列如有一个doc文档。我双击打开。让后按Alt+F,再按A,再看回车建。就可以对doc文档做另存为的操作。   现在我要写一个程序,当点击程序上面的一个按钮时。执行上面所说的操作。
      

  4.   

    用windows消息处理这一系列操作,用spy++来看看如何找一些按钮的句柄吧
      

  5.   


    1。打开就用Process.start吧
    2。ALT+F 
         用windows api里的IntPtr handle= FindWindow()(这个方法的参数自己看吧)
         找到这个DOC句柄后,将这个DOC的窗口激活  有个windows api   SetForegroundWindow(handle)
         然后SendKeys.SendWait(),注意要用wait,等待操作完成再进行后面操作,至于ALT+F怎么发,你去百度,ALT好像是用"+"表示,记不清了
    3。后面的操作同2
      

  6.   

    你说的这个有点类似于自动化测试..如果被测程序是.NET做的,可以用反射完成。如果被测程序非.NET程序,需要调用windows api函数
      

  7.   


    DOC句柄是什么?   还是就是打开Word是一个,如果是打开别的软件,也要做Ctrl+F的操作呢?
      

  8.   

    findwindow查找句柄
    sendmessage操作
    http://topic.csdn.net/u/20100703/11/9c545b91-0fc5-452b-bde6-a446d78e27a1.html
      

  9.   

    我是想说那个WORD的窗口句柄,CTRL+F我记不清了,好像是 ^F,Ctrl Alt Shift这几个键怎么表示,如何发组合键这里有讲解,自己看。FindWindow方法有两个参数 第一个是“类型”,第二个是“窗口标题”你先打开一个WORD,然后打开VS自带的SPY++(在程序--VS--TOOLS里面,如果你装了,没装的话去下载一个),点“监视--窗口”,这时会显示出你当前打开的所有程序的“窗口”,找到你打开的WORD所对应的窗口,最后面写着它的类型,好像是“OpusApp”类型,自己看吧窗口标题就相当于winform里的Form类Text属性
      

  10.   

    private void button1_Click(object sender, EventArgs e)
     {
            System.Diagnostics.Process.Start("D:\\Documents and Settings\\AAA.doc");
            SendKeys.SendWait("%F");
            SendKeys.SendWait("A");
    }
    按照上面的代码,应该是打开了一个word,然后Alt+F,再点了A键,进入到了另存为的画面。
    当我点击这个按钮的时候,只打开了AAA这个文档,下面两部操作都没有执行。
    这个是什么原因?
    是的当我执行