首页 新闻 会员 周边

急急急!AutomationFactory.CreateObject报错!高手速进

0
悬赏园豆:20 [已关闭问题] 关闭于 2013-02-27 11:28
AutomationFactory.CreateObject("WScript.Shell");
用来打开本地一一个程序。
发布上IIS时,使用 127.0.0.1访问时可以使用。
但通过 192.168.1.100访问时却无法使用。
我查了一下信息,不过即便我加了签名,一样无法不行。
http://msdn.microsoft.com/zh-cn/library/ee721083(v=vs.95).aspx 
 
一下是我的代码:
 1                                 dynamic cmd;
 2                                 try
 3                                 {
 4                                     cmd = AutomationFactory.GetObject("WScript.Shell");
 5                                 }
 6                                 catch (Exception)
 7                                 {
 8                                     cmd = AutomationFactory.CreateObject("WScript.Shell");
 9                                 }
10                                 //运行
11                                 try
12                                 {
13 
14                                     MessageBox.Show("2。。。");
15                                     string Path = cmd.SpecialFolders("Desktop");//找到系统的桌面,
16                                     string sysN = Path.Substring(0, Path.IndexOf(":") + 1);//找到系统盘符
17                                     MessageBox.Show("R Q");
18                                     cmd.Run(sysN + @"\Windows\LPlayer\LPlayer.exe " + programId, 1, true);
19                                 }
20                                 catch (Exception ex)
21                                 {
22                                     MessageBox.Show("预览失败,检查预览插件是否存在。" + ex.Message);
23                                 }

 上面的问题已经解决了,参考一下解决就可以了。

http://developer.51cto.com/art/201203/321824.htm

目前遇到另外一个问题:

在其中一台机器上访问时会出现:

ex:[ComAutomation_FeatureBlocked]参数:调试资源字符串不可用。密钥和参数通常提供足够的信息用以诊断该问题。请访问
http://go.microsoft.com/fwlink/?linkid=10663&Version=5.1.10411.0&File=System.Windows.dll&Key=ComAutomation_FeatureBlocked

这样的提示信息。请问这是什么问题。

小明冥的主页 小明冥 | 菜鸟二级 | 园豆:222
提问于:2013-02-21 09:42
< >
分享
所有回答(3)
0

127.0.0.1表示你自己本机,IIS帐号是不允许访问客户端资源的,那是能访问,岂不是木马满天飞

Rich.T | 园豆:3440 (老鸟四级) | 2013-02-21 09:55

如果这样,Silverlight之out of Browser模式不就没有意义啦

支持(0) 反对(0) 小明冥 | 园豆:222 (菜鸟二级) | 2013-02-21 09:58

@小明冥: 

你可以通过调用COM+的方式,而不是直接调用硬盘资源

支持(0) 反对(0) Rich.T | 园豆:3440 (老鸟四级) | 2013-02-21 10:00

@Rich.T: 具体要怎么做呢?

详细说明一下!

支持(0) 反对(0) 小明冥 | 园豆:222 (菜鸟二级) | 2013-02-21 10:03
0

有什么错误啊?是不是权限不够啊

chenping2008 | 园豆:9836 (大侠五级) | 2013-02-21 10:02

支持(0) 反对(0) 小明冥 | 园豆:222 (菜鸟二级) | 2013-02-21 10:05
0

哎....还是自己找到了解决方法。

        出现这个问题的原因只要把Web.cofing中配置中的

 

  <services>
   <service behaviorConfiguration="ServiceBehavior" name="Service">
    <endpoint address="" binding="wsHttpBinding" contract="IService">
     <identity>
      <dns value="192.168.1.100"/>把这里修改为,机器的IP地址即可
     </identity>
    </endpoint>
    <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange"/>
   </service>
  </services>

小明冥 | 园豆:222 (菜鸟二级) | 2013-02-27 11:06
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册