.Net2005作成的安装程序,如何在VISTA下注册Service?

曾经的董胖 2009-06-01 05:00:21
需求:
用.Net2005的 "Setup and Deployment Projects" 向导做成一个.msi的安装程序,其中需要注册一个Service程序。

现象:
在XP运行完全正确,在Vista下运行失败。根据相关Error信息判定,应该是UAC的权限控制,导致Service注册失败。

已经尝试的解决方法:
自己做成了一个DLL, 添加在"Custom Action"中:
方法1: DLL中使用OpenSCManager/CreateService等相关API注册. 结果: XP下测试OK,Vista下测试失败。
方法2: DLL中使用WMI的Win32_service的相关函数注册. 结果: XP下测试OK,Vista下测试失败。
方法3: DLL中去执行.bat文件注册. 结果: XP下测试OK,Vista下测试失败。

求:
希望有大侠给我指点一下,如何实现。能够有一个简单的Sample则更好。
(^_^ 分数不够可以另行追加)
...全文
108 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
cnzdgs 2009-06-01
  • 打赏
  • 举报
回复
这样试一下:另做一个exe程序来进行注册,DLL中用ShellExecute加载这个exe程序,lpOperation参数给“RunAs”。
Qim 2009-06-01
  • 打赏
  • 举报
回复
没做过service注册方面的咚咚。
建议楼主先在管理员账户下试一下。如果成功,说明是权限问题,这样给setup赋予相应的权限应该就可以了。
如果还是失败,那就说明是xp和vista的sevice注册有不同的地方。
xieyibin2084 2009-06-01
  • 打赏
  • 举报
回复
期待高手
YoungCui 2009-06-01
  • 打赏
  • 举报
回复
ding
ahtya 2009-06-01
  • 打赏
  • 举报
回复
帮顶
pengji 2009-06-01
  • 打赏
  • 举报
回复
VISTA的UAC真是个麻烦,有人知道吗?

7,539

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 VC.NET
社区管理员
  • VC.NET社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧