Nikolay Sivov (@nsivov) commented about dlls/mfreadwrite/tests/mfplat.c:
+#define X(f) p##f = (void*)GetProcAddress(mfplat, #f) X(MFCreateMFByteStreamOnStream); #undef X
+#define X(f) p##f = (void*)GetProcAddress(mfsrcsnk, #f)
- X(MFCreateAVIMediaSink);
- X(MFCreateWAVEMediaSink);
+#undef X
+#define X(f) p##f = (void*)GetProcAddress(mf, #f)
- X(MFCreate3GPMediaSink);
- X(MFCreateADTSMediaSink);
- X(MFCreateASFMediaSink);
- X(MFCreateFMPEG4MediaSink);
- X(MFCreateMP3MediaSink);
- X(MFCreateMPEG4MediaSink);
Why do you need to check this explicitly? Doesn't it fail to create a writer?