如何满屏播放AVI文件 
在Windows系统中,满屏播放AVI文件同在窗口中播放AVI文件是不同的,在满屏播放的时候不需要屏幕上的颜色进行抖动,只需要将调色板设置为AVI文件所独有的就可以了,这是因为没有其它的窗口在背景中存在的缘故。
使用Windows 应用程序编程接口(API)的mciSendString函数可以实现对AVI文件的播放。
样例程序
下面的样例程序将满屏播放位于C盘根目录下的test.avi文件。你可以将你的Windows 95 CDROM中的某些AVI文件改名并拷贝到C盘根目录下以播放它。1.在Visual Basic中开始一个新的项目,采用缺省的方法建立Form1。2.将如下的声明语句添加到Form1的通用声明部分中(注意每个声明语句?需要被书写在一行内):
Private Declare Function mciSendString Lib "winmm.dll" Alias "mciSendStringA" (ByVal lpstrCommand As String, ByVal lpstrReturnString As Any, ByVal uReturnLength As Long, ByVal hwndCallback As Long) As Long3.在Form1上添加一个命令按钮控件,采用缺省的方法建立Command1。
将它的Caption属性设置为“播放文件”。4.将如下的代码添加到Command1的单击事件中:Private Sub Command1_Click()
CmdStr$ = "play c:\test.avi fullscreen "
ReturnVal& = mciSendString(CmdStr$, 0&, 0, 0&)
End Sub通过按下F5键来执行样例程序。单击播放命令按钮,可以在满屏方式下
播放AVI文件。 

解决方案 »

  1.   

    用VB设计VCD播放器
    当你在用老牌的XingPlay或是华丽的《超级解霸5.0》的时候,你有没有想过拥有一个你自己编写的软解压播放器呢?其实你只要掌握一点VB的技巧,那么要实现这个愿望就变得很简单了。
      笔者在初步研究了Windows的SYSTEM.INI后发现,通过VB的多媒体控件MCI.VBX可以打开MPEG压缩文件(如VCD2.0版的.DAT文件)。
      首先你的Windows系统中SYSTEM.INI文件关于[MCI]中需有MPEGVideo项(一般Windows95和Windows98中都已有此项,通过安装XingPlay或CCDVP95等软件也可增加此项)。
      其次在VB中建立一个新窗口,将MCI.VBX加入ToolBox中,将MCI控件拖放至窗体Form上,调整其大小,将九个按钮(从左至右为:Prev、Next、Play、Pause、Back、Step、Stop、Record和Eject)中Record按钮Visible属性设为False,其余按钮的Visible属性和Enabled属性设置为True,以上按钮的设置可通过MMControl的属性栏内“自定义”项来设置。
      假设光驱为E:,VCD碟片文件为E:\MPEGAV\MUSIC01.DAT。
      源代码如下:
      Private Sub Form_ Load()
      MMControl.DeviceType=″MPEGVideo″
      MMControl.FileName=″E:\MPEGAV\MUSIC01.DAT″
      MMControl.Command=″OPEN″
      MMControl.Command=″PLAY″
      End Sub
      Sub Form_Unload(Cancel As Integer)
      MMControl.Command=″close″
      End Sub
      笔者通过实践发现Step和Back按钮功能不明显,所以对以上两个按钮进行了一些改进。
      Sub MMControl_ StepClick(Cancel As Integer)
      j=MMControl.Position+100 ′数值100为前进量,可适当调整
      If j>MMControl.Length Then
      MMControl.From=MMControl.Length
      Else
      MMControl.From=j
      End If
      MMControl.Command=″Play″
      End Sub
      Sub MMControl_ BackClick(Cancel As Integer)
      I=MMControl.Position-100 ′数值100为后退量,可适当调整
      If I<0 Then
      MMControl.From=0
      Else
      MMControl.From=I
      End If
      MMControl.Command=″Play″
      End Sub
      MCI控件还有很多属性,如画面播放位置hWndDisplay属性等,读者可参阅相关资料自行摸索,这里不再介绍。读者还可以通过建立通用对话框来打开文件,以解决VCD文件名不统一或多文件的问题。
      调整好窗体Form的标题、图标、颜色等,然后编译成EXE文件,你就可以在Windows下拥有自己的VCD播放器了。
      另外,因电脑性能差异及VCD解码质量的不同,播放画面质量和音质将有所差异。  
      

  2.   

    CmdStr$ = "play c:\test.avi fullscreen "
    ReturnVal& = mciSendString(CmdStr$, 0&, 0, 0&)我照上面的做了,可是一点反应也没有,怎么回事?
      

  3.   

    为什么不用windows的 media player 7.0 以上版本的控件呢?
    我自己的播放器用的media player 8.0 (XP带的)控件其功能无所不能!
      

  4.   

    用mediaplayer控件MediaPlayer1.DisplaySize = mpFullScreen
      

  5.   

    我想让程序小一点,MediaPlayer控件有点大谁能告诉我怎么用mciSendString播放呢