0

首先对不起我的英语是超级怪胎。对不起

我有一个大问题,我需要在 VB6.0 中完成我的应用程序以便在我的高中进行测试,但我找不到解决方案,我的应用程序打开一个 FFmpeg.EXE 文件,该文件打开一个 cmd 窗口提示并开始一个转码过程,我需要将生成的最后一行链接到 CMD 窗口(或顶部底部)的提示中,在这一行中存在值发生了什么变化,在这个转码过程中,结果是比特率,它根据其他变量而波动。我的应用程序形式的想法是我可以实时读取此行以构建进度条(文件大小/比特率平均值)=处理时间。

你能帮助我吗。感谢你的回答....

4

3 回答 3

1

引用Windows Scripting Host Object Model并尝试此代码段

Option Explicit

Private Sub Command1_Click()
    Dim oExec       As WshExec
    Dim sRow        As String

    With New WshShell
        Set oExec = .Exec("tasklist.exe")
    End With
    Do While oExec.Status = WshRunning
        sRow = oExec.StdOut.ReadLine
        If InStr(1, sRow, "vb6.exe", vbTextCompare) > 0 Then
            MsgBox sRow, vbExclamation
        End If
    Loop
End Sub

基本上尝试执行 FFmpeg.EXE 和 ReadLine 直到找到一些关键文本。

于 2009-12-30T20:47:03.547 回答
0

德克莱因

我阅读了您的答案,这是一项非常出色的工作,只是它在日志中显示了一个死亡值“文本”,并且我需要转换的波动比特率的值,该值在 cmd 窗口的提示中实时变化。我现在正在尝试使用 wqw 的源代码,我正在那里工作。

谢谢你的回答..

于 2010-01-03T18:53:48.960 回答
0

将输出发送到文本文件,然后读取此文本文件。应该看起来像这样:

ping >e:\test.txt

其中 ping 是 FFmpge.EXE,e:\test.txt 是输出文本文件

于 2009-12-30T19:54:25.413 回答