小编mbr*_*nyc的帖子

Convert.ToBoolean(string)和Boolean.Parse(string)有什么区别?

这两种方法有什么区别

Convert.ToBoolean()

Boolean.Parse()

有没有理由使用其中一个?

另外,还有其他type.Parse()方法需要注意吗?

谢谢,

马特

c# parsing boolean

75
推荐指数
2
解决办法
4万
查看次数

22
推荐指数
3
解决办法
1万
查看次数

是否可以枚举[ADSI]对象的Invoke()可用的所有方法和属性?

我很好奇是否有人可以描述如何通过绑定实例枚举可用的ADSI方法[ADSI]$instance.psbase.Invoke()

研究已经出现"参考ADSI接口的文档".但我对这个答案并不是特别满意.

如果我实例化:

[ADSI]$lhost_group="WinNT://./Administrators,group"
Run Code Online (Sandbox Code Playgroud)

然后尝试:

@($lhost_group.psbase.Invoke("Members")) | foreach-object {$_.GetType().InvokeMember("Name", 'GetProperty', $null, $_, $null)}
Run Code Online (Sandbox Code Playgroud)

Powershell将返回组中包含的每个对象的outof GetProperty("Name").

如何枚举通过任何给定ADSI接口可用的所有可用方法和属性?

这从吉文·利维答案就是语法的另一个例子[ADSI]$_.GetTypes().InvokeMember()[ADSI]$_.psbase.Invoke()使用.

reflection syntax powershell system.reflection

9
推荐指数
1
解决办法
2727
查看次数

Array.Reverse()与Enumerable.Reverse <TSource>()

我有一个单维数组的项目声明和初始化为:

string[] SubDirectorylist = Directory.GetDirectories(TargetDirectory);
Run Code Online (Sandbox Code Playgroud)

我想扭转成员并找到Enumerable.Reverse<TSource>().

LINQ的反向实现有哪些优势(如果有的话)Array.Reverse()

.net linq

6
推荐指数
2
解决办法
854
查看次数

变量名称需要多长时间?

我想,我正在寻找既有技术又有见解的答案.

变量名称需要多长时间?

我总是试图让我的变量尽可能短,同时保持适当的意义水平.但是,随着一些"子例程"的复杂性增加,我发现需要创建更长的变量名来继续让它们变得有意义.变量的长度是否会影响性能?

例如,我刚刚使用了MBReadPerSecondAverageAfterLastFlushToLog,这与我希望自己来的supercalifragilisticexpialidocious非常接近.

谢谢,

马特

ps对不起,如果你现在有一首Mary Poppins歌曲.

variables

6
推荐指数
1
解决办法
5162
查看次数

GENERIC_ALL和文件夹/文件ACL?GENERIC_ALL到底做了什么?

我最近在我们的文件服务器上重新设计了安全性,将大部分完全控制标记为修改.现在我的开发人员告诉我,只要他们使用GENERIC_ALL打开文件(CreateFile()例如),他们就会收到拒绝访问的消息.

经过研究,似乎没有任何迹象表明这GENERIC_ALL不仅仅是GENERIC_EXECUTE+ GENERIC_WRITE+ GENERIC_READ; 然而,这似乎并非如此,因为开发人员能够添加三个常量值,并使用它CreateFile().

所以,我问......究竟GENERIC_ALL做了什么?

谢谢,

马特

c windows file-io createfile

6
推荐指数
1
解决办法
1279
查看次数

Hashtable与关于迭代的自定义对象数组

我经常编写事物列表并对它们执行枚举以执行一些get/set.

我讨厌枚举哈希表,因为每当我必须这样做时,我必须向后弯曲以处理hashtable对象.

$hashtablelistofitems = @{}

$hashtablelistofitems.add("i'm a key", "i'm a value")

foreach ($item in $hashtablelistofitems.keys) {
  $item
  $hashtablelistofitems.item($item)
}
Run Code Online (Sandbox Code Playgroud)

相反,我通常会恢复使用具有两个noteproperties的自定义对象的单维数组.

$array = @()

$listofitems = "" | select key,value

$listofitems.key = "i'm a key"
$listofitems.value = "i'm a value"

$array += $listofitems

foreach ($item in $listofitems) {
  $item.key
  $item.value
}
Run Code Online (Sandbox Code Playgroud)

我为什么要使用hashtable这种方法呢?仅仅因为它只保证每个键的单个值?

powershell hashtable key-value-store

6
推荐指数
1
解决办法
3381
查看次数

get-itemproperty报告项目不存在,存在时

我在REG_SZ使用以下方法获取值时遇到了一些奇怪的麻烦:

(get-itemproperty -Path "Registry::HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Uninstall\VLC media player" -Name UninstallString).UninstallString

(get-itemproperty -Path "Registry::HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Uninstall\VLC media player" -Name UninstallString).UninstallString

get-itemproperty : Cannot find path 'HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Uninstall\VLC media player' because it
does not exist.
At line:1 char:2
+ (get-itemproperty -Path "Registry::HKEY_LOCAL_MACHINE\Software\Microsoft\Windows ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : ObjectNotFound: (HKEY_LOCAL_MACH...LC media player:String) [Get-ItemProperty], ItemNotFoundException
    + FullyQualifiedErrorId : PathNotFound,Microsoft.PowerShell.Commands.GetItemPropertyCommand
Run Code Online (Sandbox Code Playgroud)

此方法适用于另一个REG_SZ没有问题的方法,但是当我在下面调用许多键时,Uninstall它将失败。

具体来说,它适用于:

(get-itemproperty -Path "Registry::HKEY_CURRENT_USER\Software\Microsoft\Command Processor" -Name autorun).AutoRun

这两个数据条目都在我的系统上存在,如regedit中所示。

但是,非常有趣的是,它们在以下结果中不存在:

Get-ChildItem "Registry::HKEY_LOCAL_MACHINE\software\microsoft\windows\currentversion\uninstall\"
Run Code Online (Sandbox Code Playgroud)

还有更多的“缺失”键。这似乎是我不熟悉的一些奇怪的注册表名称空间虚拟化(类似于HKEY_CLASSES_ROOT)?

registry powershell uninstall

4
推荐指数
1
解决办法
1万
查看次数

获取;设置;使用 DateTime 来验证 .TryParse?

我正在尝试将输入数据的验证移至 get;set; 中 类结构的。

public void PlotFiles()
    {

     List<DTVitem.item> dataitems;
        DTVitem.item i;
        DateTime.TryParse("2012/01/01", out i.dt);
        DateTime.TryParse("04:04:04", out i.t);
        int.TryParse("455", out i.v);
        dataitems.Add(i);

    }
Run Code Online (Sandbox Code Playgroud)

该结构在单独的类中声明(可能没有必要):

public partial class DTVitem
{
    public struct item
    {
        public DateTime dt;
        public DateTime t;
        public int v;
    }
}
Run Code Online (Sandbox Code Playgroud)

每次我设置DTVitem.item.dtDTVitem.item.t或 时DTVitem.item.v,我希望它执行相关操作.TryParse()来验证属性内容。

但是,当我尝试按如下方式使用 TryParse() 时(试图理解MSDN 中的这个示例):

public partial class DTVitem
{
    private DateTime _datevalue;

    public string dt
    {
        get { return _datevalue; }
        set { DateTime.TryParse(value, …
Run Code Online (Sandbox Code Playgroud)

c# get properties set

3
推荐指数
1
解决办法
2万
查看次数

使用Exchange Web服务(EWS)API查找Exchange Server版本的方法

我正在尝试编写一种方法来查找要与EWS连接的Exchange Server的Exchange Server版本。

很明显,读取对EWS请求的响应XML的内容包含此信息,如此处所述

我很好奇我是否必须测试并处理错误,或者是否还有另一种“侵入性较小”的方法来查找Exchange版本。

如何找到尝试通过EWS访问的Exchange Server的版本,以便可以针对EWS托管的API活动对其进行设置?

我目前正在使用以下方法,但是我无法想象这是最有效的方法吗?

foreach (ExchangeVersion exchver in Enum.GetValues(typeof(ExchangeVersion)))
{
    //Console.WriteLine(exchver.ToString());
    try
    {
        ExchangeService service = new ExchangeService(exchver);
        //Do stuff here
    }
    catch (Exception e)
    {
        Console.WriteLine("Server is not " + exchver +". Trying next ExchangeVersion.");
    }
}
Run Code Online (Sandbox Code Playgroud)

c# xml exchange-server exchangewebservices

3
推荐指数
1
解决办法
6110
查看次数

是否可以为SecureString创建显式或隐式运算符以进行字符串转换?

我已经对各种转换方法进行了一些研究,并且已经使用了explicit或者implicit operators.

注意到它System.Security.SecureString是一个sealed类(它不能从中继承),是否可以编写一个explicit或者implicit operator能够在a System.Security.SecureString和a 之间执行转换System.String(利用此处描述的方法).

例如,我知道你必须operator在被转换对象的(部分)类中编写.因此,我认为最好的方法是继承该类,并编写必要的operators.

是否有可能a)使用的执行转换explicitimplicit operatorSystem.Security.SecureStringSystem.String,B)执行一个类的对象是谁的类是转换sealed

如果没有,除了使用类方法之外还有另一种方法可以执行转换吗?

假设我是微软产品的消费者,请提供实用的答案.

c# syntax accessor type-conversion implicit-conversion

2
推荐指数
1
解决办法
378
查看次数

是否可以使用FileSystemWatcher识别哪个进程正在更改文件?

是否可以使用FileSystemWatcher查找正在更改文件的PID或进程名称?

filesystemwatcher

1
推荐指数
1
解决办法
4239
查看次数