草庐IT

powerShell

全部标签

c# - 如何从 Windows Powershell 构建运行 vNext 应用程序?

我正在尝试从WindowsPowerShell在.NETvNext中构建控制台应用程序。到目前为止,我已经通过升级了包kvmupgrade我从中获得了包版本“KRE-svr50-x86.1.0.0-alpha3-10070”,还检查了“别名”以符合版本。现在,我编写了一个包含以下几行的控制台应用程序:usingSystem;publicclassProgram{publicstaticvoidMain(){Console.WriteLine("WhySooserious!!!!");}}然后在project.json下方{"dependencies":{"System.Console"

c# - 如何在 PowerShell 中创建具有行为(方法)的真实对象?

可能这个问题以前有人回答过....但我还没有找到满足我需求的具体答案。顺便说一句,我正在使用PowerShell3嗯,我是PowerShell的新手,但作为C#开发人员我有很多经验,所以使用对象对我来说非常重要。所以我想知道是否有一种干净的方式在PowerShell脚本中应用OOP概念(当然不是全部,尽管那会很棒),因为例如,我想做一些具体的事情。注意:我知道我可以在PowerShell中编写C#代码来创建DTO,而且我可以在C#中创建PowerShell二进制模块,我过去曾这样做过,但我正在寻找的是现在能够在PowerShell中以面向对象的方式编写我的所有代码。我想做的事情:在Po

c# - 在 C# 中按名称访问 PSObject 属性

例如,我有一个具有两个属性的PSObject事务:id和transactionName,因此它看起来像:交易{编号:123交易名称:tranName1如果交易名称为tranName1,我想返回交易ID。在我看来,在powershell脚本中,我们可以简单地做:if$transaction.transactionName-eqtranNamereturn$transaction.id但是在c#中它会出错,因为它无法通过名称识别属性...有什么想法如何在c#中做到这一点吗? 最佳答案 尝试这样的事情:psobjectvariable.P

c# - 是否可以伪造 Windows 控制台 API?

我已经用c#编写了一个ssh服务器,我认为将powershell连接为一个shell会很好。我已经尝试了两种方法来让它正常工作,但都远非完美。这是我尝试过的:启动powershell.exe并重定向它的标准(输入/输出)。这不运行良好,因为powershell.exe检测到它被重定向,更改这是行为。更重要的是,它期望stdid上的输入数据,而不是命令。所以它使用控制台api来读取命令。在“包装器”应用程序中托管powershell。这有以下优点能够为powershell提供一个“控制台”实现(通过PSHostRawUserInterface)。这样效果更好,但您仍然可以调用命令(主要是

c# - 在 C# 中编写 PowerShell 模块时,如何存储模块状态?

我正在用C#编写一个连接到数据库的PowerShell模块。该模块有一个Get-MyDatabaseRecordcmdlet,可用于查询数据库。如果您在变量$MyCredentials中有一个PSCredential对象,您可以像这样调用cmdlet:PSC:\>Get-MyDatabaseRecord-Credential$MyCredentials-Id3MyRecordId:3MyRecordValue:test_value问题是,每次调用Get-MyDatabaseRecord时都必须指定Credential参数,这既乏味又低效。如果您可以只调用一个cmdlet连接到数据库,然

c# - 在自定义 C# PowerShell Cmdlet 中确定是否指定了 -Verbose

我有一个自定义C#PowerShellCmdlet(继承自Cmdlet基类),我希望能够确定在运行Cmdlet时是否指定了“-Verbose”参数。我意识到WriteVerbose将在指定-Verbose参数时输出,但我想在指定-Verbose时实际执行一些其他代码(即在指定-Verbose时不输出Console.Write值)。谢谢,约翰 最佳答案 像这样检查cmdlet的绑定(bind)参数:if(this.MyInvocation.BoundParameters.ContainsKey("Verbose")){}

c# - 一种自动化MS Office VBA代码 "Compile"函数的方法

通常,当我对VBA文件进行更改时,我喜欢编译它以确保我的更改不会破坏任何内容:但是在不同版本的office在不同的机器上编译会得到不同的结果,有时会编译,有时不会...东西likethis可能发生,或者maybethis.结果在每个版本的excel中都有各种thingscanbedifferent(不只是引用,尽管这是最常见的问题)。如何自动编译我的VBA代码?我希望能够在Excel、PowerPoint和Word等多种产品中执行此操作,我希望能够编译为32位和64位,包括2010、2013、2016等......更新1是的,这仍然是一个主要的痛点,现在我有一系列手动测试人员(人员)根

c# - 如何在 Powershell 中模拟 Active Directory 用户?

我正在尝试通过Web界面(ASP.NET/C#)运行powershell命令,以便在Exchange2007上创建邮箱等。当我使用VisualStudio(Cassini)运行页面时,页面会正确加载.但是,当我在IIS(v5.1)上运行它时,出现错误“未知用户名或错误密码”。我注意到的最大问题是Powershell是作为ASPNET而不是我的ActiveDirectory帐户登录的。如何强制使用另一个ActiveDirectory帐户对我的Powershellsession进行身份验证?基本上,到目前为止我的脚本看起来是这样的:RunspaceConfigurationrc=Runsp

c# - 要关闭套接字,请不要 Close() 套接字。嗯?

我知道TIME_WAIT是TCP/IP不可或缺的一部分,但是关于每秒创建多个套接字并且服务器最终耗尽临时端口的SO(和其他地方)有很多问题。我发现,当使用TCPClient(或Socket)时,如果我调用Close()或Dispose()方法套接字的TCP状态更改为TIME_WAIT并在完全关闭之前遵守超时期限。但是,如果它只是将变量设置为null,套接字将在下一次GC运行时完全关闭,当然可以强制关闭,而无需经历TIME_WAIT状态。这对我来说意义不大,因为这是一个IDisposable对象,GC不应该也调用该对象的Dispose()方法?下面是一些演示这一点的PowerShell代

c# - EntityFramework 6.0 CreateDatabaseIfNotExists 代码先创建数据库

我做错了什么。当我最初使用powershell创建Code-First时,我有一个用户DbContext设置和工作,它一切正常。我在应用程序启动时按预期实现了数据库初始化程序。Database.SetInitializer(newCreateDatabaseIfNotExists());只是为了测试它是否真的创建了数据库,我实际上删除了数据库,现在我卡住了,数据库不会被创建。我正在使用SQLServer2012,不知道哪里出了问题。我得到的错误信息是System.InvalidOperationException:Migrationsisenabledforcontext'UserDb