英创ARM9系列板卡应用程序的自己加载方法是在运行模式下采用由系统读取由用户编写的文本文件userinfo.txt,进而启动用户应用程序,这种方法在相关的“使用必读”文档中均有介绍。在userinfo.txt文件中只能填入一个应用程序的参数,也就是说只能启动一个应用程序。对于需要同时启动两个或多个应用程序的情况,该如何来实现呢?在本文中将介绍一种自动启动多个应用程序的方法。
采取的方法就是通过创建一个专用程序实现同时启动多个应用进程,而在userinfo.txt文件中编辑执行该专用程序,从而达到自动启动多个应用程序的目的。下面举例说明:
StarMain.exe为启动两个进程的专用程序,代码如下:
int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPTSTR lpCmdLine, int nCmdShow )
{
BOOL b;
PROCESS_INFORMATION procInfo;
// 创建APP1.exe 进程
b = CreateProcess
(
_T(‘\\NandFlash\\App1.exe’), // LPCWSTR lpszImageName
lpCmdLine, // LPCWSTR lpszCmdLine
NULL, // LPSECURITY_ATTRIBUTES lpsaProcess
NULL, // LPSECURITY_ATTRIBUTES lpsaThread
FALSE, // BOOL fInheritHandles
0, // DWORD fdwCreate
NULL, // LPVOID lpvEnvironment
NULL, // LPWSTR lpszCurDir
NULL, // LPSTARTUPINFOW lpsiStartInfo
&procInfo // LPPROCESS_INFORMATION lppiProcInfo
);
CloseHandle(procInfo.hProcess);
CloseHandle(procInfo.hThread);
// 创建APP2.exe 进程
b = CreateProcess
(
_T(‘\\NandFlash\\App2.exe’), // LPCWSTR lpszImageName
NULL, // LPCWSTR lpszCmdLine
NULL, // LPSECURITY_ATTRIBUTES lpsaProcess
NULL, // LPSECURITY_ATTRIBUTES lpsaThread
FALSE, // BOOL fInheritHandles
0, // DWORD fdwCreate
NULL, // LPVOID lpvEnvironment
NULL, // LPWSTR lpszCurDir
NULL, // LPSTARTUPINFOW lpsiStartInfo
&procInfo // LPPROCESS_INFORMATION lppiProcInfo
);
CloseHandle(procInfo.hProcess);
CloseHandle(procInfo.hThread);
return 0;
}
-
嵌入式主板
+关注
关注
7文章
6107浏览量
36949
发布评论请先 登录
英创信息技术X86工控主板DOS应用程序的动态加载介绍
英创信息技术ARM9工控主板WinCE应用程序远程控制应用
英创信息技术WinCE远程桌面介绍
英创信息技术WinCE应用程序启动触摸屏较准功能
英创信息技术主板WinCE应用程序的FTP远程更新介绍
英创信息技术WinCE应用程序在英创主板上的可靠启动
英创信息技术WinCE主板与STM32多功能模块通讯介绍
英创信息技术WinCE6系统CEDB故障分析介绍

英创信息技术WinCE下自动启动多个应用程序介绍
评论