小编Mic*_*ens的帖子

为什么PowerShell ISE会挂起这个C#程序?

如果我将这个c#代码编译成EXE文件并在Windows命令shell中运行它运行正常:输出提示,在同一行等待一些用户输入,然后输入,回显该输入.在PowerShell v3 shell中运行它也运行良好.但是,如果我在PowerShell ISE V3中运行相同的EXE文件,它永远不会从中发出输出Write并挂起ReadLine.(顺便说一下,Write如果后来跟着a ,它会发出输出WriteLine.)

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            System.Console.Write("invisible prompt: ");
            var s = System.Console.ReadLine();
            System.Console.WriteLine("echo " + s);
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

这是一个ISE错误还是有一些属性可以调整以使其工作......?

c# powershell hang powershell-ise

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

错误TF31004将VS2012连接到TFS

我正在尝试使用VS2012建立与TFS的新连接.早期我能够添加我的TFS服务器,并使用Microsoft Git Provider从Visual Studio中克隆远程存储库的副本.后来,当我在团队资源管理器中摆弄试图找到我想要使用的分支的东西时,有些东西坏了.我的本地存储库仍然存在,但我与远程存储库的连接在某种程度上已损坏,如此错误所示:

TF31004:在http://my.server.com:8080/tfs连接到Team Foundation Server时遇到意外错误.等几分钟再试一次.如果问题仍然存在,请与服务器管理员联系ok help

我试图解决这个问题:

  • 等待并再试一次(如建议的错误消息).
  • 重新启动Visual Studio.
  • 重新启动我的机器.
  • 重新启动TFS服务器.
  • 在安装msysgit和Microsoft Git Provider之前使用系统还原还原,或尝试连接到TFS服务器.
  • 查看MSDN帮助以获取错误(请参阅下文).
  • 搜索堆栈溢出(找到一个其他相关问题,但似乎不适用).
  • 试过devenv/ResetSkipPkgs
  • 试过devenv/setup
  • 重新安装VS2012的团队资源管理器.
  • 清除IE cookie(根据这篇文章).
  • 清除TFS缓存(根据此帖子).

帮助页面提供了这些花絮,但是正如我所说的那样,只有一点点连接工作,它们似乎都没有.

  • 在本地计算机上运行的Team Foundation版本与Team Foundation Server服务器{name}上运行的版本不匹配.
  • 服务器返回HTML内容而不是XML内容.
  • 找不到服务器上所需的Web服务.

任何想法,将不胜感激!

tfs visual-studio-2012

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

在 PowerShell 中查看嵌套的私有函数定义

PowerShell 提供了一种简单的技术来查看函数的内容,例如

Get-Content function:MyFuncName   # (A)
Run Code Online (Sandbox Code Playgroud)

或等效地

(Get-ChildItem function:MyFuncName).definition    # (B)
Run Code Online (Sandbox Code Playgroud)

其中MyFuncName是我的函数的名称。这对于简单的函数(即只使用基本语言结构而不调用其他函数的函数)来说非常有用。但是考虑foo下面显示的包含对函数的调用的函数bar。在典型情况下,它们都包含在同一模块中,其公共 API 仅由函数组成foo,因此它是唯一导出的函数。

function foo ()
{
    $p = bar "here"
    "result is '$p'"
}
function bar ([string] $s)
{
    $s + $s
}
Export-ModuleMember foo
Run Code Online (Sandbox Code Playgroud)

有没有办法以bar与上述 (A) 或 (B) 相当的方式查看另一个函数中的嵌套、非导出函数(如 function )?(也就是说,无需在编辑器中打开 .psm1 文件:-)

reflection powershell module function

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

是什么让Winform的位置最初陈旧?

下面的代码演示了一个非常简单的问题; 我希望我只是错过了某人可能能够揭示的环境.

目标

(1)启动主winform(MainForm).
(2)按下按钮显示半透明的二级winform(ShadowForm),并且应该完全覆盖MainForm.

实际发生了什么

场景1:启动主winform,然后按下按钮:ShadowForm显示正确的大小但不正确的位置,向下和向右(就像它是级联的).按按钮再次关闭ShadowForm.再按一次按钮重新打开ShadowForm,现在它处于正确位置,覆盖MainForm.

场景2:启动主winform,移动它,然后按下按钮:ShadowForm显示正确的大小但位置不正确(MainForm在移动之前的位置).按按钮关闭; 再次按下重新打开,现在ShadowForm处于正确的位置.

using System;
using System.Windows.Forms;

namespace LocationTest
{
    static class Program
    {
        static void Main()
        {
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);
            Application.Run(new MainForm());
        }
    }

    public class MainForm : Form
    {
        ShadowForm shadowForm = new ShadowForm();
        Button button1 = new Button();
        System.ComponentModel.IContainer components = null;

        public MainForm()
        {
            this.SuspendLayout();
            this.button1.Location = new System.Drawing.Point(102, 44);
            this.button1.Size = new System.Drawing.Size(75, 23);
            this.button1.Text = "button1";
            this.button1.Click += new System.EventHandler(this.button1_Click);
            this.ClientSize = new System.Drawing.Size(292, 266);
            this.Controls.Add(this.button1);
            this.ResumeLayout(false); …
Run Code Online (Sandbox Code Playgroud)

c# transparency overlay winforms

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

在PowerShell中对齐Select-String的输出

当我使用时,select-string我几乎总是希望我的输出对齐,即文件名,行号和找到的文本都应该对齐到列中.从视觉上看,它更不容忽视,通常可以更容易地发现差异.作为一个简单的例子,我在中间文件中注入了一个额外的空间:

PS> Get-ChildItem *.cs | Select-StringAligned -pattern override
---
FileWithQuiteALengthyName.cs  : 34:    protected override void Foo()
ShortName.cs                  : 46:    protected override void  Bar()
MediumNameFileHere.cs         :123:    protected override void Baz()
---
Run Code Online (Sandbox Code Playgroud)

不幸的是,Select-String不这样做; 实际上它给出了这个 - 你能发现这里的额外空间吗?

PS> Get-ChildItem *.cs | Select-String -pattern override
---
FileWithQuiteALengthyName.cs:34:    protected override void Foo()
ShortName.cs:46:    protected override void  Bar()
MediumNameFileHere.cs:123:    protected override void Baz()
---
Run Code Online (Sandbox Code Playgroud)

有没有办法强制Select-String对齐其输出列?

编辑:哎呀!我忘记了一个重要部分:-Context如果可能的话,我还想包含参数,这样可以在匹配前后获得任意数量的行.

powershell

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

使用WPF的Visual Studio属性窗格的怪癖

WinForm项目的可视化设计器中工作时,当选择一个元素时,属性窗格会列出该元素的所有属性.在属性窗格中选择属性,然后在属性列表正下方的属性描述框中显示该属性的描述(已分配的DescriptionAttribute的值).即使没有打开可视化设计器,也可以选择另一个项目(例如解决方案资源管理器中的条目)以在属性窗格中显示其属性,并且属性描述框仍然是活动且可见的.

另一方面,在WPF项目的可视化设计中,不会出现属性描述框(对于VS2008和VS2010都是如此).有没有办法揭露它?当然它必须可用,或者这是一个缺陷?

我在VS文档中找到的唯一页面是IDE的快速浏览,它说明并描述了可视化设计器的每个部分 - 属性窗格除外!


2010.02.11更新

因为,根据Will Eddins的回答,没有办法做到这一点(并且刚刚发布的VS2010候选版本的情况没有改变)我已经提交了针对VS2010 的缺陷报告.

wpf properties visualdesigner visual-studio

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

在 PowerShell 中为我的 PowerShell 模块编写帮助疑难解答

我有各种各样的 PowerShell 模块是用 PowerShell(而不是 C#)编写的,我在代码中包含了文档注释,以便用户从 Get-Help 获得完整的 API 描述。

当我正在编写一个新模块时,帮助文本似乎在某个时间点卡住了;我对该文件中的帮助文本所做的任何后续更新都没有在我保存文件、重新导入模块,甚至重新启动 PowerShell 然后重新导入模块后,我对该文件中显示出来。

接下来我创建了一个测试模块,看看我是否可以复制这个问题。我设置了 psm1 和 psd1 文件,导入了模块,然后运行了 get-help,从 psm1 文件中看到了帮助。然后我在 psm1 文件中添加了一行文本,保存它,重新导入它......新行出现在 get-help 中!

我依稀记得前段时间读到你必须在 psd1 文件中修改版本才能识别新的帮助,但我的测试用例显示不一定需要(而且我真的不想修改版本)。

我还依稀记得读到导入的模块缓存在某处,可以删除缓存的文件以使其识别新文本——但我不记得在哪里可以找到这些。

所以我的目标是能够在不增加模块版本的情况下,在我的真实模块中看到保存在 psm1 文件中的修改后的帮助文本。想法?

powershell caching module

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