Skip to main content

WLXMediaPublishSubscribe.dll

Sourcesrc/WLXMediaPublishSubscribe/
CMake targetWLXMediaPublishSubscribe
TypeWin32 COM DLL
FamilyPlatform services targets

At a glance​

The publish/subscribe framework behind "Save movie → online service": enumerates publish targets (local file, DVD, online services), manages authentication and account info, and runs publish/subscribe jobs with progress and completion callbacks.

Public surface​

The COM quartet plus 21 flat PublishManager_* exports (WLXMediaPublishSubscribe.def):

GroupExports
LifecycleCreate, Destroy, Cleanup
TargetsEnumerateTargets, GetDefaultTarget, SetDefaultTarget, GetTargetName
AuthAuthenticate, IsAuthenticated, SignOut, RefreshToken, GetAccountInfo
StatusGetStatus, GetServiceStatus, GetSubscribeStatus, GetResult
JobsStartPublish, StartSubscribe, Cancel
CallbacksSetProgressCallback, SetCompleteCallback

All __stdcall (decorated @N).

Authentication model​

Authenticate/RefreshToken route through the identity layer; persistent tokens are never plaintext — see Credential handling. The original service plugins (Facebook, Flickr, Vimeo, YouTube) were separate DLLs; their binary analysis lives in analysis/PublishPlugins/.

Implementation notes​

  • Publish jobs report progress via the callback pair; Cancel is cooperative.
  • Contract-pinned factory + selected flat exports in tests/mmr-python.
  • Exercise app: apps/mediapublisher (submodule).

Analysis artifacts​

analysis/WLXMediaPublishSubscribe/, analysis/PublishPlugins/, analysis/PublishPluginsInterop/, analysis/WLFacebookPlugin/, analysis/WLFlickrPlugin/, analysis/WLVimeoPlugin/.