从msi安装程序调用Project Server接口Web方法

问题描述:

我正在使用Visual Studio Web安装项目来安装扩展Project Server功能的应用程序。我想从我的安装项目的一个自定义操作中调用PSI(Project Server Interface)中的一个方法,但是每次都得到“401 Unauthorized access”错误。我应该怎么做才能访问PSI。从控制台应用程序使用相同的代码时没有任何问题。从msi安装程序调用Project Server接口Web方法

听起来像在控制台中,您正在使用您当前的用户凭证运行,它可以访问PSI。从网络运行时,它将与IIS应用程序实例的信誉一起运行。我认为你需要设置委派来将会话信任传递给IIS应用程序,或者为可以访问PSI的IIS应用程序使用一些静态信用。

+0

我没有从网上运行任何东西,我从安装程序自定义操作中调用该方法,该方法从msi中运行。 – kjv 2008-08-23 07:56:11

我终于找到了答案。您可以使用适当的用户,密码和域令牌来调用LoginWindows PSI服务以设置NetworkCredentials的凭据。然后,只要凭证是明确的,就可以调用任何PSI方法。否则,使用DefaultCredentials会得到一个未经授权的访问错误,因为msi是使用本地系统帐户运行的。