小编Ida*_*nis的帖子

重定向进程输出C#

我想将Process的标准输出重定向到一个字符串,以便以后解析.我还希望在进程运行时看到屏幕上的输出,而不仅仅是当它完成运行时.

这甚至可能吗?

c# process output-redirect redirectstandardoutput

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

在使用 sudo bash 运行的脚本中运行没有 sudo 的特定命令

我有一个bash正在运行的脚本sudosudo NewScript

在脚本中,我有一个git不想运行的命令sudo。目前,由于整个脚本是用sudo这个命令运行sudo的,所以我想抑制它。

这样的事情是可能的还是我需要在没有命令的情况下运行脚本sudosudo为除git命令之外的脚本中的每个命令添加?

git bash shell ubuntu sudo

9
推荐指数
2
解决办法
6881
查看次数

带有输入字段的FolderBrowserDialog

我不知道该怎么在这里谷歌为了解释什么,我想这样做,所以我会尽力在这里:我使用这两个OpenFileDialogFolderBrowserDialog我分别浏览文件和目录代码.

当对话框打开时,用户只能选择实际浏览文件/目录树.但是,在具有许多目录和子目录的树上,用户还希望手动隐式写入(或粘贴)希望去的完整路径.

如何在代码中实现它?

以下是使用对话框的两个函数:

使用FolderBrowserDialog:

    private void buttonAddDirectory_Click(object sender, EventArgs e)
    {
        this.folderBrowserDialog = new System.Windows.Forms.FolderBrowserDialog();
        folderBrowserDialog.SelectedPath = "C:\\";

        if (folderBrowserDialog.ShowDialog() == DialogResult.OK)
        {
            string selectedPath = folderBrowserDialog.SelectedPath;

            if (!searchForFiles(selectedPath))
            {
                MessageBox.Show("The directory: " + selectedPath + " doesn't contain sequences.", "Error!");
                return;
            }

            testForm.enableNumOfProcesses();
            createNewCommand(runBatchScript, selectedPath, true);
        }
    }
Run Code Online (Sandbox Code Playgroud)

使用OpenFileDialog:

    private void buttonAddFile_Click(object sender, EventArgs e)
    {
        this.openFileDialog = new System.Windows.Forms.OpenFileDialog();
        openFileDialog.InitialDirectory = "C:\\";
        openFileDialog.Filter = "PMD files (*" + sequenceExtenssion + ")|*" + sequenceExtenssion …
Run Code Online (Sandbox Code Playgroud)

c# forms openfiledialog folderbrowserdialog file-browser

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

如何从CLI调用gnuplot并将输出图保存到图像文件?

我正在编写一个批处理文件,它也会从dat文件中生成一个gnuplot图.

我希望使用我编写的gnuplot"gnu"脚本从命令行调用gnuplot,并将输出图保存到图像中.

就像是:

gnuplot.exe script.gnu > image.png
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?

gnuplot

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

将任何按下的键绑定到VM WPF中

我正在尝试将任何按下的键盘键绑定到命令中ViewModel.

我知道我可以绑定一个特定的密钥,使用:

<Window.InputBindings>
    <KeyBinding Command="{Binding ChangeIdCommand}" Key="B"/>
</Window.InputBindings>
Run Code Online (Sandbox Code Playgroud)

我可以绑定所有按键,ChangeIdCommand而无需手动输入所有按键吗?

c# wpf command key-bindings mvvm

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

如何禁用打开文件 - 安全警告

我有一个奇怪的问题.我编写了一个winform服务器应用程序和一个winform客户端应用程序.客户端的作用是将用于运行某个脚本的命令发送到服务器.服务器接收这些命令,解析它们并运行它们.

这两个工作很棒.

我编写了一个cmd应用程序,它使用了我客户端的一些功能.该应用程序应该用作cmd客户端.

问题是:当我运行winform客户端时,服务器运行命令完全没有问题.当我运行cmd客户端时,当服务器尝试执行收到的命令时,服务器端的Windows会弹出是否可以运行脚本的安全问题(参见附图).

为什么会在cmd上发生,而不是在winforms上发生.

这是我的代码:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Microsoft.Win32;
using System.Net.Sockets;
using System.ComponentModel;
using System.IO;
using System.Management;

namespace RemoteBatcher
{
    class ClientCmdProgram
    {
        private static RegistryKey registryKey;
        private static Socket clientSock;
        private static string remoteIpAddress = "192.168.0.1";
        private static int remotePort = 8;
        private static string userName = "";
        private static string targetPath = "Z:\\nBatcher\\";
        private static List<string> listOfCommands = new List<string>();

        static void Main(string[] args)
        {
            var backgroundWorker = new BackgroundWorker();
            userName …
Run Code Online (Sandbox Code Playgroud)

c# client-server process console-application winforms

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

检查是否选择了ComboBox值

我正在写一个包含一些按钮和一个组合框的表单.默认情况下禁用"确定"按钮,我希望仅在选择实际值(不是组合框的名称)后启用它.

我知道如何访问所选值,以及如何检查是否已选择值 - 但这两个只能在表单关闭后使用(使用"x"或使用"ok"按钮 - 已禁用) .

有任何想法吗?

谢谢.

c# forms combobox winforms

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

查找多个扩展批处理的文件

我正在尝试在特定目录下搜索多个文件.我知道如果我想搜索下的所有.exe文件C:\Test,我会执行以下操作:

set FoundFiles=dir /b /s C:\Test\*.exe
Run Code Online (Sandbox Code Playgroud)

但是,我希望搜索所有文件.exe.txt文件C:\Test?有可能以同样的方式吗?我尝试了以下方法:

dir /b /s C:\Test\*.exe *.txt
Run Code Online (Sandbox Code Playgroud)

它在cmd中工作,但是,当我这样做时:

set FoundFiles=dir /b /s C:\Test\*.exe *.txt
Run Code Online (Sandbox Code Playgroud)

它不起作用.

它甚至可能吗?

batch-file dir

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

迭代继承的类c ++列表

我有两个继承自第三个类的类,它们存储在一个列表中.

我正在尝试迭代该列表并调用每个类的实现函数,但是,代码不能编译.

这是我的代码:

class A
{   
   public:

   virtual void foo ()=0;
};

class B :public class A
{
   public:

   void foo();
}

class C :public class A
{
   public:

   void foo();
}

std::list<A*> listOfClasses;

listOfClasses.push_back (new B());
listOfClasses.push_back (new C());

for(std::list<A*>::iterator listIter = listOfClasses.begin(); listIter != listOfClasses.end(); listIter++)
{
    listIter->foo()
}
Run Code Online (Sandbox Code Playgroud)

此代码无法编译,我收到以下错误消息(for the line listIter->foo()):

'foo' : is not a member of 'std::_List_iterator<_Mylist>'

有什么想法吗?

c++ inheritance iterator stdlist

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

在迭代对象列表时避免多个"if"语句c#

我有各种类生成excel图.

每个类生成一个不同的图.

它们都共享相同的私有变量,具有不同的值.

我希望编写一个通用代码,以防止"if"语句确定它是哪个图形.

以下是其中一个类的示例:

using System;

namespace GraphsGenerator
{
   public class GraphOne
   {
       #region Private Members

       private string m_baseDir = "";
       private static string m_graphName = "GraphOne";
       private string m_imageFile = m_graphName + Utils.ImageExtension;

       #endregion Private Members

       #region Properties

       public string BaseDir
       {
           set { m_baseDir = value; }
       }
       public string GraphName
       {
           get { return m_graphName; }
       }
       public string ImageFile
       {
           get { return m_imageFile; }
           set { m_imageFile = value; }
       }

       #endregion Properties

       #region …
Run Code Online (Sandbox Code Playgroud)

c# oop types casting object

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