C#如何获取一个正在运行的EXE中的参数值

C#如何获取一个正在运行的EXE中的参数值,第1张

用这段代码 这个就是用wmi查询运行中的进程,最后把名字标题路径命令行参数塞到一个dataTable里面,然后你就在这个table里面找你要的进程就行了,每行是一个进程

# public static DataTable GetRunningProcesses()

# {

# //One way of constructing a query

# string wmiClass = "Win32_Process";

# string condition = "";

# string[] queryProperties = new string[] { "Name", "ProcessId", "Caption", "ExecutablePath", "CommandLine" };

# SelectQuery wmiQuery = new SelectQuery(wmiClass, condition, queryProperties);

# ManagementScope scope = new SystemManagementManagementScope(@"\\\root\CIMV2");

#

# ManagementObjectSearcher searcher = new ManagementObjectSearcher(scope, wmiQuery);

# ManagementObjectCollection runningProcesses = searcherGet();

#

# DataTable queryResults = new DataTable();

# queryResultsColumnsAdd("Name", TypeGetType("SystemString"));

# queryResultsColumnsAdd("ProcessId", TypeGetType("SystemInt32"));

# queryResultsColumnsAdd("Caption", TypeGetType("SystemString"));

# queryResultsColumnsAdd("Path", TypeGetType("SystemString"));

# queryResultsColumnsAdd("CommandLine", TypeGetType("SystemString"));

#

# foreach(ManagementObject obj in runningProcesses)

# {

# DataRow row = queryResultsNewRow();

# row["Name"] = obj["Name"]ToString();

# row["ProcessId"] = ConvertToInt32(obj["ProcessId"]);

# if (obj["Caption"]!= null)

# row["Caption"] = obj["Caption"]ToString();

# if (obj["ExecutablePath"]!= null)

# row["Path"] = obj["ExecutablePath"]ToString();

# if(obj["CommandLine"] != null)

# row["CommandLine"] = obj["CommandLine"]ToString();

# queryResultsRowsAdd( row );

# }

# return queryResults;

# }

可以采取两种方式处理:

1、修改导入Excel文件的方式,读取单元格内容时去掉空格

2、不修改导入方式,得到DataTable后遍历一下,去掉空格;

希望对你有帮助,还有疑问请追问或是Hi

1、由dataset生成

public void CreateExcel(DataSet ds,string typeid,string FileName)

{

>

首先数据库就是存储数据的仓库(字面理解),所以任何可以存储数据的文本文件都可以称为数据库——包括txt文档。

下面是将一个集合从datagridview中导出到excel中:

DataTable datatable = initDataTable();

for (int i = 0; i < ulListCount; i++)

{

DataRow datarow = datatableNewRow();

datarow[0] = ulList[i]Time;

datarow[9] = ulList[i]Remark;

。。。。。。。

datatableRowsAdd(datarow);

}

DataSet dataset = new DataSet();

datasetTablesAdd(datatable);

ExportDataGridViewToExcel(datatable);

//ExportDataGridViewToExcel方法

private void ExportDataGridViewToExcel(DataTable dataGridTable)

{

SaveFileDialog saveFileDialog = new SaveFileDialog();

saveFileDialogFilter = "Execl files (xls)|xls";

saveFileDialogTitle = "导出Excel文件到";

DateTime now = DateTimeNow;

saveFileDialogFileName = "日志-" + nowYearToString()PadLeft(2) + nowMonthToString()PadLeft(2, '0') + nowDayToString()PadLeft(2, '0') + "-" + nowHourToString()PadLeft(2, '0') + nowMinuteToString()PadLeft(2, '0') + nowSecondToString()PadLeft(2, '0');

saveFileDialogShowDialog();

Stream myStream;

myStream = saveFileDialogOpenFile();

StreamWriter sw = new StreamWriter(myStream, SystemTextEncodingGetEncoding("gb2312"));

string str = "";

try

{

//写标题

for (int i = 0; i < arycolumnnameLength; i++)

{

if (i > 0)

{

str += "\t";

}

str += arycolumnname[i];

}

swWriteLine(str);

//写内容

for (int j = 0; j < dataGridTableRowsCount; j++)

{

string tempStr = "";

for (int k = 0; k < dataGridTableColumnsCount; k++)

{

if (k > 0)

{

tempStr += "\t";

}

tempStr += dataGridTableRows[j][k]ToString();

}

swWriteLine(tempStr);

}

swClose();

myStreamClose();

MessageBoxShow("导出成功");

}

catch (Exception e)

{

MessageBoxShow(eToString());

}

finally

{

swClose();

myStreamClose();

}

}

//上面用到文件流将其保存程excel文件,还有其他的方式,可以网上收一下——一大堆。

以上就是关于C#如何获取一个正在运行的EXE中的参数值全部的内容,包括:C#如何获取一个正在运行的EXE中的参数值、excel表格标题前后有空格,c#读入到datatable中,如何去掉excel标题前后的空格呢、用C#把数据导出Excel有哪些方法,各有什么优缺点等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9295441.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-26
下一篇 2023-04-26

发表评论

登录后才能评论

评论列表(0条)

保存