mirror of
https://github.com/Gigaslav/HL2Overcharged.git
synced 2026-09-21 20:15:06 +03:00
Init comit
This commit is contained in:
1402
utils/sapi51/Samples/CPP/SimpleAudioDll/SpAudioPlug.cpp
Normal file
1402
utils/sapi51/Samples/CPP/SimpleAudioDll/SpAudioPlug.cpp
Normal file
File diff suppressed because it is too large
Load Diff
246
utils/sapi51/Samples/CPP/SimpleAudioDll/SpAudioPlug.h
Normal file
246
utils/sapi51/Samples/CPP/SimpleAudioDll/SpAudioPlug.h
Normal file
@@ -0,0 +1,246 @@
|
||||
// SpAudioPlug.h: Definition of the SpAudioPlug class
|
||||
//
|
||||
//////////////////////////////////////////////////////////////////////
|
||||
|
||||
#if !defined(AFX_SPAUDIOPLUG_H__AD57CF29_3B4A_40A9_BB01_9BE69043E1DF__INCLUDED_)
|
||||
#define AFX_SPAUDIOPLUG_H__AD57CF29_3B4A_40A9_BB01_9BE69043E1DF__INCLUDED_
|
||||
|
||||
#if _MSC_VER > 1000
|
||||
#pragma once
|
||||
#endif // _MSC_VER > 1000
|
||||
|
||||
#include "resource.h" // main symbols
|
||||
|
||||
|
||||
//The queue object itself is thread safe. Different threads could call the different methods on the same object.
|
||||
//The queue object uses contiguous memory block for queue operation.
|
||||
|
||||
template <class T>
|
||||
class CCriticalSectionLock
|
||||
{
|
||||
private:
|
||||
T* m_pObject;
|
||||
|
||||
public:
|
||||
CCriticalSectionLock(T* pObject)
|
||||
{
|
||||
m_pObject = pObject;
|
||||
m_pObject->Lock();
|
||||
}
|
||||
~CCriticalSectionLock()
|
||||
{
|
||||
m_pObject->Unlock();
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
template <class T>
|
||||
class CBasicQueueByArray
|
||||
{
|
||||
private:
|
||||
typedef CCriticalSectionLock< CBasicQueueByArray<T> > CRITICAL_SECTION_AUTO_LOCK;
|
||||
|
||||
T* m_pCoMemAlloc;
|
||||
ULONG m_ulQueueSize; //In terms of the number of element of T in the queue, not the total bytes
|
||||
ULONG m_ulHeader; //In terms of the number of element offset from the beginning of memory, range from 0 to m_ulQueueSize - 1
|
||||
ULONG m_ulTail; //In terms of the number of element offset from the beginning of memory, range from 0 to m_ulQueueSize - 1
|
||||
ULONGLONG m_ullTotalOut; //the total bytes read out of the queue by RemoveTail
|
||||
ULONGLONG m_ullTotalIn; //the total bytes put into the queue by InsertHead
|
||||
|
||||
CRITICAL_SECTION m_CriticalSection;
|
||||
HANDLE m_hSpaceAvailable; //signalled when the queue has space
|
||||
HANDLE m_hDataAvailable; //signalled when the the queue has m_ulNotifySize or more data
|
||||
ULONG m_ulSpaceNotifySize; //when the available space is equal or more than this amount, we need to signal m_hSpaceAvailable
|
||||
ULONG m_ulDataNotifySize; //when the available data is equal or more than this amount, we need to signal m_hDataAvailable
|
||||
|
||||
void _Clear();
|
||||
|
||||
ULONG _SpaceSize();
|
||||
ULONG _DataSize();
|
||||
|
||||
|
||||
public:
|
||||
CBasicQueueByArray();
|
||||
CBasicQueueByArray(ULONG ulQueueSize, HRESULT *phr);
|
||||
~CBasicQueueByArray()
|
||||
{
|
||||
DeleteCriticalSection(&m_CriticalSection);
|
||||
if (m_pCoMemAlloc)
|
||||
{
|
||||
::CoTaskMemFree(m_pCoMemAlloc);
|
||||
}
|
||||
}
|
||||
|
||||
void Lock()
|
||||
{
|
||||
EnterCriticalSection(&m_CriticalSection);
|
||||
}
|
||||
|
||||
void Unlock()
|
||||
{
|
||||
LeaveCriticalSection(&m_CriticalSection);
|
||||
}
|
||||
|
||||
|
||||
HRESULT Resize(ULONG ulNewQueueSize);
|
||||
|
||||
HRESULT Init
|
||||
(ULONG ulQueueSize, HANDLE hSpaceAvailable, HANDLE hDataAvailable, ULONG ulSpaceNotifySize, ULONG ulDataNotifySize);
|
||||
ULONG QueueSize();
|
||||
|
||||
void InsertHead(T* pElements, ULONG ulCount, ULONG * pulReturnCount);
|
||||
void RemoveTail(T* pElements, ULONG ulCount, ULONG * pulReturnCount);
|
||||
void ResetPos();
|
||||
ULONGLONG GetTotalOut()
|
||||
{
|
||||
CRITICAL_SECTION_AUTO_LOCK csl(this);
|
||||
return m_ullTotalOut;
|
||||
}
|
||||
ULONGLONG GetTotalIn()
|
||||
{
|
||||
CRITICAL_SECTION_AUTO_LOCK csl(this);
|
||||
return m_ullTotalIn;
|
||||
}
|
||||
ULONG DataSize()
|
||||
{
|
||||
CRITICAL_SECTION_AUTO_LOCK csl(this);
|
||||
return _DataSize();
|
||||
}
|
||||
|
||||
|
||||
};
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// SpAudioPlug
|
||||
|
||||
class SpAudioPlug :
|
||||
public ISpAudio,
|
||||
public ISpEventSource,
|
||||
public ISpEventSink,
|
||||
public CComObjectRootEx<CComMultiThreadModel>,
|
||||
public CComCoClass<SpAudioPlug,&CLSID_SpAudioPlug>,
|
||||
public IDispatchImpl<ISpAudioPlug, &IID_ISpAudioPlug, &LIBID_SIMPLEAUDIOLib>,
|
||||
public IDispatchImpl<ISpeechAudio, &IID_ISpeechAudio, &LIBID_SIMPLEAUDIOLib>
|
||||
|
||||
{
|
||||
public:
|
||||
SpAudioPlug();
|
||||
HRESULT FinalConstruct();
|
||||
void FinalRelease();
|
||||
|
||||
BEGIN_COM_MAP(SpAudioPlug)
|
||||
COM_INTERFACE_ENTRY(ISpAudioPlug)
|
||||
COM_INTERFACE_ENTRY(ISequentialStream)
|
||||
COM_INTERFACE_ENTRY(IStream)
|
||||
COM_INTERFACE_ENTRY(ISpStreamFormat)
|
||||
COM_INTERFACE_ENTRY(ISpAudio)
|
||||
COM_INTERFACE_ENTRY(ISpNotifySource)
|
||||
COM_INTERFACE_ENTRY(ISpEventSource)
|
||||
COM_INTERFACE_ENTRY(ISpEventSink)
|
||||
COM_INTERFACE_ENTRY2(IDispatch, ISpeechAudio)
|
||||
COM_INTERFACE_ENTRY(ISpeechAudio)
|
||||
COM_INTERFACE_ENTRY(ISpeechBaseStream)
|
||||
END_COM_MAP()
|
||||
//DECLARE_NOT_AGGREGATABLE(SpAudioPlug)
|
||||
// Remove the comment from the line above if you don't want your object to
|
||||
// support aggregation.
|
||||
|
||||
DECLARE_REGISTRY_RESOURCEID(IDR_SpAudioPlug)
|
||||
|
||||
// ISpAudioPlug
|
||||
STDMETHODIMP Init(VARIANT_BOOL fWrite, SpeechAudioFormatType FormatType);
|
||||
STDMETHODIMP SetData(VARIANT vData, long * pWritten);
|
||||
STDMETHODIMP GetData(VARIANT* vData);
|
||||
|
||||
|
||||
//--- ISequentialStream ---
|
||||
STDMETHODIMP Read(void * pv, ULONG cb, ULONG *pcbRead);
|
||||
STDMETHODIMP Write(const void * pv, ULONG cb, ULONG *pcbWritten);
|
||||
|
||||
//--- IStream ---
|
||||
STDMETHODIMP Seek(LARGE_INTEGER dlibMove, DWORD dwOrigin, ULARGE_INTEGER __RPC_FAR *plibNewPosition);
|
||||
STDMETHODIMP SetSize(ULARGE_INTEGER libNewSize);
|
||||
STDMETHODIMP CopyTo(IStream *pstm, ULARGE_INTEGER cb, ULARGE_INTEGER *pcbRead, ULARGE_INTEGER *pcbWritten);
|
||||
STDMETHODIMP Commit(DWORD grfCommitFlags);
|
||||
STDMETHODIMP Revert(void);
|
||||
STDMETHODIMP LockRegion(ULARGE_INTEGER libOffset, ULARGE_INTEGER cb, DWORD dwLockType);
|
||||
STDMETHODIMP UnlockRegion(ULARGE_INTEGER libOffset, ULARGE_INTEGER cb, DWORD dwLockType);
|
||||
STDMETHODIMP Stat(STATSTG *pstatstg, DWORD grfStatFlag);
|
||||
STDMETHODIMP Clone(IStream **ppstm);
|
||||
|
||||
//--- ISpStreamFormat ---
|
||||
STDMETHODIMP GetFormat(GUID * pguidFormatId, WAVEFORMATEX ** ppCoMemWaveFormatEx);
|
||||
|
||||
//--- ISpAudio ---
|
||||
STDMETHODIMP SetState(SPAUDIOSTATE NewState, ULONGLONG ullReserved );
|
||||
STDMETHODIMP SetFormat(REFGUID rguidFmtId, const WAVEFORMATEX * pWaveFormatEx);
|
||||
STDMETHODIMP GetStatus(SPAUDIOSTATUS *pStatus);
|
||||
STDMETHODIMP SetBufferInfo(const SPAUDIOBUFFERINFO * pInfo);
|
||||
STDMETHODIMP GetBufferInfo(SPAUDIOBUFFERINFO * pInfo);
|
||||
STDMETHODIMP GetDefaultFormat(GUID * pFormatId, WAVEFORMATEX ** ppCoMemWaveFormatEx);
|
||||
STDMETHODIMP_(HANDLE) EventHandle();
|
||||
STDMETHODIMP GetVolumeLevel(ULONG *pLevel);
|
||||
STDMETHODIMP SetVolumeLevel(ULONG Level);
|
||||
STDMETHODIMP GetBufferNotifySize(ULONG *pcbSize);
|
||||
STDMETHODIMP SetBufferNotifySize(ULONG cbSize);
|
||||
|
||||
//--- ISpNotifySource ---
|
||||
//--- ISpEventSource ---
|
||||
CSpEventSource m_SpEventSource;
|
||||
DECLARE_SPEVENTSOURCE_METHODS(m_SpEventSource)
|
||||
|
||||
//--- ISpEventSink ---
|
||||
STDMETHODIMP AddEvents(const SPEVENT* pEventArray, ULONG ulCount);
|
||||
STDMETHODIMP GetEventInterest(ULONGLONG * pullEventInterest);
|
||||
|
||||
//--- ISpeechBaseStream ----------------------------------------
|
||||
STDMETHODIMP get_Format(ISpeechAudioFormat** ppStreamFormat) { return E_NOTIMPL; };
|
||||
STDMETHODIMP putref_Format(ISpeechAudioFormat* pFormat) { return E_NOTIMPL; };
|
||||
STDMETHODIMP Read(VARIANT* pvtBuffer, long NumBytes, long* pRead) { return E_NOTIMPL;}
|
||||
STDMETHODIMP Write(VARIANT vtBuffer, long* pWritten) { return E_NOTIMPL;}
|
||||
STDMETHODIMP Seek(VARIANT Pos, SpeechStreamSeekPositionType Origin, VARIANT* pNewPosition) { return E_NOTIMPL; };
|
||||
|
||||
//--- ISpeechAudio ----------------------------------
|
||||
STDMETHODIMP SetState( SpeechAudioState State ) { return E_NOTIMPL; };
|
||||
STDMETHODIMP get_Status( ISpeechAudioStatus** ppStatus ) { return E_NOTIMPL; };
|
||||
STDMETHODIMP get_BufferInfo(ISpeechAudioBufferInfo** ppBufferInfo) { return E_NOTIMPL; };
|
||||
STDMETHODIMP get_DefaultFormat(ISpeechAudioFormat** ppStreamFormat) { return E_NOTIMPL; };
|
||||
STDMETHODIMP get_Volume(long* pVolume) { return E_NOTIMPL; };
|
||||
STDMETHODIMP put_Volume(long Volume) { return E_NOTIMPL; };
|
||||
STDMETHODIMP get_BufferNotifySize(long* pBufferNotifySize) { return E_NOTIMPL; };
|
||||
STDMETHODIMP put_BufferNotifySize(long BufferNotifySize) { return E_NOTIMPL; };
|
||||
STDMETHODIMP get_EventHandle(long* pEventHandle) { return E_NOTIMPL; };
|
||||
|
||||
void Lock()
|
||||
{
|
||||
EnterCriticalSection(&m_CriticalSection);
|
||||
}
|
||||
|
||||
void Unlock()
|
||||
{
|
||||
LeaveCriticalSection(&m_CriticalSection);
|
||||
}
|
||||
|
||||
|
||||
private:
|
||||
SPAUDIOSTATE m_State;
|
||||
CSpStreamFormat m_Format;
|
||||
CBasicQueueByArray<BYTE> m_Queue;
|
||||
SPAUDIOBUFFERINFO m_BufferInfo;
|
||||
ULONG m_cbEventBias;
|
||||
BOOL m_fWrite;
|
||||
HANDLE m_hQueueHasDataEvent; //The event is signaled by SetData/GetData thread or SAPI SetState thread. Read/Write thread waits for this event.
|
||||
HANDLE m_hQueueHasSpaceEvent; //The event is signaled by Read/Write thread or SAPI SetState thread , SetData/GetData thread waits for this event.
|
||||
|
||||
ULONG m_ulBufferNotifySize;
|
||||
HANDLE m_autohAPIEvent; //When there are m_ulBufferNotifySize data available
|
||||
BOOL m_fautohAPIEventSet;
|
||||
CRITICAL_SECTION m_CriticalSection;
|
||||
|
||||
void _ProcessEvent();
|
||||
|
||||
};
|
||||
|
||||
#define SPAUTO_OBJ_LOCK CCriticalSectionLock< SpAudioPlug > lck(this)
|
||||
|
||||
#endif // !defined(AFX_SPAUDIOPLUG_H__AD57CF29_3B4A_40A9_BB01_9BE69043E1DF__INCLUDED_)
|
||||
23
utils/sapi51/Samples/CPP/SimpleAudioDll/SpAudioPlug.rgs
Normal file
23
utils/sapi51/Samples/CPP/SimpleAudioDll/SpAudioPlug.rgs
Normal file
@@ -0,0 +1,23 @@
|
||||
HKCR
|
||||
{
|
||||
Simpleaudio.SpAudioPlug.1 = s 'SpAudioPlug Class'
|
||||
{
|
||||
CLSID = s '{F0CB433F-9453-466A-A35E-95909872E2A8}'
|
||||
}
|
||||
Simpleaudio.SpAudioPlug = s 'SpAudioPlug Class'
|
||||
{
|
||||
CLSID = s '{F0CB433F-9453-466A-A35E-95909872E2A8}'
|
||||
}
|
||||
NoRemove CLSID
|
||||
{
|
||||
ForceRemove {F0CB433F-9453-466A-A35E-95909872E2A8} = s 'SpAudioPlug Class'
|
||||
{
|
||||
ProgID = s 'Simpleaudio.SpAudioPlug.1'
|
||||
VersionIndependentProgID = s 'Simpleaudio.SpAudioPlug'
|
||||
InprocServer32 = s '%MODULE%'
|
||||
{
|
||||
val ThreadingModel = s 'both'
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
12
utils/sapi51/Samples/CPP/SimpleAudioDll/StdAfx.cpp
Normal file
12
utils/sapi51/Samples/CPP/SimpleAudioDll/StdAfx.cpp
Normal file
@@ -0,0 +1,12 @@
|
||||
// stdafx.cpp : source file that includes just the standard includes
|
||||
// stdafx.pch will be the pre-compiled header
|
||||
// stdafx.obj will contain the pre-compiled type information
|
||||
|
||||
#include "stdafx.h"
|
||||
|
||||
#ifdef _ATL_STATIC_REGISTRY
|
||||
#include <statreg.h>
|
||||
#include <statreg.cpp>
|
||||
#endif
|
||||
|
||||
#include <atlimpl.cpp>
|
||||
33
utils/sapi51/Samples/CPP/SimpleAudioDll/StdAfx.h
Normal file
33
utils/sapi51/Samples/CPP/SimpleAudioDll/StdAfx.h
Normal file
@@ -0,0 +1,33 @@
|
||||
// stdafx.h : include file for standard system include files,
|
||||
// or project specific include files that are used frequently,
|
||||
// but are changed infrequently
|
||||
|
||||
#if !defined(AFX_STDAFX_H__C748285E_9F4E_4F76_A1CD_B963593A52DD__INCLUDED_)
|
||||
#define AFX_STDAFX_H__C748285E_9F4E_4F76_A1CD_B963593A52DD__INCLUDED_
|
||||
|
||||
#if _MSC_VER > 1000
|
||||
#pragma once
|
||||
#endif // _MSC_VER > 1000
|
||||
|
||||
#ifndef STRICT
|
||||
#define STRICT
|
||||
#endif
|
||||
|
||||
#ifndef _WIN32_WINNT
|
||||
#define _WIN32_WINNT 0x0400
|
||||
#endif
|
||||
|
||||
#include <atlbase.h>
|
||||
//You may derive a class from CComModule and use it if you want to override
|
||||
//something, but do not change the name of _Module
|
||||
extern CComModule _Module;
|
||||
#include <atlcom.h>
|
||||
#include "sapi.h"
|
||||
#include "sphelper.h"
|
||||
#include "spddkhlp.h"
|
||||
#include "speventq.h"
|
||||
|
||||
//{{AFX_INSERT_LOCATION}}
|
||||
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.
|
||||
|
||||
#endif // !defined(AFX_STDAFX_H__C748285E_9F4E_4F76_A1CD_B963593A52DD__INCLUDED)
|
||||
18
utils/sapi51/Samples/CPP/SimpleAudioDll/resource.h
Normal file
18
utils/sapi51/Samples/CPP/SimpleAudioDll/resource.h
Normal file
@@ -0,0 +1,18 @@
|
||||
//{{NO_DEPENDENCIES}}
|
||||
// Microsoft Developer Studio generated include file.
|
||||
// Used by simpleaudio.rc
|
||||
//
|
||||
#define IDS_PROJNAME 100
|
||||
#define IDS_SPAUDIOPLUG_DESC 101
|
||||
#define IDR_SpAudioPlug 102
|
||||
|
||||
// Next default values for new objects
|
||||
//
|
||||
#ifdef APSTUDIO_INVOKED
|
||||
#ifndef APSTUDIO_READONLY_SYMBOLS
|
||||
#define _APS_NEXT_RESOURCE_VALUE 201
|
||||
#define _APS_NEXT_COMMAND_VALUE 32768
|
||||
#define _APS_NEXT_CONTROL_VALUE 201
|
||||
#define _APS_NEXT_SYMED_VALUE 103
|
||||
#endif
|
||||
#endif
|
||||
72
utils/sapi51/Samples/CPP/SimpleAudioDll/simpleaudio.cpp
Normal file
72
utils/sapi51/Samples/CPP/SimpleAudioDll/simpleaudio.cpp
Normal file
@@ -0,0 +1,72 @@
|
||||
// simpleaudio.cpp : Implementation of DLL Exports.
|
||||
|
||||
|
||||
// Note: Proxy/Stub Information
|
||||
// To build a separate proxy/stub DLL,
|
||||
// run nmake -f simpleaudiops.mk in the project directory.
|
||||
|
||||
#include "stdafx.h"
|
||||
#include "resource.h"
|
||||
#include <initguid.h>
|
||||
#include "simpleaudio.h"
|
||||
|
||||
#include "simpleaudio_i.c"
|
||||
#include "SpAudioPlug.h"
|
||||
|
||||
|
||||
CComModule _Module;
|
||||
|
||||
BEGIN_OBJECT_MAP(ObjectMap)
|
||||
OBJECT_ENTRY(CLSID_SpAudioPlug, SpAudioPlug)
|
||||
END_OBJECT_MAP()
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// DLL Entry Point
|
||||
|
||||
extern "C"
|
||||
BOOL WINAPI DllMain(HINSTANCE hInstance, DWORD dwReason, LPVOID /*lpReserved*/)
|
||||
{
|
||||
if (dwReason == DLL_PROCESS_ATTACH)
|
||||
{
|
||||
_Module.Init(ObjectMap, hInstance, &LIBID_SIMPLEAUDIOLib);
|
||||
DisableThreadLibraryCalls(hInstance);
|
||||
}
|
||||
else if (dwReason == DLL_PROCESS_DETACH)
|
||||
_Module.Term();
|
||||
return TRUE; // ok
|
||||
}
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// Used to determine whether the DLL can be unloaded by OLE
|
||||
|
||||
STDAPI DllCanUnloadNow(void)
|
||||
{
|
||||
return (_Module.GetLockCount()==0) ? S_OK : S_FALSE;
|
||||
}
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// Returns a class factory to create an object of the requested type
|
||||
|
||||
STDAPI DllGetClassObject(REFCLSID rclsid, REFIID riid, LPVOID* ppv)
|
||||
{
|
||||
return _Module.GetClassObject(rclsid, riid, ppv);
|
||||
}
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// DllRegisterServer - Adds entries to the system registry
|
||||
|
||||
STDAPI DllRegisterServer(void)
|
||||
{
|
||||
// registers object, typelib and all interfaces in typelib
|
||||
return _Module.RegisterServer(TRUE);
|
||||
}
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// DllUnregisterServer - Removes entries from the system registry
|
||||
|
||||
STDAPI DllUnregisterServer(void)
|
||||
{
|
||||
return _Module.UnregisterServer(TRUE);
|
||||
}
|
||||
|
||||
|
||||
9
utils/sapi51/Samples/CPP/SimpleAudioDll/simpleaudio.def
Normal file
9
utils/sapi51/Samples/CPP/SimpleAudioDll/simpleaudio.def
Normal file
@@ -0,0 +1,9 @@
|
||||
; simpleaudio.def : Declares the module parameters.
|
||||
|
||||
LIBRARY "simpleaudio.DLL"
|
||||
|
||||
EXPORTS
|
||||
DllCanUnloadNow PRIVATE
|
||||
DllGetClassObject PRIVATE
|
||||
DllRegisterServer PRIVATE
|
||||
DllUnregisterServer PRIVATE
|
||||
336
utils/sapi51/Samples/CPP/SimpleAudioDll/simpleaudio.dsp
Normal file
336
utils/sapi51/Samples/CPP/SimpleAudioDll/simpleaudio.dsp
Normal file
@@ -0,0 +1,336 @@
|
||||
# Microsoft Developer Studio Project File - Name="simpleaudio" - Package Owner=<4>
|
||||
# Microsoft Developer Studio Generated Build File, Format Version 6.00
|
||||
# ** DO NOT EDIT **
|
||||
|
||||
# TARGTYPE "Win32 (x86) Dynamic-Link Library" 0x0102
|
||||
|
||||
CFG=simpleaudio - Win32 Debug
|
||||
!MESSAGE This is not a valid makefile. To build this project using NMAKE,
|
||||
!MESSAGE use the Export Makefile command and run
|
||||
!MESSAGE
|
||||
!MESSAGE NMAKE /f "simpleaudio.mak".
|
||||
!MESSAGE
|
||||
!MESSAGE You can specify a configuration when running NMAKE
|
||||
!MESSAGE by defining the macro CFG on the command line. For example:
|
||||
!MESSAGE
|
||||
!MESSAGE NMAKE /f "simpleaudio.mak" CFG="simpleaudio - Win32 Debug"
|
||||
!MESSAGE
|
||||
!MESSAGE Possible choices for configuration are:
|
||||
!MESSAGE
|
||||
!MESSAGE "simpleaudio - Win32 Debug" (based on "Win32 (x86) Dynamic-Link Library")
|
||||
!MESSAGE "simpleaudio - Win32 Unicode Debug" (based on "Win32 (x86) Dynamic-Link Library")
|
||||
!MESSAGE "simpleaudio - Win32 Release MinSize" (based on "Win32 (x86) Dynamic-Link Library")
|
||||
!MESSAGE "simpleaudio - Win32 Release MinDependency" (based on "Win32 (x86) Dynamic-Link Library")
|
||||
!MESSAGE "simpleaudio - Win32 Unicode Release MinSize" (based on "Win32 (x86) Dynamic-Link Library")
|
||||
!MESSAGE "simpleaudio - Win32 Unicode Release MinDependency" (based on "Win32 (x86) Dynamic-Link Library")
|
||||
!MESSAGE
|
||||
|
||||
# Begin Project
|
||||
# PROP AllowPerConfigDependencies 0
|
||||
# PROP Scc_ProjName ""
|
||||
# PROP Scc_LocalPath ""
|
||||
CPP=cl.exe
|
||||
MTL=midl.exe
|
||||
RSC=rc.exe
|
||||
|
||||
!IF "$(CFG)" == "simpleaudio - Win32 Debug"
|
||||
|
||||
# PROP BASE Use_MFC 0
|
||||
# PROP BASE Use_Debug_Libraries 1
|
||||
# PROP BASE Output_Dir "Debug"
|
||||
# PROP BASE Intermediate_Dir "Debug"
|
||||
# PROP BASE Target_Dir ""
|
||||
# PROP Use_MFC 0
|
||||
# PROP Use_Debug_Libraries 1
|
||||
# PROP Output_Dir "Debug"
|
||||
# PROP Intermediate_Dir "Debug"
|
||||
# PROP Ignore_Export_Lib 0
|
||||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /MTd /W3 /Gm /ZI /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /Yu"stdafx.h" /FD /GZ /c
|
||||
# ADD CPP /nologo /MTd /W3 /Gm /Zi /Od /I "..\..\..\include" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /Yu"stdafx.h" /FD /GZ /c
|
||||
# ADD MTL /I "..\..\..\idl"
|
||||
# ADD BASE RSC /l 0x409 /d "_DEBUG"
|
||||
# ADD RSC /l 0x409 /d "_DEBUG"
|
||||
BSC32=bscmake.exe
|
||||
# ADD BASE BSC32 /nologo
|
||||
# ADD BSC32 /nologo
|
||||
LINK32=link.exe
|
||||
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /dll /debug /machine:I386 /pdbtype:sept
|
||||
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /dll /incremental:no /debug /machine:I386 /pdbtype:sept /libpath:"..\..\..\lib\i386"
|
||||
# SUBTRACT LINK32 /pdb:none
|
||||
# Begin Custom Build - Performing registration
|
||||
OutDir=.\Debug
|
||||
TargetPath=.\Debug\simpleaudio.dll
|
||||
InputPath=.\Debug\simpleaudio.dll
|
||||
SOURCE="$(InputPath)"
|
||||
|
||||
"$(OutDir)\regsvr32.trg" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
|
||||
regsvr32 /s /c "$(TargetPath)"
|
||||
echo regsvr32 exec. time > "$(OutDir)\regsvr32.trg"
|
||||
|
||||
# End Custom Build
|
||||
|
||||
!ELSEIF "$(CFG)" == "simpleaudio - Win32 Unicode Debug"
|
||||
|
||||
# PROP BASE Use_MFC 0
|
||||
# PROP BASE Use_Debug_Libraries 1
|
||||
# PROP BASE Output_Dir "DebugU"
|
||||
# PROP BASE Intermediate_Dir "DebugU"
|
||||
# PROP BASE Target_Dir ""
|
||||
# PROP Use_MFC 0
|
||||
# PROP Use_Debug_Libraries 1
|
||||
# PROP Output_Dir "DebugU"
|
||||
# PROP Intermediate_Dir "DebugU"
|
||||
# PROP Ignore_Export_Lib 0
|
||||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /MTd /W3 /Gm /ZI /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_USRDLL" /D "_UNICODE" /Yu"stdafx.h" /FD /GZ /c
|
||||
# ADD CPP /nologo /MTd /W3 /Gm /ZI /Od /I "..\..\..\include" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_USRDLL" /D "_UNICODE" /Yu"stdafx.h" /FD /GZ /c
|
||||
# ADD MTL /I "..\..\..\idl"
|
||||
# ADD BASE RSC /l 0x409 /d "_DEBUG"
|
||||
# ADD RSC /l 0x409 /d "_DEBUG"
|
||||
BSC32=bscmake.exe
|
||||
# ADD BASE BSC32 /nologo
|
||||
# ADD BSC32 /nologo
|
||||
LINK32=link.exe
|
||||
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /dll /debug /machine:I386 /pdbtype:sept
|
||||
# ADD LINK32 sapi.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /dll /debug /machine:I386 /pdbtype:sept /libpath:"..\..\..\lib\i386"
|
||||
# Begin Custom Build - Performing registration
|
||||
OutDir=.\DebugU
|
||||
TargetPath=.\DebugU\simpleaudio.dll
|
||||
InputPath=.\DebugU\simpleaudio.dll
|
||||
SOURCE="$(InputPath)"
|
||||
|
||||
"$(OutDir)\regsvr32.trg" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
|
||||
if "%OS%"=="" goto NOTNT
|
||||
if not "%OS%"=="Windows_NT" goto NOTNT
|
||||
regsvr32 /s /c "$(TargetPath)"
|
||||
echo regsvr32 exec. time > "$(OutDir)\regsvr32.trg"
|
||||
goto end
|
||||
:NOTNT
|
||||
echo Warning : Cannot register Unicode DLL on Windows 95
|
||||
:end
|
||||
|
||||
# End Custom Build
|
||||
|
||||
!ELSEIF "$(CFG)" == "simpleaudio - Win32 Release MinSize"
|
||||
|
||||
# PROP BASE Use_MFC 0
|
||||
# PROP BASE Use_Debug_Libraries 0
|
||||
# PROP BASE Output_Dir "ReleaseMinSize"
|
||||
# PROP BASE Intermediate_Dir "ReleaseMinSize"
|
||||
# PROP BASE Target_Dir ""
|
||||
# PROP Use_MFC 0
|
||||
# PROP Use_Debug_Libraries 0
|
||||
# PROP Output_Dir "ReleaseMinSize"
|
||||
# PROP Intermediate_Dir "ReleaseMinSize"
|
||||
# PROP Ignore_Export_Lib 0
|
||||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /MT /W3 /O1 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "_ATL_DLL" /D "_ATL_MIN_CRT" /Yu"stdafx.h" /FD /c
|
||||
# ADD CPP /nologo /MT /W3 /O1 /I "..\..\..\include" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "_ATL_DLL" /D "_ATL_MIN_CRT" /Yu"stdafx.h" /FD /c
|
||||
# ADD MTL /I "..\..\..\idl"
|
||||
# ADD BASE RSC /l 0x409 /d "NDEBUG"
|
||||
# ADD RSC /l 0x409 /d "NDEBUG"
|
||||
BSC32=bscmake.exe
|
||||
# ADD BASE BSC32 /nologo
|
||||
# ADD BSC32 /nologo
|
||||
LINK32=link.exe
|
||||
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /dll /machine:I386
|
||||
# ADD LINK32 sapi.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /dll /machine:I386 /libpath:"..\..\..\lib\i386"
|
||||
# Begin Custom Build - Performing registration
|
||||
OutDir=.\ReleaseMinSize
|
||||
TargetPath=.\ReleaseMinSize\simpleaudio.dll
|
||||
InputPath=.\ReleaseMinSize\simpleaudio.dll
|
||||
SOURCE="$(InputPath)"
|
||||
|
||||
"$(OutDir)\regsvr32.trg" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
|
||||
regsvr32 /s /c "$(TargetPath)"
|
||||
echo regsvr32 exec. time > "$(OutDir)\regsvr32.trg"
|
||||
|
||||
# End Custom Build
|
||||
|
||||
!ELSEIF "$(CFG)" == "simpleaudio - Win32 Release MinDependency"
|
||||
|
||||
# PROP BASE Use_MFC 0
|
||||
# PROP BASE Use_Debug_Libraries 0
|
||||
# PROP BASE Output_Dir "ReleaseMinDependency"
|
||||
# PROP BASE Intermediate_Dir "ReleaseMinDependency"
|
||||
# PROP BASE Target_Dir ""
|
||||
# PROP Use_MFC 0
|
||||
# PROP Use_Debug_Libraries 0
|
||||
# PROP Output_Dir "ReleaseMinDependency"
|
||||
# PROP Intermediate_Dir "ReleaseMinDependency"
|
||||
# PROP Ignore_Export_Lib 0
|
||||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /MT /W3 /O1 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "_ATL_STATIC_REGISTRY" /D "_ATL_MIN_CRT" /Yu"stdafx.h" /FD /c
|
||||
# ADD CPP /nologo /MT /W3 /O1 /I "..\..\..\include" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "_ATL_STATIC_REGISTRY" /D "_ATL_MIN_CRT" /Yu"stdafx.h" /FD /c
|
||||
# ADD MTL /I "..\..\..\idl"
|
||||
# ADD BASE RSC /l 0x409 /d "NDEBUG"
|
||||
# ADD RSC /l 0x409 /d "NDEBUG"
|
||||
BSC32=bscmake.exe
|
||||
# ADD BASE BSC32 /nologo
|
||||
# ADD BSC32 /nologo
|
||||
LINK32=link.exe
|
||||
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /dll /machine:I386
|
||||
# ADD LINK32 sapi.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /dll /machine:I386 /libpath:"..\..\..\lib\i386"
|
||||
# Begin Custom Build - Performing registration
|
||||
OutDir=.\ReleaseMinDependency
|
||||
TargetPath=.\ReleaseMinDependency\simpleaudio.dll
|
||||
InputPath=.\ReleaseMinDependency\simpleaudio.dll
|
||||
SOURCE="$(InputPath)"
|
||||
|
||||
"$(OutDir)\regsvr32.trg" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
|
||||
regsvr32 /s /c "$(TargetPath)"
|
||||
echo regsvr32 exec. time > "$(OutDir)\regsvr32.trg"
|
||||
|
||||
# End Custom Build
|
||||
|
||||
!ELSEIF "$(CFG)" == "simpleaudio - Win32 Unicode Release MinSize"
|
||||
|
||||
# PROP BASE Use_MFC 0
|
||||
# PROP BASE Use_Debug_Libraries 0
|
||||
# PROP BASE Output_Dir "ReleaseUMinSize"
|
||||
# PROP BASE Intermediate_Dir "ReleaseUMinSize"
|
||||
# PROP BASE Target_Dir ""
|
||||
# PROP Use_MFC 0
|
||||
# PROP Use_Debug_Libraries 0
|
||||
# PROP Output_Dir "ReleaseUMinSize"
|
||||
# PROP Intermediate_Dir "ReleaseUMinSize"
|
||||
# PROP Ignore_Export_Lib 0
|
||||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /MT /W3 /O1 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_USRDLL" /D "_UNICODE" /D "_ATL_DLL" /D "_ATL_MIN_CRT" /Yu"stdafx.h" /FD /c
|
||||
# ADD CPP /nologo /MT /W3 /O1 /I "..\..\..\include" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_USRDLL" /D "_UNICODE" /D "_ATL_DLL" /D "_ATL_MIN_CRT" /Yu"stdafx.h" /FD /c
|
||||
# ADD MTL /I "..\..\..\idl"
|
||||
# ADD BASE RSC /l 0x409 /d "NDEBUG"
|
||||
# ADD RSC /l 0x409 /d "NDEBUG"
|
||||
BSC32=bscmake.exe
|
||||
# ADD BASE BSC32 /nologo
|
||||
# ADD BSC32 /nologo
|
||||
LINK32=link.exe
|
||||
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /dll /machine:I386
|
||||
# ADD LINK32 sapi.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /dll /machine:I386 /libpath:"..\..\..\lib\i386"
|
||||
# Begin Custom Build - Performing registration
|
||||
OutDir=.\ReleaseUMinSize
|
||||
TargetPath=.\ReleaseUMinSize\simpleaudio.dll
|
||||
InputPath=.\ReleaseUMinSize\simpleaudio.dll
|
||||
SOURCE="$(InputPath)"
|
||||
|
||||
"$(OutDir)\regsvr32.trg" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
|
||||
if "%OS%"=="" goto NOTNT
|
||||
if not "%OS%"=="Windows_NT" goto NOTNT
|
||||
regsvr32 /s /c "$(TargetPath)"
|
||||
echo regsvr32 exec. time > "$(OutDir)\regsvr32.trg"
|
||||
goto end
|
||||
:NOTNT
|
||||
echo Warning : Cannot register Unicode DLL on Windows 95
|
||||
:end
|
||||
|
||||
# End Custom Build
|
||||
|
||||
!ELSEIF "$(CFG)" == "simpleaudio - Win32 Unicode Release MinDependency"
|
||||
|
||||
# PROP BASE Use_MFC 0
|
||||
# PROP BASE Use_Debug_Libraries 0
|
||||
# PROP BASE Output_Dir "ReleaseUMinDependency"
|
||||
# PROP BASE Intermediate_Dir "ReleaseUMinDependency"
|
||||
# PROP BASE Target_Dir ""
|
||||
# PROP Use_MFC 0
|
||||
# PROP Use_Debug_Libraries 0
|
||||
# PROP Output_Dir "ReleaseUMinDependency"
|
||||
# PROP Intermediate_Dir "ReleaseUMinDependency"
|
||||
# PROP Ignore_Export_Lib 0
|
||||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /MT /W3 /O1 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_USRDLL" /D "_UNICODE" /D "_ATL_STATIC_REGISTRY" /D "_ATL_MIN_CRT" /Yu"stdafx.h" /FD /c
|
||||
# ADD CPP /nologo /MT /W3 /O1 /I "..\..\..\include" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_USRDLL" /D "_UNICODE" /D "_ATL_STATIC_REGISTRY" /D "_ATL_MIN_CRT" /Yu"stdafx.h" /FD /c
|
||||
# ADD MTL /I "..\..\..\idl"
|
||||
# ADD BASE RSC /l 0x409 /d "NDEBUG"
|
||||
# ADD RSC /l 0x409 /d "NDEBUG"
|
||||
BSC32=bscmake.exe
|
||||
# ADD BASE BSC32 /nologo
|
||||
# ADD BSC32 /nologo
|
||||
LINK32=link.exe
|
||||
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /dll /machine:I386
|
||||
# ADD LINK32 sapi.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /dll /machine:I386 /libpath:"..\..\..\lib\i386"
|
||||
# Begin Custom Build - Performing registration
|
||||
OutDir=.\ReleaseUMinDependency
|
||||
TargetPath=.\ReleaseUMinDependency\simpleaudio.dll
|
||||
InputPath=.\ReleaseUMinDependency\simpleaudio.dll
|
||||
SOURCE="$(InputPath)"
|
||||
|
||||
"$(OutDir)\regsvr32.trg" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
|
||||
if "%OS%"=="" goto NOTNT
|
||||
if not "%OS%"=="Windows_NT" goto NOTNT
|
||||
regsvr32 /s /c "$(TargetPath)"
|
||||
echo regsvr32 exec. time > "$(OutDir)\regsvr32.trg"
|
||||
goto end
|
||||
:NOTNT
|
||||
echo Warning : Cannot register Unicode DLL on Windows 95
|
||||
:end
|
||||
|
||||
# End Custom Build
|
||||
|
||||
!ENDIF
|
||||
|
||||
# Begin Target
|
||||
|
||||
# Name "simpleaudio - Win32 Debug"
|
||||
# Name "simpleaudio - Win32 Unicode Debug"
|
||||
# Name "simpleaudio - Win32 Release MinSize"
|
||||
# Name "simpleaudio - Win32 Release MinDependency"
|
||||
# Name "simpleaudio - Win32 Unicode Release MinSize"
|
||||
# Name "simpleaudio - Win32 Unicode Release MinDependency"
|
||||
# Begin Group "Source Files"
|
||||
|
||||
# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\simpleaudio.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\simpleaudio.def
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\simpleaudio.idl
|
||||
# ADD MTL /tlb ".\simpleaudio.tlb" /h "simpleaudio.h" /iid "simpleaudio_i.c" /Oicf
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\simpleaudio.rc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\SpAudioPlug.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\StdAfx.cpp
|
||||
# ADD CPP /Yc"stdafx.h"
|
||||
# End Source File
|
||||
# End Group
|
||||
# Begin Group "Header Files"
|
||||
|
||||
# PROP Default_Filter "h;hpp;hxx;hm;inl"
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Resource.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\SpAudioPlug.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\StdAfx.h
|
||||
# End Source File
|
||||
# End Group
|
||||
# Begin Group "Resource Files"
|
||||
|
||||
# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\SpAudioPlug.rgs
|
||||
# End Source File
|
||||
# End Group
|
||||
# End Target
|
||||
# End Project
|
||||
59
utils/sapi51/Samples/CPP/SimpleAudioDll/simpleaudio.idl
Normal file
59
utils/sapi51/Samples/CPP/SimpleAudioDll/simpleaudio.idl
Normal file
@@ -0,0 +1,59 @@
|
||||
// simpleaudio.idl : IDL source for simpleaudio.dll
|
||||
//
|
||||
|
||||
// This file will be processed by the MIDL tool to
|
||||
// produce the type library (simpleaudio.tlb) and marshalling code.
|
||||
|
||||
import "oaidl.idl";
|
||||
import "ocidl.idl";
|
||||
import "sapi.idl";
|
||||
|
||||
|
||||
typedef [hidden] enum DISPID_SpAudioPlug
|
||||
{
|
||||
DISPID_SAPInit = 1000,
|
||||
DISPID_SAPSetData,
|
||||
DISPID_SAPGetData
|
||||
} DISPID_SpAudioPlug;
|
||||
|
||||
|
||||
|
||||
[
|
||||
object,
|
||||
uuid(1CE52E86-6B75-4749-BBAC-3D23626DA468),
|
||||
dual,
|
||||
helpstring("ISpAudioPlug Interface"),
|
||||
pointer_default(unique)
|
||||
]
|
||||
interface ISpAudioPlug : IDispatch
|
||||
{
|
||||
|
||||
[helpstring("Init"), id(DISPID_SAPInit)]
|
||||
HRESULT Init([in] VARIANT_BOOL fWrite, [in] SpeechAudioFormatType FormatType);
|
||||
|
||||
[helpstring("SetData"), id(DISPID_SAPSetData)]
|
||||
HRESULT SetData([in] VARIANT vData, [out, retval] long * pWritten);
|
||||
|
||||
[helpstring("GetData"), id(DISPID_SAPGetData)]
|
||||
HRESULT GetData([out, retval] VARIANT* vData);
|
||||
};
|
||||
|
||||
[
|
||||
uuid(17709AA0-2512-4FFE-BB24-1F6C535DEBCA),
|
||||
version(1.0),
|
||||
helpstring("simpleaudio 1.0 Type Library")
|
||||
]
|
||||
library SIMPLEAUDIOLib
|
||||
{
|
||||
importlib("stdole32.tlb");
|
||||
importlib("stdole2.tlb");
|
||||
|
||||
[
|
||||
uuid(F0CB433F-9453-466A-A35E-95909872E2A8),
|
||||
helpstring("SpAudioPlug Class")
|
||||
]
|
||||
coclass SpAudioPlug
|
||||
{
|
||||
[default] interface ISpAudioPlug;
|
||||
};
|
||||
};
|
||||
93
utils/sapi51/Samples/CPP/SimpleAudioDll/simpleaudio.rc
Normal file
93
utils/sapi51/Samples/CPP/SimpleAudioDll/simpleaudio.rc
Normal file
@@ -0,0 +1,93 @@
|
||||
//Microsoft Developer Studio generated resource script.
|
||||
//
|
||||
#include "resource.h"
|
||||
|
||||
#define APSTUDIO_READONLY_SYMBOLS
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Generated from the TEXTINCLUDE 2 resource.
|
||||
//
|
||||
#include "winres.h"
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
#undef APSTUDIO_READONLY_SYMBOLS
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// English (U.S.) resources
|
||||
|
||||
#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU)
|
||||
#ifdef _WIN32
|
||||
LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
|
||||
#pragma code_page(1252)
|
||||
#endif //_WIN32
|
||||
|
||||
#ifdef APSTUDIO_INVOKED
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// TEXTINCLUDE
|
||||
//
|
||||
|
||||
1 TEXTINCLUDE DISCARDABLE
|
||||
BEGIN
|
||||
"resource.h\0"
|
||||
END
|
||||
|
||||
2 TEXTINCLUDE DISCARDABLE
|
||||
BEGIN
|
||||
"#include ""winres.h""\r\n"
|
||||
"\0"
|
||||
END
|
||||
|
||||
|
||||
3 TEXTINCLUDE DISCARDABLE
|
||||
BEGIN
|
||||
"\0"
|
||||
END
|
||||
|
||||
3 TEXTINCLUDE DISCARDABLE
|
||||
BEGIN
|
||||
"1 TYPELIB ""simpleaudio.tlb""\r\n"
|
||||
"#include ""version.rc2""\r\n""\0"
|
||||
END
|
||||
|
||||
|
||||
|
||||
#endif // APSTUDIO_INVOKED
|
||||
|
||||
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// REGISTRY
|
||||
//
|
||||
|
||||
IDR_SpAudioPlug REGISTRY DISCARDABLE "SpAudioPlug.rgs"
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// String Table
|
||||
//
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
IDS_PROJNAME "simpleaudio"
|
||||
IDS_SPAUDIOPLUG_DESC "SpAudioPlug Class"
|
||||
END
|
||||
|
||||
#endif // English (U.S.) resources
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
|
||||
|
||||
#ifndef APSTUDIO_INVOKED
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Generated from the TEXTINCLUDE 3 resource.
|
||||
//
|
||||
1 TYPELIB "simpleaudio.tlb"
|
||||
#include "version.rc2"
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
#endif // not APSTUDIO_INVOKED
|
||||
|
||||
45
utils/sapi51/Samples/CPP/SimpleAudioDll/version.rc2
Normal file
45
utils/sapi51/Samples/CPP/SimpleAudioDll/version.rc2
Normal file
@@ -0,0 +1,45 @@
|
||||
#ifndef _MAC
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Version
|
||||
//
|
||||
|
||||
VS_VERSION_INFO VERSIONINFO
|
||||
FILEVERSION 1,0,0,0
|
||||
PRODUCTVERSION 1,0,0,0
|
||||
FILEFLAGSMASK 0x3fL
|
||||
#ifdef _DEBUG
|
||||
FILEFLAGS 0x1L
|
||||
#else
|
||||
FILEFLAGS 0x0L
|
||||
#endif
|
||||
FILEOS 0x4L
|
||||
FILETYPE 0x2L
|
||||
FILESUBTYPE 0x0L
|
||||
BEGIN
|
||||
BLOCK "StringFileInfo"
|
||||
BEGIN
|
||||
BLOCK "040904b0"
|
||||
BEGIN
|
||||
VALUE "Comments", "\0"
|
||||
VALUE "CompanyName", "\0"
|
||||
VALUE "FileDescription", "simpleaudio Module\0"
|
||||
VALUE "FileVersion", "1, 0, 0, 0\0"
|
||||
VALUE "InternalName", "simpleaudio\0"
|
||||
VALUE "LegalCopyright", "Copyright 2001\0"
|
||||
VALUE "LegalTrademarks", "\0"
|
||||
VALUE "OLESelfRegister", "\0"
|
||||
VALUE "OriginalFilename", "simpleaudio.DLL\0"
|
||||
VALUE "PrivateBuild", "\0"
|
||||
VALUE "ProductName", "simpleaudio Module\0"
|
||||
VALUE "ProductVersion", "1, 0, 0, 0\0"
|
||||
VALUE "SpecialBuild", "\0"
|
||||
END
|
||||
END
|
||||
BLOCK "VarFileInfo"
|
||||
BEGIN
|
||||
VALUE "Translation", 0x409, 1200
|
||||
END
|
||||
END
|
||||
|
||||
#endif // !_MAC
|
||||
Reference in New Issue
Block a user