我们单位有个软件,每次都要进行一些简单重复的工作,连参数都不用输入,只要点击右键执行所出现菜单中的一个命令即可。我希望用程序实现自动执行相应命令,该怎么办?请具体点,我菜。

解决方案 »

  1.   

    在资源里面加一个菜单,然后在好像是叫OnContextMenu的重载函数中中显示出来自定义的菜单
      

  2.   

    改注册表就好了,
    说起来比较费口舌,
    你可以看看注册表里面怎么把 .bmp 指定一个程序来打开的。
    如果是*.*好象有些麻烦,我没做过,不太肯定。
      

  3.   

    也许我上面没理解对,大概是这样吧:
    你用VC的工具SPY去看,把点击菜单所产生的命令抄下来,
    估计是WM_COMMAND+什么参数,
    然后写程序SEND 或POSTMESSAGE
      

  4.   

    用com,有个IContextMenu,还有一个接口忘了.我在网吧上网,没法查msdn.
    以前写了一个,在公司里.想要留个信箱.
    现在还在放假.下周才上班.
    其实msdn写的很详细.
      

  5.   

    是不是说,本来你需要点击右键执行一个操作的,但是现在你要求程序自动实现?
    我觉得,用SENDMESSAGE()函数就可以了,发送右键点起的那个菜单命令。就是模拟你点击的命令。
      

  6.   

    想要现成的话就用Rose里带的那个自动测试工具,可以写script模拟任何动作的。
      

  7.   

    先用VC以资源方式打开你的软件的exe文件,找到这个菜单,查一下执行的那个命令的ID号,比如说是ID号是100启动一个Work线程,不停地FindWindow你的软件主窗口
    找到后就 ::PostMessage(hWindow,WM_COMMAND,100,NULL);
    就OK了