问题标签 [createprocess]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
sql-server - NT 服务的 CreateProcess 挂起
我正在尝试从 NT 服务进程启动 SQLServer2008SP1 express 安装程序。进程已成功启动,我可以在任务管理器中看到它,但它什么也没做,只是保持不活动状态,直到我杀死他。
我正在使用以下命令开始该过程:
从 cmdline 手动启动时安装正常。
我尝试为进程使用各种 creat 标志,但没有运气。我的想法已经不多了,所以每一个帮助都会受到赞赏。
请注意,对于 SQL Server 2000 安装,相同的代码可以正常工作。而且我知道这是处理安装的一种奇怪方式,但要改变它为时已晚。
操作系统是 Windows Server 2003 SP2。
delphi - 如何在 Delphi Prism 中调用函数 CreateProcess?
我写
但是 VStudio 说“分号”是预期的 - 在外部和“kernel32.dll”之后的“预期结束”;你能帮我加载和调用一个函数吗?
winapi - 无法再启动 16 位应用程序
我正在尝试使用 C++ 编写的 Win32 宏应用程序来调试和解决一些问题,但是我遇到了最奇怪的问题。
我必须启动一个 16 位程序,然后模拟输入数据,并且使用 ShellExecute 已经两年多了。我根本没有接触过这个实际的代码,但现在它不起作用。
我在做ShellExecute(NULL, "open", exe_path.c_str(), NULL, "", SW_SHOWDEFAULT);
。这多年来一直完美无缺,但突然之间,它停止了工作。它给了我一个 ACCESS_DENIED 错误代码。我在 Google 上搜索过,显然这是启动 16 位应用程序时非常常见的问题。
工作站 XP SP2 环境根本没有改变,它实际上一直在工作,直到我不久前重建(我之前已经重建过很多次)。
代码位于窗口过程函数中,当我将其取出并在 WinMain 函数中启动程序时,它可以工作,但代码必须在窗口过程中......
我尝试了许多替代方案,但它们都给出了相同的问题。
最大的问题是它正在工作,然后突然决定它不会改变代码和环境!事实上,它认为它会停止工作的测试更改大约进行到一半。
请帮忙,因为没有程序启动我什么都做不了。这是我正在调试的代码的第一步!
winapi - 从 NPAPI 插件中启动外部应用程序
我试图弄清楚为什么我编写的 NPAPI 插件(它在执行通过 Javascipt 调用触发的操作方面工作良好)不能使用 CreateProcess() 或 ShellExecute() 从通过 Javascript 调用指定的路径启动应用程序。
我似乎可以使用这两种方法中的任何一种,它们都返回成功,即没有错误代码。但该应用程序只是不启动。我尝试修改调用它们时使用的参数,创建新的进程组等。但似乎没有效果。
我知道这可能看起来有点安全风险,但对于我们希望使用它的特定目的来说,这应该不是问题。
使用 Windows XP Pro SP3、Firefox 3.5 和以下代码:
x86 - WoW64 进程可以创建/fork/etc 纯 x64 进程吗?
我希望从 x86 进程/exe 调用 x64 exe,例如:
- 打开 x86 cmd:%windir%\SysWoW64\cmd.exe
- 启动记事本:notepad.exe <- 它将是 x86 记事本(根据 taskmanager = *)
是否可以从 x86 cmd 执行 x64 记事本?
我的问题是我正在执行的进程必须作为 x64 运行,我不希望它作为 x86 (WoW) 运行,因为它的行为不同......这就是它的编程方式,我无法更改它:-(我的exe是x86 ...
为了简化我的问题:WoW 进程可以创建/fork/etc 纯 x64 进程吗?
非常感谢
YB
windows - 如何创建一个不是其创建过程的子进程?
我有两个进程,A 和 B。在某个时候 A 创建 B。在创建 B 之后,如果 A 的进程树被杀死,我希望 B 仍然存在。
我正在使用 CreateProcess() 来创建 B,但我似乎找不到任何方法让它在没有它成为孩子的情况下创建进程。与 ShellExecuteEx() 相同,但我可能缺少一些标志。
有谁知道我可以用什么来做到这一点?
编辑:我忘了提到两个进程都需要另一个进程的句柄或进程 ID
c++ - 使用参数创建进程(CreateProcess 或 ShellExecuteEx)的小问题
相关问题:CreateProcess 不传递命令行参数。
使用 CreateProcess(和/或 ShellExecuteEx)时,传递参数与将参数传递给 EXE 之间有区别吗?
我试图调用类似的东西:
myExe.exe /myparam
使用如下代码:
根据我从其他线程和 MSDN 的了解,它应该可以正常工作并使用参数调用 EXE;在不添加“/myparam”的情况下执行上述代码可以正常工作。
我已经从命令行和资源管理器(通过创建快捷方式并将 /myparam 添加到目标名称)尝试了 EXE,它工作正常。
createprocess - 是否可以连接或调用现有流程?
在 Windows 中,我目前有两个程序如下工作。程序 A 使用一些参数调用程序 B,这导致程序 B 返回一些文本然后退出。程序 A 再次使用其他参数调用程序 B,这导致程序 B 做更多的事情。
当程序 B 启动时,它需要做一些耗时的加载。上述方法意味着程序 B 必须执行两次加载。是否可以只加载程序 B 一次?
例如,程序 A 用一些参数调用程序 B,这导致程序 B 返回一些文本,但程序继续运行。程序 A 再次调用相同的进程,这导致程序 B 做更多的事情。
以上是否可能,也许使用某种 Windows 消息传递?程序 A 是一个 Delphi 应用程序,使用 Windows 的 CreateProcess 方法。Program B 是一个 .NET 应用程序,它根据传入的参数执行各种操作。我知道我们可以通过将 Program B 安装为 Windows 服务来做到这一点,但如果可能的话,我想避免这种情况。
winapi - GetCommandLine() 中缺少进程名称
GetCommandLine()
我的API有问题。
它通常返回可执行文件名,后跟空格和参数。正如文档所说,第一个令牌可能没有图像的完整路径和等等等等。
直到现在我使用了 lpApplicationName 不为 NULL 的 CreateProcess 才遇到问题。
如果我使用:
GetCommandLine
按预期返回“c:\myexe.exe param1 param2”。
但如果我使用:
GetCommandLine
仅返回“param1 param2”。
如果另一个应用程序启动我的,我如何知道命令行上是否给出了可执行文件名称?
此外,MFC 启动代码假定命令行上的第一个标记是可执行文件名并跳过它。但是,如果您使用第二个 CreateProcess API 示例启动 MFC 应用程序,MFC 的代码将跳过第一个参数。
c# - 将 STARTF_USESTDHANDLES 标志与 CreateProcess() 一起使用时将套接字传递给子进程时出错
我正在尝试从 .Net 调用 FastCGI 应用程序 - 这意味着我需要将句柄传递给子进程的套接字。
但是我看到的是,如果我使用该STARTF_USESTDHANDLES
标志,CreateProcess()
则子应用程序在尝试从套接字读取时会失败。
我已经通过不指定来解决这个问题STARTF_USESTDHANDLES
,但我想了解为什么会发生这种情况。,特别是因为我对 MSDN 文档的理解是我应该在重定向标准输入时使用这个标志。
这是我的 C# 应用程序(错误检查等...为简洁起见已删除)
我的子进程是包含在Windows Azure VS2010 C# 代码示例中的示例 FastCGI 应用程序,失败的行是:
我对套接字和句柄编程都比较陌生,所以任何关于为什么会发生这种情况的见解都将不胜感激。