VisualSVN 控制台通过 WMI 接口实现各功能,如果需要修改用户密码,就可以利用这个接口来实现,以下是示例脚本(在本机运行):
var strComputer=".";
var objWMIService = GetObject("winmgmts:\\\\" + strComputer + "\\root\\VisualSVN");
var colItems = objWMIService.ExecQuery("SELECT * FROM VisualSVN_User WHERE Name=\"username\"", "WQL");
var e = new Enumerator(colItems);
for(; !e.atEnd(); e.moveNext()){
var item = e.item();
WScript.Echo("Name:" + item.Name);
item.SetPassword("111");
}
可扩展脚本,如从其它系统中读取DB记录,更新对应帐号密码,以实现多系统的帐号同步,或在WEB服务器上执行,提供用户自己修改密码功能。
参考:
http://stackoverflow.com/questions/4354356/visualsvn-server-password-change
http://stackoverflow.com/questions/10017282/control-visualsvn-server-from-c-sharp