我有一个网站,它启用了Windows身份验证.从网站中的页面,用户可以启动一项服务,该服务可以对数据库执行一些操作.
它适用于我启动服务,因为我是服务器上的本地管理员.但我只是有一个用户测试它,他们无法启动服务.
我的问题是:
有没有人知道如何通过名称使用与当前登录时不同的Windows帐户获取指定计算机上的服务列表?
我真的不想将需要启动服务的所有用户添加到一个Windows组中,并将它们全部设置为我的IIS服务器上的本地管理员.....
这是我得到的一些代码:
public static ServiceControllerStatus FindService()
{
ServiceControllerStatus status = ServiceControllerStatus.Stopped;
try
{
string machineName = ConfigurationManager.AppSettings["ServiceMachineName"];
ServiceController[] services = ServiceController.GetServices(machineName);
string serviceName = ConfigurationManager.AppSettings["ServiceName"].ToLower();
foreach (ServiceController service in services)
{
if (service.ServiceName.ToLower() == serviceName)
{
status = service.Status;
break;
}
}
}
catch(Exception ex)
{
status = ServiceControllerStatus.Stopped;
SaveError(ex, "Utilities - FindService()");
}
return status;
}
Run Code Online (Sandbox Code Playgroud)
我的例外来自try块中的第二行.这是错误:
System.InvalidOperationException:无法在计算机'server.domain.com'上打开服务控制管理器.此操作可能需要其他权限.---> System.ComponentModel.Win32Exception:拒绝访问---内部异常堆栈跟踪的结束---在System.ServiceProcess.ServiceController.GetServicesOfType(String)处的System.ServiceProcess.ServiceController.GetDataBaseHandleWithAccess(String machineName,Int32 serviceControlManaqerAccess)处telemarketingWebSite.Utilities.StartService()上的machineName,Int32 serviceType)
感谢您的帮助/信息
我想在Visual Studio中右键单击某个文件扩展名时添加自定义菜单项.
似乎有一些帮助开源项目来实现这一点,但我想问一下是否有人曾经使用它们,它们有多容易 - 你能帮助我并提供一个起点吗?
我在我的webbrowser对象上打开了一个html页面,我可以输入用户名和密码,但我卡住了,不知道如何提交信息.这是用户名/密码提交的html代码:
<div id="signin">
<h2 class="ir">
<em></em>Sign in</h2>
<form action="/login/" method="post">
<input id="login-url" name="login[url]"
type="hidden" value="/characters/" />
<input id="login-urlError" name="login[urlError]"
type="hidden" value="/account/?error=1" />
<fieldset>
<ul>
<li class="row">
<label for="login-username">
Username <span class="req">*</span>
</label>
<input id="login-username" name="login[username]"
type="text" class="TextBox" value="" />
</li>
<li class="row">
<label for="login-password">
Password <span class="req">*</span>
</label>
<input id="login-password" name="login[password]"
type="password" class="TextBox Password" value="" />
</li>
<li class="but">
<input name="login[submit]" type="image"
class="img" alt="Login »"
src="/_pub/img/hp/but-login.png" />
</li>
</ul>
</fieldset>
</form>
<p>
<a href="/account/password-reset/">ACCOUNT TROUBLE?</a>
</p>
</div>
Run Code Online (Sandbox Code Playgroud)
我使用以下命令输入用户名和密码:
WebBrowser1.Document.GetElementById("login-username").SetAttribute("Value", Information.txtuser.Text) …Run Code Online (Sandbox Code Playgroud) 我刚刚安装了Python 3.0的第一个候选版本,并在输入后输入了以下错误:
>>> help('modules foo')
Run Code Online (Sandbox Code Playgroud)
[...] LookupError: unknown encoding: uft-8
请注意,它表示uft -8而不是utf -8
这是py3k特定的错误还是我的错误配置?我在这个法语区域设置Windows XP SP3机器上没有安装任何其他版本的Python.
编辑
我有一个类比较相同对象的2个实例,并生成它们的差异列表.这是通过循环密钥集合并使用已更改内容的列表填充一组其他集合来完成的(这在查看下面的代码后可能更有意义).这有效,并生成一个对象,让我知道在"旧"对象和"新"对象之间添加和删除的确切内容.
我的问题/担忧是......它真的很难看,有很多循环和条件.是否有更好的方法来存储/接近这一点,而不必过分依赖无穷无尽的硬编码条件?
public void DiffSteps()
{
try
{
//Confirm that there are 2 populated objects to compare
if (NewStep.Id != Guid.Empty && SavedStep.Id != Guid.Empty)
{
//<TODO> Find a good way to compare quickly if the objects are exactly the same...hash?
//Compare the StepDoc collections:
OldDocs = SavedStep.StepDocs;
NewDocs = NewStep.StepDocs;
Collection<StepDoc> docstoDelete = new Collection<StepDoc>();
foreach (StepDoc oldDoc in OldDocs)
{
bool delete = false;
foreach (StepDoc newDoc in NewDocs)
{
if (newDoc.DocId == oldDoc.DocId)
{
delete = true; …Run Code Online (Sandbox Code Playgroud) 我有一个textbox输入由jQuery处理.
$('input.Search').bind("keyup", updateSearchTextbox);
Run Code Online (Sandbox Code Playgroud)
当我按下Enter文本框时,我得到一个回复,这会让一切都变得混乱.如何捕获Enter并忽略它?
(只是为了抢占一个可能的建议:文本框必须是<asp:textbox ... />- 我不能用它替换它<input ... />.)
我一直在尝试编写一些例程来使用System.ServiceModel.Syndication中提供的新例程来读取RSS和ATOM提要,但不幸的是,Rss20FeedFormatter对我尝试的大约一半的提示进行了炸弹,但有以下异常:
Run Code Online (Sandbox Code Playgroud)An error was encountered when parsing a DateTime value in the XML.
只要RSS提要以下列格式表达发布日期,就会出现这种情况:
2008年10月16日星期四14:23:26 -0700
如果Feed将发布日期表示为GMT,那么情况就好了:
周四,08年10月16日21:23:26 GMT
如果有一些方法可以使用XMLReaderSettings解决这个问题,我还没有找到它.有人可以帮忙吗?
使用javascript使用特定CSS类获取html文档中所有元素数组的最佳方法是什么?
现在没有像jQuery这样的javascript框架,我可以循环所有元素并自己手动检查它们.我希望有一些更优雅的东西.
如果我有一个返回Int32的VB.Net函数,但使用unsigned int(UInt32)进行计算等.如何将值为"3392918397"的变量"MyUintVar32"转换为VB.Net中的标准Int32 ?
在c#中,如果我只是执行"return(int)(MyUintVar32);",我得到-902048899,而不是错误.
我尝试了几种不同的方法.与VB.Net相比,c#处理这些转换的方式有何不同?
asp.net ×3
c# ×2
vb.net ×2
.net-2.0 ×1
browser ×1
cookies ×1
css ×1
html ×1
input ×1
javascript ×1
jquery ×1
loops ×1
overflow ×1
python ×1
python-3.x ×1
refactoring ×1
rss ×1
security ×1
syndication ×1