⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 subject_28165.htm

📁 一些关于vc的问答
💻 HTM
字号:
<p>
序号:28165 发表者:jdf 发表日期:2003-01-18 16:07:03
<br>主题:关于在VC中调其他的应用程序请教?
<br>内容:比如从CEditView派生的View,在里面输入文本,现在想把输入的文本用别的编译器来编译,<BR>比如是A51,MASM,等可执行文件来编译,应该怎么做。用什么命令函数。<BR>而且怎样得到其编译后的输出文件。比如看是否编译通过,出错信息等。<BR>望高手指点一二。谢谢!
<br><a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p>
<hr size=1>
<blockquote><p>
回复者:songxinye 回复日期:2003-01-18 16:31:43
<br>内容:先存文本文件<BR>搞清别的编译器的命令行参数<BR><BR><BR>&nbsp;&nbsp;_spawnlp(_P_NOWAIT,"编译器的程序名"," ","命令行参数",NULL);<BR>在命令行中让编译器将结果存盘<BR>调入结果分析<BR>
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:upstream 回复日期:2003-01-18 16:41:28
<br>内容:我想首先要把在VIEW里的文本保存为一文件.<BR><BR>然后用其他语言的命令行编译和CreateProcess()试试.<BR><BR>STARTUPINFO si;<BR>memset(&amp;si, 0, sizeof(si));<BR>si.cb=sizeof(si);<BR>PROCESS_INFOMATION pi;<BR>HNADLE handle=CreateProcess("cl /c", "你的文件名", <BR>&nbsp;&nbsp;&nbsp;&nbsp; NULL, NULL, FALSE, CREATE_NO_WINDOW|NORMAL_PRIORITY_CLASS, NULL,<BR>&nbsp;&nbsp;&nbsp;&nbsp; NULL, &amp;si, &amp;pi);<BR>WaitForSingleObject(handle, INFINITE);&nbsp;&nbsp; //等待进程结束<BR>DWORD errorCode;<BR>GetExitCodeProcess(handle, &amp;errorCode);//得到cl执行返回码<BR>CloseHandle(handle);<BR><BR>cl是VC的编译连接命令,具体用法你参考一下msdn.<BR><BR>
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:菜鸟也支招儿 回复日期:2003-01-18 17:06:10
<br>内容:我只知道怎么去调用一个exe文件,用::ShellExecute(NULL,"open","文件所在路径,如(C:\\)记住要用双斜杠","参数 ",NULL,SW_SHOWNORMAL);这个函数。看看MSDN!
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:在水一方 回复日期:2003-01-18 17:17:04
<br>内容:&nbsp;&nbsp;请看http://www.vchelp.net/cndevforum/subject_view.asp?subject_id=23371&amp;forum_id=<BR>&nbsp;&nbsp;用匿名管道技术可达到这种效果,就是Windwos API<BR>&nbsp;&nbsp;&nbsp;&nbsp;BOOL CreatePipe(<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; PHANDLE hReadPipe,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // pointer to read handle<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; PHANDLE hWritePipe,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// pointer to write handle<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; LPSECURITY_ATTRIBUTES lpPipeAttributes,&nbsp;&nbsp;// pointer to security attributes<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; DWORD nSize&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// pipe size<BR>&nbsp;&nbsp;&nbsp;&nbsp;);<BR>&nbsp;&nbsp;再配合CreateProcess API可达到你说的那种效果:编译指定文本,并将编译后的结果反馈给用户。<BR><BR>2003-1-18 17:19:20

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -