|
open
The open command initializes a device. All MCI devices recognize this command.
wsprintf(lpstrCommand, "open %s %s %s", lpszDevice, lpszOpenFlags,
lpszFlags);
Parameters
lpszDevice
Identifier of an MCI device or device driver. This can be either a device name
(as given in the registry or the SYSTEM.INI file) or the filename of the
device driver. If you specify the filename of the device driver, you can optionally
include the .DRV extension, but you should not include the path to the file.
lpszOpenFlags
Flag that identifies what to initialize. The following table lists device
types that recognize the open command and the flags used by each type:
cdaudio
| alias device_alias
shareable
| type device_type
| digitalvideo
| alias device_alias
elementname
nostatic
parent hwnd
shareable
| style child
style overlapped
style popup
style style_type
type device_type
| overlay
| alias device_alias
parent hwnd
shareable
style child
| style overlapped
style popup
style style_type
type device_type
| sequencer
| alias device_alias
shareable
| type device_type
| | alias device_alias
shareable
| type device_type
| | alias device_alias
shareable
| type device_type
| waveaudio
| alias device_alias
buffer buffer_size
| shareable
type device_type
|
The following table lists the flags that can be specified in the lpszOpenFlags parameter and their meanings:
alias device_alias
| Specifies an alternate name for the given device. If specified, it must be
used as the device_id in subsequent commands.
| elementname
| Specifies the name of the device element (file) loaded when the device opens.
| buffer buffer_size
| Sets the size, in seconds, of the buffer used by the waveform-audio device.
The default size of the buffer is set when the waveform-audio device is installed
or configured. Typically the buffer size is set to 4 seconds. With the MCIWAVE
device, the minimum size is 2 seconds and the maximum size is 9 seconds.
| parent hwnd
| Specifies the window handle of the parent window.
| shareable
| Initializes the device or file as shareable. Subsequent attempts to open the
device or file fail unless you specify "shareable" in both the original and
subsequent open commands.
MCI returns an invalid device error if the device is already open and not
shareable.
The MCISEQ sequencer and MCIWAVE devices do not support shared files.
| style child
| Opens a window with a child window style.
| style overlapped
| Opens a window with an overlapped window style.
| style popup
| Opens a window with a pop-up window style.
| style style_type
| Indicates a window style.
| type device_type
| Specifies the device type of a file.
|
lpszFlags
Can be "wait", "notify", or both. For more information about these flags, see The Wait, Notify, and Test Flags.
Return Values
Returns zero if successful or an error otherwise.
Remarks
MCI reserves "cdaudio" for the CD audio device type, "videodisc" for the
videodisc device type, "sequencer" for the MIDI sequencer device type, "AVIVideo"
for the digital-video device type, and "waveaudio" for the waveform-audio device
type.
As an alternative to the "type" flag, MCI can select the device based on the
extension used by the file, as recorded in the registry or the [mci extension]
section of the SYSTEM.INI file.
MCI can open AVI files by using a file-interface pointer or a stream-interface
pointer. To open a file by using either type of interface pointer, specify an
at sign (@) followed by the interface pointer in place of the file or device
name for the lpszDevice parameter. For more information about the file and stream interfaces, see "AVIFile Functions and Macros ."
The following command opens the "mysound" device:
open new type waveaudio alias mysound buffer 6
With device name "new", the waveform driver prepares a new waveform resource.
The command assigns the device alias "mysound" and specifies a 6-second buffer.
You can eliminate the "type" flag if you combine the device name with the
filename. MCI recognizes this combination when you use the following syntax:
device_name!element_name
The exclamation point separates the device name from the filename. The
exclamation point should not be delimited by white spaces.
The following example opens the RIGHT.WAV file using the "waveaudio" device:
open waveaudio!right.wav
The MCIWAVE driver requires an asynchronous waveform-audio device.
Related Links
Software for Delphi and C++ Builder developers
Software for Visual Studio .NET developers
Software for Visual Basic 6 developers
Delphi Tips&Tricks
MegaDetailed.NET
TMS Scripter Studio Pro components for Delphi/C++Builder
More Online Helps
Win32 Programmer's Reference (win32.hlp)
OLE Programmer's Reference (ole.hlp)
Microsoft Windows Pen API Programmer's Reference (penapi.hlp)
Microsoft Windows Sockets 2 Reference (sock2.hlp)
Microsoft Windows Telephony API (TAPI) Programmer's Reference (tapi.hlp)
Unix Manual Pages
|