Microsoft KB Archive/66950

{|
 * width="100%"|

Playing a Metafile into Another Metafile in Windows

 * }

Q66950

-

The information in this article applies to:


 * Microsoft Windows Software Development Kit (SDK) versions 3.0, 3.1

-

SUMMARY
Unlike Windows versions 2.x, versions 3.0 and 3.1 of Microsoft Windows permit an application to play a metafile into another metafile. Under Windows 3.0, the destination metafile must be a disk-based metafile. This restriction has been removed from Windows 3.1.

MORE INFORMATION
Under Windows 3.0, playing a metafile into a new memory metafile fails. The following is a code fragment that demonstrates the correct procedure for successfully playing a metafile into a new, disk-based metafile that is compatible with both Windows 3.0 and 3.1.

/ declare variables HANDLE hDestDC, hSrcHmf;

// get a handle to the source metafile hSrcHmf = GetMetaFile((LPSTR)&quot;SOURCE.WMF&quot;);

// create a disk-based destination metafile // NOTE: The parameter cannot be NULL. //      That would create a memory metafile. hDestDC = CreateMetaFile((LPSTR)&quot;DEST.WMF&quot;);

// play the source metafile into the newly created metafile PlayMetaFile(hDestDC, hSrcHmf) ;

// get rid of the source metafile DeleteMetaFile(hSrcHmf) ;

// close the destination metafile hSrcHmf = CloseMetaFile(hDestDC) ; At this point, the handle to the destination metafile can be used, or it can be deleted and retrieved later when it is needed.

Additional query words: 3.00 3.10

Keywords :

Issue type :

Technology : kbAudDeveloper kbWin3xSearch kbSDKSearch kbWinSDKSearch kbWinSDK300 kbWinSDK310