我的C#应用程序如何检查特定的应用程序/进程(注意:当前进程)是否在32位或64位模式下运行?
例如,我可能想要按名称查询特定进程,即'abc.exe',或者根据进程ID号查询.
我可以使用多个输出路径吗?就像我构建我的项目时,exe应该生成两个不同的路径.如果是这样,我如何在Project Properties-> Build - > output path中指定?我尝试过使用,并且; 但这些都不起作用.
我可以将c#声明enum为bool:
enum Result : bool
{
pass = true,
fail = false
}
Run Code Online (Sandbox Code Playgroud) 我正在使用Coded UI和VSTO自动化Powerpoint场景.在我的powerpoint演示文稿中,我在一个形状上创建了一个"动作"设置来启动记事本.在幻灯片放映期间,我需要通过单击"文本/形状"来调用此操作,以便它将打开notepad.exe.任何人都可以帮助我如何实现这一目标.我写了以下代码.
//To launch Powepoint
PowerPoint.Application objPPT = new PowerPoint.Application();
objPPT.Visible = Office.MsoTriState.msoTrue;
//Add new presentation
PowerPoint.Presentations oPresSet = objPPT.Presentations;
PowerPoint.Presentation oPres = oPresSet.Add(Office.MsoTriState.msoTrue);
//Add a slide
PowerPoint.Slides oSlides = oPres.Slides;
PowerPoint.Slide oSlide = oSlides.Add(1, PowerPoint.PpSlideLayout.ppLayoutTitleOnly);
//Add text
PowerPoint.TextRange tr = oSlide.Shapes[1].TextFrame.TextRange;
tr.Text = "Launch notepad";
tr.Select();
//Add Action settings on the shape
oSlide.Shapes[1].ActionSettings[PowerPoint.PpMouseActivation.ppMouseClick].Action = PowerPoint.PpActionType.ppActionRunProgram;
oSlide.Shapes[1].ActionSettings[PowerPoint.PpMouseActivation.ppMouseClick].Run = "c:\\windows\\notepad.exe";
//start slideshow
objPPT.ActivePresentation.SlideShowSettings.Run();
Run Code Online (Sandbox Code Playgroud)
这将启动演示文稿的幻灯片显示,并将显示第一张幻灯片''在形状上定义动作设置'.现在我如何通过API自动启动notepad.exe?遗憾的是,编码的UI无法检测幻灯片中的对象.因此可能无法使用UI鼠标单击选项.
[编辑]能够取得一点进展.在幻灯片放映期间我有形状对象.这是上述代码的扩展.
PowerPoint.SlideShowWindow oSsWnd = objPPT.ActivePresentation.SlideShowWindow;
PowerPoint.Shape oShape = oSsWnd.View.Slide.Shapes[1];
Run Code Online (Sandbox Code Playgroud) 我如何知道我的Windows操作系统(Vista)上是否存在用户帐户?我需要来自未加入任何域的独立计算机的此信息.
我想知道用户是否属于某个群组,例如是否是"管理员"群组的用户"管理员"部分?
例如,我想查询节点应用程序和服务日志> Microsoft> Windows> groupPolicy> Operational下的事件,事件ID为5315,时间是当前时间.
我在父目录中有一个目录列表.这些目录将以00001,00002,00003等格式创建,以便具有较大尾随编号的目录是最近的目录.在上面的例子中,它是00003.我想以编程方式得到它.
谢谢你的帮助..
我在 Visual Studio 中遇到了这种不寻常的行为,突然间我的测试二进制文件 (mytestsolution.dll) 和在引用中添加的依赖二进制文件被复制到我的 Bin 文件夹中的 TestResults\\Out 文件夹中,并开始从那里?
这会导致我的测试失败,因为我的 GetExecutionAssembly() 给出了 Out 文件夹的路径,而不是存在一些依赖二进制文件的 Bin 文件夹?
任何人都可以帮助我如何阻止这种情况吗?
我有一个 API,它采用大小为 80x20 的图像(JPG、PNG 或 GIF)的 base64 字符串并将其存储在数据库中。为了测试这个 API,我必须生成一个随机的 base64 字符串,解码时可以将其转换为真实图像。
我在这里找到了似乎适用于 WPF 应用程序的示例。如何将其用于控制台应用程序?
我在不同的命名空间下有以下类。我的意思是,相同的 3 个类存在于不同的命名空间下。
public class A
{
public int a { get; set; }
}
public class B
{
public A objA { get; set; }
}
public class C
{
public List<B> listBinC { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
为了在这些类的对象之间利用/操作,我想到编写一个接口包装器,例如
public interface iA
{
int a { get; set; }
}
public interface iB<T> where T: iA
{
T objA { get; set; }
}
public interface iC<T> where T : iB<iA>
{
List<T> listBinC {get; set; }
}
Run Code Online (Sandbox Code Playgroud)
之后我将我的类定义更改为 …
我有两个清单:
List<ObjA> AList;
List<ObjB> BList;
Run Code Online (Sandbox Code Playgroud)
现在我有一个个人比较方法Obj A来Obj B:
void CompareObjAToObjB(ObjA a, ObjB b)
{
....
}
Run Code Online (Sandbox Code Playgroud)
它通过比较它来断言对象的各个元素.现在,我通过使用唯一标识符对两个列表进行排序,然后通过for循环迭代排序列表并调用该Compare方法.
有没有更好的方法来比较使用Lambda表达式或Linq的列表?
Edit
Run Code Online (Sandbox Code Playgroud)
好.这是我的原始代码..
Alist.sort((x,y) => string.Compare(x.acctNumber, y.acctNumber));
Blist.sort((x,y) => string.Compare(x.acctNumber, y.acctNumber));
for(int i =0; i< Alist.count; i++)
{
CompareObjAToObjB(Alist[i], Blist[i]);
}
Run Code Online (Sandbox Code Playgroud)
Alist包含我输入的repo对象,其中BList是通过Service API调用返回的Object.两者都包含相同的数据,但结构不同.