小编SSS*_*SSS的帖子

删除所有文件和文件夹但排除目录

我有一个需要删除所有文件和文件夹的文件,除了一小部分文件和文件夹.

我已经可以排除文件列表,但是没有找到排除文件夹的方法.

这是文件夹结构:

|-C:\temp
 \-C:\temp\somefile.txt
 \-C:\temp\someotherfile.txt
| |-C:\temp\foldertodelete
   \-C:\temp\foldertodelete\file1.txt
| |-C:\temp\foldertokeep
|  \-C:\temp\foldertokeep\file2.txt
Run Code Online (Sandbox Code Playgroud)

我想保留somefile.txt和文件夹foldertokeep及其内容.

这就是我现在所拥有的:

Get-ChildItem -Path  'C:\temp' -Recurse -exclude somefile.txt | Remove-Item -force -recurse
Run Code Online (Sandbox Code Playgroud)

这真的不删除somefile.txt.有没有办法从删除列表中排除文件夹foldertokeep及其内容?

powershell

44
推荐指数
6
解决办法
7万
查看次数

什么是真正的黑白色矩阵?

我想将图像从颜色转换为黑白(即没有灰度,只有黑白).有没有人有一个很好的色彩矩阵来实现这一目标?

c# vb.net image image-processing colormatrix

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

C#客户端如何调用wsdl文件

我的客户给了我一个.wsdl文件来访问他们的web服务.使用VS2008我可以创建一个项目,但我不知道如何在其中使用.wsdl文件.

.net c# wsdl visual-studio-2008

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

按类名调用Windows窗体

我实际上正在研究和研究VB.NET.我的学校正在使用VS2010,我专业使用VS2012.当我必须Mdicontainer在VS2010中调用一个Windows窗体时,我只使用它的类名,例如:

FormX.MdiParent = Me

FormX.Show()
Run Code Online (Sandbox Code Playgroud)

但是当我使用VS2012时,似乎我必须创建一个我的实例mdichild,就像这样:

Dim form As New FormX()

form.MdiParent = Me

form.Show()
Run Code Online (Sandbox Code Playgroud)

我的问题是:只是我做错了或VS改变了我们使用WinForms的方式?

vb.net mdi instance visual-studio winforms

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

如何调试C#托管/非托管编组异常?

我正在C#上编写DirectShow过滤器,但我不想使用任何第三方库。基于正确的COM接口原型(例如IGraphBuilder,IBaseFilter,IPin等),此任务几乎是100%。如果接口的原型不正确,则会在托管/本机边界引发各种异常。问题在于确定错误原型接口方法的位置。

当前,我有:DirectShow.dll中发生了'System.NullReferenceException'类型的异常(这是我的托管dll的名称),并且在托管/本地边界之前未进行处理

调用堆栈:

ntdll.dll!NtWaitForSingleObject()+ 0xa字节
KernelBase.dll!WaitForSingleObjectEx()+ 0x9c字节
clr.dll!CLREvent :: WaitEx()+ 0x20f字节
clr.dll!CLREvent :: WaitEx()+ 0x1b8字节
clr.dll CLREvent :: WaitEx()+ 0x73字节
clr.dll!Thread :: WaitSuspendEventsHelper()+ 0xcf字节clr.dll!Thread :: WaitSuspendEvents()+ 0x10字节
clr.dll!string“ d:\ iso_whid \ amd64fre \ base \ ntos \ r“ ...()+ 0x35688d字节
clr.dll!Thread :: RareDisablePreemptiveGC()+ 0x118字节
clr.dll!GCHolderEEInterface <0,0,0> :: ~~ GCHolderEEInterface <0,0,0>() + 0x19字节clr.dll!Debugger :: SendCatchHandlerFound()+ 0x150字节
clr.dll!string“ d:\ iso_whid \ amd64fre \ base \ ntos \ r” ...()+ 0x3b9340字节
clr.dll!NotifyOfCHFFilterWrapper()+ 0x77字节
clr.dll!string“ d:\ iso_whid \ amd64fre \ base \ ntos \ …

c# com debugging interop marshalling

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

WinForms 深层嵌套控件调整内核大小错误 - 拆分面板无法正确缩放控件

(对nested 的初步猜测被证明是不正确的。问题似乎是SplitContainer 面板没有正确缩放其托管控件。)


我有一些表单的选项卡控件在加载时无法正确调整大小。 https://support.microsoft.com/en-us/kb/953934在 2008 年描述了这样一个内核错误。很难相信它没有得到修复。我认为它消失了一段时间,但我又开始看到问题了。

控件嵌套得很深。Midi 父、子窗体、选项卡控件、带有两个面板和控件的拆分器控件。对于自上而下的第一个有问题的控件是选项卡控件。当加载后调整窗体大小但锚点不正确并且部分控件被剪切时,它会调整大小。

该问题似乎特定于 100% 桌面字体大小 - 100+ 大小的桌面工作正常。我使用 VS 2013 v5 以 125% 的速度开发 - 这个问题也出现在 v4 上。

任何人都知道缺少知识库文章中概述的自定义控件的解决方法吗?

我错过了其他事情?


仔细观察 SplitContainer 是不调整锚点大小/尊重锚点的控件。


我尝试在显示选项卡后运行此代码但它不起作用 - 看起来与使用锚点大致相同。似乎 TabControl 报告的 ClientSize 不正确

    SplitContainer1.Width = TabControl1.ClientSize.Width - 10
    SplitContainer1.Height = TabControl1.ClientSize.Height - TabControl1.ItemSize.Height - 10
Run Code Online (Sandbox Code Playgroud)

这是显示问题的完整表格。在 125% 桌面上,它显示为在 100% 桌面上的 IDE 中,选项卡上的控件未正确定位。

<Global.Microsoft.VisualBasic.CompilerServices.DesignerGenerated()> _
Partial Class frmChild
Inherits System.Windows.Forms.Form

'Form overrides dispose to clean up the component list.
<System.Diagnostics.DebuggerNonUserCode()> _
Protected Overrides Sub Dispose(ByVal disposing …
Run Code Online (Sandbox Code Playgroud)

vb.net winforms windows-kernel

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

使用消息框确认程序关闭

我有一个消息框,当我按下一个关闭按钮时会弹出一个消息框,上面写着“您确定要退出吗”但是当我单击“否”按钮或取消但程序以任何方式关闭时

这是我的代码:

'Close Button
Private Sub BtnClose_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnClose.Click

    Dim result = MessageBox.Show(" Are you sure you want to quit", "Are you sure?", MessageBoxButtons.YesNoCancel)
    Me.Close()

End Sub
Run Code Online (Sandbox Code Playgroud)

vb.net

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

如何使用process.start将命令行参数传递给.exe文件(例如静默模式)

我在这个应用程序中有一个vb.net Windows应用程序,我想在静默模式下运行另一个exe文件,为此我首先在命令行中运行此exe文件它正在工作.但我不知道如何通过这些参数通过vb.coding process.start.

通过命令行我有这样的传递. D:\ myapps> sample.exe/s/v/qn (正常工作)

但通过编码,我已经通过这样的传递

 Directory.SetCurrentDirectory(Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location))
        Dim info As New System.Diagnostics.ProcessStartInfo
        info.FileName = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location) + "\sample.exe"
        info.Arguments = "/s /v/qn"
        Dim process As New System.Diagnostics.Process
        process.StartInfo = info
        process.Start()
        MessageBox.Show(info.Arguments.ToString())
        process.Close()
Run Code Online (Sandbox Code Playgroud)

这不行,这段代码有什么问题请帮帮我..

vb.net processstartinfo commandargument

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