开发环境:VS2008
.net framework版本:2.0
操作系统:winxp sp2我编写了一个windows service程序,现要求以User的身份登录.在serviceProcessInstaller中把Account的属性设为User,编成功.然后使用InstallUtil.exe安装时弹出对话框要求输入用户名和密码,以domain\username,password的格式输入用户名及密码,但输入后点击确定即提示:在“安装”阶段发生异常。
System.ComponentModel.Win32Exception: 帐户名与安全标识间无任何映射完成。之后安装失败,回滚.请问:服务如果要以User登录而不是以Local System或者Local Service登录应该怎么做?如何设置登录的用户名及密码?
.net framework版本:2.0
操作系统:winxp sp2我编写了一个windows service程序,现要求以User的身份登录.在serviceProcessInstaller中把Account的属性设为User,编成功.然后使用InstallUtil.exe安装时弹出对话框要求输入用户名和密码,以domain\username,password的格式输入用户名及密码,但输入后点击确定即提示:在“安装”阶段发生异常。
System.ComponentModel.Win32Exception: 帐户名与安全标识间无任何映射完成。之后安装失败,回滚.请问:服务如果要以User登录而不是以Local System或者Local Service登录应该怎么做?如何设置登录的用户名及密码?
解决方案 »
- 短信猫 AT指令的发送短信,怎么样才能发送中文呀?现在能发送英文。具体代码怎么修改呢?
- 关于axWindowsMediaPlayer的问题
- !!!请教大侠!动态创建类
- INSERT INTO 语句的语法错误。
- 文件加密!
- 急!winform程序打包发布后,在win2000运行时无法连接数据库!
- 急求 C# Netron二次开发滴问题```大侠们帮帮我吖` 狠急
- 请问一个关于Access数据库链接的问题
- YYKXQ(异域狂想曲)进来接分, 非常感谢你纠正我的错误
- ★★▲▲请问怎么实现自定义字段,就是由客户自定义数据表中字段
- 怎样知道一个应用软件是用什么语言编写的?
- 最近碰到建行的数字签名验证的问题,不知哪位做过RSA公钥验证签名的呀?
不行,试过了.还是提示 :在“安装”阶段发生异常。
System.ComponentModel.Win32Exception: 帐户名与安全标识间无任何映射完成。
也从来没有试过用user...
我也是第一次.这个服务的功能是使用PDF的虚拟打印机执行Word->PDF的转换.在winform程序里转换没有问题.但是写成服务以后就无法执行转换.在网上查了一点资料是这样说的:when you run that code in a windows form app, its running under your credentials. when you run it as a service it runs as the network service user. services dont typically interact w/ the users (and its a bad to allow it), so any apps it launches will be running under that user's context and not in yours, kind of like logging off, logging in under a different account, running the windows app, switching users, and wondering why you never see word under this other user.所以决定试试使用User登录,也许会管用.
SC_HANDLE hSCManager,
LPCTSTR lpServiceName,
LPCTSTR lpDisplayName,
DWORD dwDesiredAccess,
DWORD dwServiceType,
DWORD dwStartType,
DWORD dwErrorControl,
LPCTSTR lpBinaryPathName,
LPCTSTR lpLoadOrderGroup,
LPDWORD lpdwTagId,
LPCTSTR lpDependencies,
LPCTSTR lpServiceStartName,
LPCTSTR lpPassword
);上面的函数在创建服务时被调用, lpServiceStartName lpPassword 分别用于指定服务运行的帐号和密码
我又重新试了一次,写了一个什么都不做的服务(就只加了一个Timer控件).以User登录,还是不行.一样的错误提示.以Local System就正常.你试试看看?5分钟写一个,安装一下.
虽然也没有去做,但是想想自己也很有可能忘记用.\username
呵呵 最近都在用orcale,要是还在使用sqlserver,猜想还是很有可能想到.的写法