Nas*_*aer 10 .net silverlight iis-7
我读了很多文章.但据我所知,我已经完成了所有工作.在本地计算机VS2010上一切正常.只有在IIS7服务器上工作时才会出现此问题.
如果我从Windows资源管理器手动启动它,我想启动一个在服务器上运行良好的exe文件.
Dim fiExe As New IO.FileInfo(IO.Path.Combine(diBase.FullName, "ClientBin\ConvertAudio.exe"))
Dim SI As New ProcessStartInfo(fiExe.FullName, args)
SI.Verb = "runas"
SI.UseShellExecute = True
SI.WorkingDirectory = fiExe.Directory.FullName
Dim P As Process = Process.Start(SI)
P.PriorityClass = ProcessPriorityClass.Idle
Run Code Online (Sandbox Code Playgroud)
我ClientBin在IIS中的应用程序中转换了目录.
但是当使用该服务时,我收到此错误(Silverlight应用程序中的回调):
{System.Security.SecurityException ---> System.Security.SecurityException: Sicherheitsfehler
bei System.Net.Browser.BrowserHttpWebRequest.InternalEndGetResponse(IAsyncResult asyncResult)
bei System.Net.Browser.BrowserHttpWebRequest.<>c__DisplayClass5.<EndGetResponse>b__4(Object sendState)
bei System.Net.Browser.AsyncHelper.<>c__DisplayClass4.<BeginOnUI>b__0(Object sendState)
--- Ende der internen Ausnahmestapelüberwachung ---
bei System.Net.Browser.AsyncHelper.BeginOnUI(SendOrPostCallback beginMethod, Object state)
bei System.Net.Browser.BrowserHttpWebRequest.EndGetResponse(IAsyncResult asyncResult)
bei System.Net.WebClient.WebClientWriteStream.<Dispose>b__3(IAsyncResult ar)}
Run Code Online (Sandbox Code Playgroud)
我试图将文件"clientaccesspolicy.xml"存储在同一目录中 ClientBin
<?xml version="1.0" encoding="utf-8"?>
<access-policy>
<cross-domain-access>
<policy>
<allow-from http-request-headers="*">
<domain uri="*"/>
</allow-from>
<grant-to>
<resource path="/" include-subpaths="true"/>
</grant-to>
</policy>
</cross-domain-access>
</access-policy>
Run Code Online (Sandbox Code Playgroud)
还是一样的消息.任何的想法?


*新信息 - 动词* 使用此功能时
Dim startInfo As New ProcessStartInfo(fiExe.FullName)
Dim V As String = ""
For Each verb As String In startInfo.Verbs
V &= V & ", "
Next
Throw New Exception("Verbs=" & V)
Run Code Online (Sandbox Code Playgroud)
我收到这个结果:
动词= ,,,,,,,
*找到解决方案*
我在使用http://www.fiddler2.com和http://technet.microsoft.com/en-us/sysinternals/bb896653时找到了解决方案
问题是在x64 IIS上使用x86应用程序时遇到的问题与verb=runas国旗组合.现在应用程序设置为anycpu(也许这无关紧要)并且verbProcessStartInfo未设置为任何内容.
Mic*_*elS 13
编辑:
经过漫长的旅程,我和Nasenbaer发现了以下情况.IIS运行EXE失败的可能原因是:
原始答案:
您需要IIS AppPool\DefaultAppPool在EXE所在的目录上为用户分配FullControl安全权限.这是尝试运行该进程的用户(假设您正在使用该进程DefaultAppPool),并且没有适当的权限,则无法执行此操作所以.
手动运行EXE时,您正在使用Windows登录用户.这就是为什么你可以手工午餐.IIS使用应用程序池用户.
要添加权限,请执行以下操作:
IIS AppPool\DefaultAppPoolFullControl截图:

帮助我的是:在应用程序池中设置Identity = LocalSystem
希望它会帮助某人......
| 归档时间: |
|
| 查看次数: |
34684 次 |
| 最近记录: |