小编E23*_*235的帖子

如何获取具有系统托盘图标的进程

我正在尝试创建获取具有systray图标的进程列表的应用程序。
我搜索了很多,发现了一些参考文献:

  1. http://www.raymond.cc/blog/find-out-what-program-are-running-at-windows-system-tray/

  2. https://superuser.com/questions/708674/how-to-find-out-what-process-a-system-tray-icon-corresponds-to

  3. 哪个Windows进程正在显示给定的任务栏系统任务栏图标?

  4. https://social.msdn.microsoft.com/Forums/vstudio/zh-CN/53e27f60-37af-406f-bbdc-45db2bd3dee6/how-to-find-a-system-tray-process

  5. https://social.msdn.microsoft.com/Forums/vstudio/zh-CN/4c4f60ce-3573-433d-994e-9c17f95187f0/finding-which-applications-and-services-are-list-in-the-system-托盘?论坛=一般

  6. http://www.codeproject.com/Articles/10497/A-tool-to-order-the-window-buttons-in-your-taskbar

  7. 从系统任务栏中的图标获取工具提示文本

它们都是很好的资源,但对我来说最有用的是3和4。

1中,有一个我想要的例子。

我想要具有systray图标的进程列表:
在此处输入图片说明 名为“ AnVir任务管理器”的应用程序示例

使用链接6中的代码,我成功遍历了系统托盘按钮并看到每个按钮的文本:
在此处输入图片说明

但是我不确定如何找到与每个纸盘图标相关的过程。

他在代码项目中提到可以帮助识别过程的信息是,dwData但是问题是当我发现Systray中出现的按钮时,它的dwData = 0
在此处输入图片说明

码:

Form1.cs

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace SystrayIcons
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            Engine.findProcessInSystray();
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            Engine.findProcessInSystray();
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

Engine.cs

using System;
using System.Collections.Generic;
using …
Run Code Online (Sandbox Code Playgroud)

c# c++ winapi taskbar

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

如何使用 PodTemplate

我看到有一个名为PodTemplatewhich 的对象几乎没有文档

其中提到:

Pod 模板是 Pod 规范,包含在其他对象中,例如Replication ControllersJobsDaemonSets

但我不知道如何在Replication Controllers,Jobs或上提及它DaemonSets

我创建了一个PodTemplate这样的:

kubectl apply -f - <<EOF
apiVersion: v1
kind: PodTemplate
metadata:
  name: pod-test
  namespace: default
template:
  metadata:
    name: pod-template
  spec:
    containers:
    - name: container
      image: alpine
      command: ["/bin/sh"]
      args: ["-c", "sleep 100"]
EOF
Run Code Online (Sandbox Code Playgroud)

我想在a中使用它DaemonSet,我该怎么做?

以下是 YAML 的示例DaemonSet

kubectl apply -f - <<EOF
apiVersion: apps/v1
kind: DaemonSet
metadata:
  name: …
Run Code Online (Sandbox Code Playgroud)

kubernetes kubernetes-pod

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

无法创建策略:'没有匹配类型的“策略”'

我正在按照此处有关如何创建策略来审核 Kubernetes 中的操作的说明进行操作。

当我运行以下 YAML 文件时:

kubectl apply -f - <<EOF  
apiVersion: audit.k8s.io/v1 # This is required.
kind: Policy
# Don't generate audit events for all requests in RequestReceived stage.
omitStages:
  - "RequestReceived"
rules:
  # Log pod changes at RequestResponse level
  - level: RequestResponse
    resources:
    - group: ""
      # Resource "pods" doesn't match requests to any subresource of pods,
      # which is consistent with the RBAC policy.
      resources: ["pods"]
EOF
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

错误:无法识别“STDIN”:“audit.k8s.io/v1”版本中的“Policy”类型没有匹配项

我尝试将 to 更改apiVersionaudit.k8s.io/v1beta1 …

audit policy kubernetes

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

如何将 &lt;td&gt; 标签内的图像位置设置在左上角,而文本在左下角

我有两个 pawn,我想将它们设置在左上角,文本(单元格编号)在左下角。

这就是我所拥有的:
在此处输入图片说明

这就是我想要的
在此处输入图片说明

CSS :

td {
    width: 80px;
    height: 80px;
    text-align: left;
    vertical-align: bottom;
    border: 1px solid black;
}

.soldiers
{
    width:20px;
    height:20px;
}
Run Code Online (Sandbox Code Playgroud)

HTML :

<tr>
<td class="oddCellBorder" row="0" col="0">57
<img src="Resources/images/player_2.png" class="soldiers">
<img src="Resources/images/player_1.png" class="soldiers">
</td>
<td class="evenCellBorder" row="0" col="1">58</td>
<td class="oddCellBorder" row="0" col="2">59</td>
<td class="evenCellBorder" row="0" col="3">60</td>
<td class="oddCellBorder" row="0" col="4">61</td>
<td class="evenCellBorder" row="0" col="5">62</td>
<td class="oddCellBorder" row="0" col="6">63</td>
<td class="evenCellBorder" row="0" col="7">64</td>
</tr>
Run Code Online (Sandbox Code Playgroud)

html javascript css jquery

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

如何使用C#读取多行单元格的CSV文件

我正在尝试读取其中包含多行单元格的 CSV 文件。

这是 CSV 的样子:
在此处输入图片说明

第 1 行,“详细信息”列有多行。

当我尝试使用ReadLine()方法阅读它时:

private void buttonBrowse_Click(object sender, EventArgs e)
        {
            openFileDialog.Filter = "Excel Worksheets|*.csv";
            if (openFileDialog.ShowDialog() == DialogResult.OK)
            {
                String filePathAndName = openFileDialog.FileName;
                StreamReader reader = new StreamReader(filePathAndName);
                String line = reader.ReadLine();
                Console.WriteLine(line);
                do
                {
                     line = reader.ReadLine();
                     Console.WriteLine(line);
                } while (line != null);
            }
        }
Run Code Online (Sandbox Code Playgroud)

它将具有多行的单元格拆分为行数:

[1]"Time of Day","Process Name","PID","Operation","Path","Result","Detail","Image Path"
[2]"22:52:24.2905182","notepad.exe","4828","Process Start","","SUCCESS","Parent PID: 2484, Command line: ""C:\Windows\system32\notepad.exe"" , Current directory: C:\Users\User\, Environment: 
[3];    =::=::\
[4];    ALLUSERSPROFILE=C:\ProgramData
[5];    APPDATA=C:\Users\User\AppData\Roaming
[6]; …
Run Code Online (Sandbox Code Playgroud)

c# csv

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

kubectl --token=$TOKEN 未使用令牌的权限运行

kubectl当我使用带有标志的命令--token并指定令牌时,它仍然使用文件中的管理员凭据kubeconfig

这就是我所做的:

NAMESPACE="default"
SERVICE_ACCOUNT_NAME="sa1"
kubectl create sa $SERVICE_ACCOUNT_NAME
kubectl create clusterrolebinding list-pod-clusterrolebinding \
     --clusterrole=list-pod-clusterrole \
     --serviceaccount="$NAMESPACE":"$SERVICE_ACCOUNT_NAME"
kubectl create clusterrole list-pod-clusterrole \
     --verb=list \
     --resource=pods

TOKEN=`kubectl get secrets $(kubectl get sa $SERVICE_ACCOUNT_NAME -o json | jq -r '.secrets[].name') -o json | jq -r '.data.token' | base64 -d`

# Expected it will fail but it doesn't because it uses the admin credentials
kubectl get secrets --token $TOKEN

Run Code Online (Sandbox Code Playgroud)

该令牌有权列出 pod,因此我预计kubectl get secrets --token $TOKEN会失败,但事实并非如此,因为它仍然使用管理员的上下文。

我不创建新的上下文,我知道kubectl …

bearer-token kubernetes kubectl

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

当文件位于文件夹内时无法添加新的 cobra CLI 命令

我正在使用 cobra 来构建 CLI。
\n我想创建一个名为 的新命令,config该命令将位于该文件config.go和文件夹内的文件中proxy

\n\n

这是结构:

\n\n
MyProject\n\xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 cmd\n|  \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 proxy\n|  |    \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 config.go\n|  \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 root.go\n\xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 main.go  \n
Run Code Online (Sandbox Code Playgroud)\n\n

我用 cobra 创建了命令:

\n\n
cobra add config  \n
Run Code Online (Sandbox Code Playgroud)\n\n

它在下面创建了文件cmd,我将文件移动到该文件夹​​下proxy(如上面的结构所示​​)。

\n\n

问题是未添加该命令。
\n这是config.go代码:

\n\n
// config.go\npackage cmd\n\nimport (\n    "fmt"\n    "github.com/spf13/cobra"\n    "MyProject/cmd"\n)\n\nvar configCmd = &cobra.Command{\n    Use:   "config",\n    Short: "A brief description.",\n    Long: `A longer description.`,\n    Run: func(cmd *cobra.Command, args []string) {\n        fmt.Println("config called")\n    },\n}\n\nfunc init() {\n    cmd.RootCmd.AddCommand(configCmd)\n}\n
Run Code Online (Sandbox Code Playgroud)\n\n …

command go go-cobra

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

找不到 System.Net.Http.HttpClient 类

我正在尝试使用 PowerShell 创建 HTTP 客户端。在像这样这样的
地方,它表明我需要创建一个像这样的对象:

$client = [System.Net.Http.HttpClient]::new()
Run Code Online (Sandbox Code Playgroud)

但 PowerShell 在 后找不到任何类System.net.Http.
Microsoft中,它显示有一个名为 的类HttpClient,所以我不确定为什么我无法使用 PowerShell 看到它。

我正在使用 PowerShell 5.1.18362.1801。

powershell httpclient powershell-5.1

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

如何删除Docker Swarm中的所有服务

我想删除我在Swarm中创建的所有服务:
在此输入图像描述

要删除我使用的所有容器:

docker rm -f $(docker ps -a -q)
Run Code Online (Sandbox Code Playgroud)

有没有办法用一行删除所有服务

我没有堆栈:
在此输入图像描述
所以docker stack rm STACK_NAME不行.

docker docker-swarm

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

打印功能从类中打印两次字段

我正在使用该print函数从另一个python模块中打印一个类的字段,并打印该字段两次.

我有两个模块:

main.py:

from statics import RiskyCars

class Car:
    def __init__(self, name):
        self.name = name

# init
RiskyCars()
print(RiskyCars.risky_cars[0].name)
Run Code Online (Sandbox Code Playgroud)

statics.py:

class RiskyCars:

    @staticmethod
    def __init__():
        from main import Car
        RiskyCars.risky_cars = []
        RiskyCars.risky_cars.append(Car("car1"))
Run Code Online (Sandbox Code Playgroud)

当我运行main.py它打印两次:

C:\Python27\python.exe C:/Users/myuser/PycharmProjects/Project1/main.py
car1
car1
Run Code Online (Sandbox Code Playgroud)

但是如果我在print函数之前放置断点:

# main.py
# init
RiskyCars()     <--- break point
Run Code Online (Sandbox Code Playgroud)

然后从终端手动运行:

print(RiskyCars.risky_cars[0].name)
Run Code Online (Sandbox Code Playgroud)

它只打印一次.

为什么会这样?

python pycharm python-2.7

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