1、打开控制台(“开始”|“运行”中输入:MMC)

2、“文件”菜单|“添加删除管理单元”|“添加...”|选“安全模板”|“关闭”。

3、在“C:\Windows\Security\templates”节点上,右键“新建模板...”,在弹出的对话框中“模板名”中输入:new,确定。

4、打开“New|本地策略|用户权利指派”节点,在右侧的“作为服务器登录”中添加要赋予该权限的用户。

5、然后,在“New”节点上单击右键,选“另存为...”保存到“C:\Sec.inf”。

6、建立批处理文档中输入:secedit configure /db secedit.sdb /cfg c:\Sec.inf

这两天新项目中用到了SQLServer数据库同步功能,要求程序在安装过程中自动添加SQLServerAgent服务的登录账户。

下面将SetupFactory中写的代码写出来,供参考。


 --安装MSDE2000
if (not Registry.DoesKeyExist(HKEY_LOCAL_MACHINE, "SOFTWARE\\Microsoft\\MSSQLServer\\Setup")) then
    Shell.Execute(SessionVar.Expand("%AppFolder%\\MSDE2000\\setup.exe"), "open", "", "", SW_SHOWNORMAL, true);
end
--重启后附加数据库,及自动添加同步作业。
File.RunOnReboot(SessionVar.Expand("C:\\Program Files\\数据库\\Setup.cmd"), "");
--添加Windows用户
Shell.Execute("net", "open", "user SQLAgent 123456 /add /passwordreq:yes /passwordchg:no /expires:never", "", SW_MINIMIZE, true);
--将用户添加到Administrator组中
Shell.Execute("net", "open", "localgroup Administrators SQLAgent /add", "", SW_MINIMIZE, true);
--设置SQLServerAgent服务的登录帐号,密码,及启动类型为自动。
Shell.Execute("sc", "open", "config SQLSERVERAGENT start= auto obj= .\\SQLAgent password= 123456", "", SW_MINIMIZE, true);
--在Windows启动时隐藏该用户。
Shell.Execute("regedit", "open", "/s C:\\HideSQLAgent.reg", "", SW_MINIMIZE, true);
--赋予该用户"以服务登录的权利"和"拒绝本地登录"
Shell.Execute("secedit", "open", "/configure /db secedit.sdb /cfg c:\\Sec.inf", "", SW_MINIMIZE, true);
--清理临时文件
Folder.DeleteTree(SessionVar.Expand("%AppFolder%\\MSDE2000"), nil);
File.DeleteOnReboot("C:\\HideSQLAgent.reg");
File.DeleteOnReboot("c:\\Sec.inf");
--安装完毕后要求重新启动计算机
_NeedsReboot = true;

http://www.cnblogs.com/pegger/archive/2009/02/18/1393052.html

命令行添加用户的“作为服务登录”权利(添加Windows用户的时候,门道不是一般的多)good的更多相关文章

  1. 如何在cmd命令行中查看、修改、删除与添加环境变量,语法格式例子:set path;echo %APPDATA%

    如何在cmd命令行中查看.修改.删除与添加环境变量 首先明确一点: 所有的在cmd命令行下对环境变量的修改只对当前窗口有效,不是永久性的修改.也就是说当关闭此cmd命令行窗口后,将不再起作用.永久性修 ...

  2. 无法从命令行或调试器启动服务,必须首先安装Windows服务(使用installutil.exe),然后用ServerExplorer、Windows服务器管理工具或NET START命令启动它

    无法从命令行或调试器启动服务,必须首先安装Windows服务(使用installutil.exe),然后用ServerExplorer.Windows服务器管理工具或NET START命令启动它 1. ...

  3. 通过dotnet命令行设置asp.net core服务的启动地址

    需求: 通过dotnet命令行启动asp.net core 服务时,自定义监听端口. 方法: 在program.cs中增加命令行参数配置: WebHost.CreateDefaultBuilder(a ...

  4. 1)实际时间(real time): 从command命令行开始执行到运行终止的消逝时间; 2)用户CPU时间(user CPU time): 命令执行完成花费的用户CPU时间,即命令在用户态中执行时间总和; 3)系统CPU时间(system CPU time): 命令执行完成花费的系统CPU时

    1)实际时间(real time): 从command命令行开始执行到运行终止的消逝时间: 2)用户CPU时间(user CPU time): 命令执行完成花费的用户CPU时间,即命令在用户态中执行时 ...

  5. Windows 如何在cmd命令行中查看、修改、删除与添加环境变量

    转自:http://www.cnblogs.com/saptechnique/archive/2013/02/17/2914222.html 首先明确一点: 所有的在cmd命令行下对环境变量的修改只对 ...

  6. RHEL 7 命令行注册和激活订阅服务

    导读 前一阵子,红帽推出了开发者免费使用订阅功能,只要注册成为红帽开发者就可以免费使用包括  RHEL7  在内的开发套件. 今天我们就来看一看怎么使用命令行来快速注册和激活订阅服务,以后就可以方便地 ...

  7. window下命令行的方式安装svn服务端

    下载Binary Packages类型的 安装文件  https://www.visualsvn.com/server/download/  自己选择版本 第一步 :开始安装到 c:/software ...

  8. Windows如何在cmd命令行中查看、修改、删除与添加、设置环境变量

    首先明确一点: 所有的在cmd命令行下对环境变量的修改只对当前窗口有效,不是永久性的修改.也就是说当关闭此cmd命令行窗口后,将不再起作用.永久性修改环境变量的方法有两种:一种是直接修改注册表(此种方 ...

  9. SQL Server2008 R2命令行启动及停止SQL服务的方法

    ===================================================== 在 SQL Server中,想要启动或停止SQL Server服务,通过SQL Server ...

随机推荐

  1. css Hack 以及css的一些兼容问题小结

    坚持每天做总结.今天下班还算早.写个跟css兼容有关的知识点.便于后期查看与学习.一.先说说各种主流浏览器的内核 浏览器最重要或者说核心的部分是“Rendering Engine”,可大概译为“渲染引 ...

  2. strlen() 和 strcpy()函数

    strlen() 和 strcpy()函数的区别,这两个一个是返回一个C风格字符串的长度,一个是对一个C风格字符串的拷贝,两个本来功能上是不同的,此外,他们还有一些细小的区别:strlen(" ...

  3. 长度有限制的字符串hash函数

    长度有限制的字符串hash函数 DJBHash是一种非常流行的算法,俗称"Times33"算法.Times33的算法很简单,就是不断的乘33,原型如下 hash(i) = hash ...

  4. 模板:cin.getline用法

    Ref: http://baike.baidu.com/view/2383876.htm   此函数会一次读取多个字符(包括空白字符).它以指定的地址为存放第一个读取的字符的位置,依次向后存放读取的字 ...

  5. Xamarin android PreferenceActivity 实现应用程序首选项设置(一)

    应用程序首选项屏幕 类似系统设置界面. PreferenceActivity 是另一种类型的Activity,通过PreferenceActivity 可以以最少量的工作显示某些Preference列 ...

  6. Cassandra1.2文档学习(13)—— 数据读取

    参考文档:http://www.datastax.com/documentation/cassandra/1.2/webhelp/index.html#cassandra/dml/dml_about_ ...

  7. PHP学习之环境搭建

    计算机环境 win7  64位 搭建  apache-httpd-2.2-win64  +  php-5.3.6-Win32-VC9-x64  +MySQL_5.5.13_winx64开发环境 参考: ...

  8. maven项目转eclipse工程的命令:eclipse.bat

    call mvn clean:clean call mvn eclipse:eclipse -DdownloadSources=true @pause 复制以上内容,保存为eclipse.bat 以后 ...

  9. TImage 的一些操作

    //给 image上写数字. Image1.Picture.Bitmap.Height:= Image1.Height; Image1.Picture.Bitmap.Width:= Image1.Wi ...

  10. 这个SpringMVC的一直刷屏的问题你见过吗?无解

    严重: Servlet.service() for servlet DispatcherServlet threw exceptionjava.lang.StackOverflowError at o ...