• 大小: 15.5MB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2023-07-14
  • 语言: C/C++
  • 标签: WIN32  SDK  

资源简介

使用WIN32 SDK 的API函数,逐一实现快进、后退、声音调节等功能(功能键代码都是自己写的),这并不是用MFC写的!!对于资源较稀缺的《windows程序设计》的学习,可以给你不少帮助。

资源截图

代码片段和文件信息


#include 
#include 
#include 
#include 
#include 
#include “control.h“
#include “evcode.h“

#include “time.h“
#include 
#include 
#include 
#include se.h>
#include 

#include “dsplay.h“
#include “resource.h“
#include “nserror.h“

// 
// Constants and macros
//

BOOL    CALLBACK PlayDlg   (HWND UINT WPARAM LPARAM) ;
LRESULT CALLBACK WndMainProc(HWND UINT WPARAM LPARAM);




#ifndef NUMELMS
   #define NUMELMS(aa) (sizeof(aa)/sizeof((aa)[0]))
#endif

const int AUDIO=1 VIDEO=2; // Used for enabling playback menu items

#pragma warning(disable: 4100)

//
// Global data
//
HWND      hwnd=0;
HMENU     hMenu=0;
HINSTANCE ghInst=0;
TCHAR     g_szFileName[MAX_PATH]={0};
BOOL      g_bAudioOnly=FALSE g_bFullscreen=FALSE;
LONG      Volume=VOLUME_FULL;
PLAYSTATE g_psCurrent=Stopped;
// PlayState 的值
// 1=停止
// 2=暂停中
// 3=正在播放
// 4=向前搜索
// 5=向后搜索
// 6=缓冲中
// 7=等待中
// 8=播放完毕
// 9=转换曲目
// 10=准备就绪

HWND      hwndModelesshwndScroll ;
static HBITMAP hBitmap;
HDC    hdchdcMem1;

static int t= 0p=0q=1k=0bofang=0;

IGraphBuilder *pGB = NULL; //添加一个过滤器,当应用程序使用此接口来创建一个过滤器图表,添加过滤器或过滤器图表中删除过滤器,枚举所有的过滤器在过滤器图表,并强制连接
IMediaControl *pMC = NULL; //图表运行时,数据移动通过图形和呈现。
IMediaEventEx *pME = NULL; //继承自IMediaEvent接口,接收过滤器图表的事件,并做出响应。
IVideoWindow  *pVW = NULL;//捕获到视频窗口的“Handle”、“Caption”、“Class”等属性,就联想到可以通过这些信息获取视频窗口的句柄了
IBasicAudio   *pBA = NULL; //该put_Volume方法将音频信号的音量(振幅)。
IBasicVideo   *pBV = NULL;
IMediaSeeking *pMS = NULL;//获取文件的时间。使用IMediaSeeking->SetPositions函数实现视频播放时当前位置向前移动或向后移动


HRESULT PlayMovieInWindow(LPTSTR szFile)
{
    USES_CONVERSION;
    WCHAR wFile[MAX_PATH];
    HRESULT hr;

    // Check input string
    if (!szFile)
        return E_POINTER;

    // Clear open dialog remnants before calling RenderFile()
    UpdateWindow(hwnd);

    // Convert filename to wide character string
    wcsncpy(wFile T2W(szFile) NUMELMS(wFile)-1);
    wFile[MAX_PATH-1] = 0;

    // Get the interface for DirectShow‘s GraphBuilder
    JIF(CoCreateInstance(CLSID_FilterGraph NULL CLSCTX_INPROC_SERVER 
                         IID_IGraphBuilder (void **)&pGB));

    // Get the media event interface before building the graph
    JIF(pGB->QueryInterface(IID_IMediaEventEx (void **)&pME));

    // Have the graph builder construct the appropriate graph automatically
    JIF(pGB->RenderFile(wFile NULL));

    if( SUCCEEDED( hr ) )
    {
        // QueryInterface for DirectShow interfaces
        JIF(pGB->QueryInterface(IID_IMediaControl (void **)&pMC));
        JIF(pGB->QueryInterface(IID_IMediaSeeking (void **)&pMS));//时间

        // Query for video interfaces which may not be relevant for audio files
        JIF(pGB->QueryInterface(IID_IVideoWindow (void **)&pVW));
        JIF(pGB->QueryInterface(IID_IBasicVideo  (void **)&pBV));

        //  查询音频接口,这可能不是相关的视频

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2015-01-06 17:42  孤狼播放器\
     文件        1673  2014-06-07 15:48  孤狼播放器\DSPlay.h
     目录           0  2015-01-06 17:42  孤狼播放器\Debug\
     文件       12636  2014-06-08 22:19  孤狼播放器\Debug\BuildLog.htm
     文件         663  2014-06-08 13:34  孤狼播放器\Debug\DSPlay.exe.embed.manifest
     文件         728  2014-06-08 13:34  孤狼播放器\Debug\DSPlay.exe.embed.manifest.res
     文件         621  2014-06-08 22:19  孤狼播放器\Debug\DSPlay.exe.intermediate.manifest
     文件      836544  2014-06-08 22:19  孤狼播放器\Debug\DSPlay.ilk
     文件     1477632  2014-06-08 22:19  孤狼播放器\Debug\DSPlay.pdb
     文件          65  2014-06-08 22:19  孤狼播放器\Debug\mt.dep
     文件      592896  2014-06-08 22:19  孤狼播放器\Debug\vc90.idb
     文件      667648  2014-06-08 22:19  孤狼播放器\Debug\vc90.pdb
     文件     2729472  2014-06-08 22:19  孤狼播放器\Debug\孤狼播放器.exe
     文件      260271  2014-06-08 22:19  孤狼播放器\Debug\视频播放器.obj
     文件     2201680  2014-06-08 22:14  孤狼播放器\Debug\视频播放器.res
     文件        3064  2014-06-08 22:14  孤狼播放器\resource.h
     文件     1853856  2014-06-06 14:13  孤狼播放器\位图.bmp
     文件       16958  2014-06-07 12:25  孤狼播放器\关于位图.ico
     文件        4286  2014-06-06 13:01  孤狼播放器\图标.ico
     文件      150056  2014-06-08 21:35  孤狼播放器\图片.bmp
     文件      821248  2014-08-29 23:55  孤狼播放器\播放器.ppt
     文件      173816  2014-06-08 22:14  孤狼播放器\背景.bmp
     目录           0  2015-01-06 17:49  孤狼播放器\视频播放器\
     文件        1673  2014-06-07 15:48  孤狼播放器\视频播放器\DSPlay.h
     文件        7039  2014-06-08 22:14  孤狼播放器\视频播放器.vcproj
     文件       13312  2014-12-22 22:27  孤狼播放器\视频播放器.suo
     文件         895  2014-06-07 16:53  孤狼播放器\视频播放器.sln
     文件        6491  2014-06-08 22:14  孤狼播放器\视频播放器.rc
     文件    15657984  2014-12-22 22:27  孤狼播放器\视频播放器.ncb
     文件        4583  2011-03-21 17:59  孤狼播放器\视频播放器.dsp
     文件        1427  2014-12-22 22:27  孤狼播放器\视频播放器.vcproj.LYUUDFWB3RS42PF.Administrator.user
............此处省略30个文件信息

评论

共有 条评论