小编fle*_*xow的帖子

c# 如何从字符串导入powershell模块

我正在使用 c#,我想使用 import-module 导入 powershell 脚本。但是我不想在磁盘上有 .psm1 文件。我想将它硬编码在我的代码中,就像在字符串中一样,然后导入它。

那可能吗?

我能找到的所有例子都是这样的:

pipeline.Commands.Add("Import-Module");
var command = pipeline.Commands[0];
command.Parameters.Add("Name", @"G:\PowerShell\PowerDbg.psm1")
Run Code Online (Sandbox Code Playgroud)

或类似的东西:

var ps = PowerShell.Create(myRS);
ps.Commands.AddCommand("Import-Module").AddArgument(@"g:\...\PowerDbg.psm1")
ps.Invoke()
Run Code Online (Sandbox Code Playgroud)

然而,正如我上面所说,我不想从磁盘读取文件。我希望它被硬编码以避免多个文件。我想要 exe 上的所有内容,仅此而已。我找不到方法,非常感谢任何帮助。

我想使用 import-module 的原因是因为导入模块后我想做类似的事情:

get-command -module <whatever>
Run Code Online (Sandbox Code Playgroud)

并获取其所有功能的列表。列出脚本中的函数的任何其他方法也可能会有所帮助。

谢谢。

c# powershell

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

Windows malloc问题?

在Windows(Visual Studio C++ 2010)中,我正在尝试进行简单的字符串复制.这是我的代码:

char * filename;
(...)
filename = (char *) malloc(wcslen(argv[(i + 1)]) + 1);
wcscpy((wchar_t *)filename, argv[i + 1]);
wprintf(L"Filename is: %s", filename);
Run Code Online (Sandbox Code Playgroud)

如果我的argv [i + 1]大于14,程序会崩溃.如果它是14或更低,它运行正常.见下文.

C:\Visual Studio 2010\Projects\test\Release>test.exe -f 12345678901234 aa asas asas
First Argument  argv[1]   -f
Argc = 6
Filename is: 12345678901234
Run Code Online (Sandbox Code Playgroud)

这里有什么问题?我错过了什么?谢谢.

c++ malloc

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

标签 统计

c# ×1

c++ ×1

malloc ×1

powershell ×1