Windows 使用了控制台来实现模拟8086模式。除非你自己做个东西替换
解决方案 »
- 最近我研究 全文搜索引擎的心得(三) 跟大家说个笑话
- 用数据感知组件和不用数据感知组件的区别?
- 请问那里有比较好的数据显示控件下载?比如就像windows优化大师那样最前面还有个checkbox可以打勾的?
- 新来的做JSP的工资比我高,有没有天理啊!----各位牛人,delphi已经没落,你们都准备(或已经)转到什么方向?
- sql server2000 导出数据到excel时数据类型的控制问题!!!在线高分等!!!
- 很简单的问题,俺问了两边了!
- 怎样提取任意类型文件的图标?
- 错误处理!不知道怎么触发自己的错误!谢谢了!
- 有关data module,急!!!
- 键盘上的Scroll Lock键有什么用?它的扫描码是什么?
- 查询语句怎么写?
- Delphi的老问题,谁能解决?
http://www.csdn.net/Expert/topic/387/387245.shtm
用重定向符将DOS的输出输出到一个文件里再开它???
像dir > my.txt 或dir >> my.txt
再打开?????????????????????????
winexec('dir c:\ > my.txt',SW_HIDE) ,你用delphi打开my.txt进行显示就是了。
然后执行,最后再打开那个文件就可以了,具体代码,得等我回单位给你找找
作 者:lx_king
所属论坛:Visual Basic
问题点数:50
回复次数:6
发表时间:2001-11-25 9:33:04
我想编一个汇编编辑程序,利用shell执行 shell("masm aa.asm",normalfocus)
运行后,出现一ms-dos个窗口,上面让我输入obj的名字等等,而且如果编译错误的情况下,他也显示错误信息,我用什么方法,才能把 输入 obj的名字转到windows下,及编的程序,如何把他们错误信息扑捉到我的应用程序中的文本框上显示出来
谢谢
回复贴子:
回复人: gameboy999(我心迷茫) (2001-11-25 10:45:35) 得0分
我想只有重定向或者管道可以做到了
shell("masm aa.asm>>file",normalfocus)
或者
shell("masm aa.asm¦handle.exe",normalfocus)第一种方法可以用CreateProcess方式执行上面的shell函数,利用WaitForSingleObject函数检测masm编译结束后退出再读取file文件并解析第二种方法就得测试masm这个可执行文件对管道操作支持的程度如何 才能对其下笔
我并没有做过这些东西,这只是我的猜想,希望对你有用
回复人: chzy00(子逸) (2001-11-25 11:02:21) 得0分
可以用CreateProcess函数和 CreatePipe 结合起来,
创建两个管道可以双向通讯
回复人: lx_king(天剑) (2001-11-25 11:29:05) 得0分
to chzy00
能写详细点吗?
如何在windos下输入参数,写到dos中的
你的意思是可以互相通信吗,如何做呀
回复人: gameboy999(我心迷茫) (2001-11-25 12:39:36) 得0分
to chzy00:
人家是用别人的程序,
你能CreatePipe.. masm就不一定会
回复人: acptvb(微软全球技术中心 VB技术支持) (2001-11-25 15:05:29) 得0分
感谢您使用微软产品。您需要把 输入编译时输入obj的名字转到windows下,并且将错误信息捕捉到应用程序中的文本框上显示出来。您可以使用如下方法:1.重定向输出
使用Visual Basic的Shell函数,PROCESSID=Shell ("MY_APPLICATION " & APPLICATION_PRAR & "> TEMP_FILE", vbHide)
其中APPLICATION_PRAR为应用程序的命令行参数,如编译时输入的obj文件名。2.使用Win32API CreateProcess
Declare Function CreateProcess Lib "kernel32" _
Alias "CreateProcessA" ( _
ByVal lpApplicationName As String, _
ByVal lpCommandLine As String, _
lpProcessAttributes As Any, _
lpThreadAttributes As Any, _
ByVal bInheritHandles As Long, _
ByVal dwCreationFlags As Long, _
lpEnvironment As Any, _
ByVal lpCurrentDirectory As String, _
lpStartupInfo As STARTUPINFO, _
lpProcessInformation As PROCESS_INFORMATION _
) As Long
其中 lpApplicationName为应用程序文件名;lpCommandLine为命令行参数。结构类型PROCESS_INFORMATION和STARTUPINFO中存放应用程序运行时返回的信息。
3.建立与标准输出设备关联的文件(此方法只能提取向标准输出设备输出的信息,如屏幕)
Dim si As STARTUPINFO
Dim hFile As Long
hFile = CreateFile(
sTempFile, _
GENERIC_READ Or GENERIC_WRITE, _
0, _
ByVal 0&, _
CREATE_ALWAYS, _
0, _
ByVal 0&)
If hFile Then
si.hStdOutput = hFile
End If
这种方法将一个临时文件与屏幕设备关联,完成屏幕的重定向。等应用程序完成后,打开临时文件,便可获得屏幕信息。
更详细的信息,请查找MSDN相关的文章。
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/office97/html/output/F1/D6/S5B2AB.asp
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dllproc/prothred_9dpv.asp
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/fileio/filesio_7wmd.asp======================
- 微软全球技术中心 VB技术支持本贴子仅供CSDN的用户作为参考信息使用。其内容不具备任何法律保障。您需要考虑到并承担使用此信息可能带来的风险。具体事项可参见使用条款(http://support.microsoft.com/directory/worldwide/zh-cn/community/terms_chs.asp)。
为了为您创建更好的讨论环境,请参加我们的用户满意度调查(http://support.microsoft.com/directory/worldwide/zh-cn/community/survey.asp?key=(S,49854782))。
======================
fatal error C1010: unexpected end of file while looking for precompiled header directive