Article ID: 175504
Article Last Modified on 7/1/2004
#include <windows.h>
#include <tchar.h>
#include <iostream.h>
#include <subsmgr.h>
#include <stdio.h>
void main()
{
ISubscriptionMgr *pSubscriptionMgr;
CoInitialize(NULL);
HRESULT hr = CoCreateInstance(CLSID_SubscriptionMgr,
NULL,
CLSCTX_INPROC_SERVER,
IID_ISubscriptionMgr,
(void**)&pSubscriptionMgr);
if (SUCCEEDED(hr))
{
BOOL Bool;
BSTR bstrURL =
SysAllocString(L"http://test.microsoft.com/tst.cdf");
hr = pSubscriptionMgr->IsSubscribed(bstrURL, &Bool);
pSubscriptionMgr->Release();
char szBuffer[250];
TCHAR szURL[200];
WideCharToMultiByte(CP_ACP, 0, bstrURL, -1, szURL, 200, NULL,
NULL);
if (Bool)
wsprintf (szBuffer,"YES, you are subscribed to %s\n",szURL);
else
wsprintf (szBuffer,"NOPE, you are NOT subscribed to %s\n",
szURL);
cout << szBuffer;
SysFreeString (bstrURL);
}
CoUninitialize();
}
Private Sub Form_Load()
Dim ShlHlpr As ShellUIHelper
Set ShlHlpr = New ShellUIHelper
If ShlHlpr.IsSubscribed("http://test.microsoft.com/tst.cdf") Then
MsgBox "You're Subscribed!"
Else
MsgBox "You're not Subscribed!"
End If
End Sub
Please note that you must install the desktop update that comes with
Internet Explorer 4.0x in order to use the ShellUIHelper object.
<SCRIPT>
if (window.external.isSubscribed("http://test.microsoft.com/tst.cdf"))
alert ("You are subscribed!");
else
alert ("You are NOT subscribed!");
</SCRIPT>
Cross-frame security rules apply to this script call. Script in a document
can only check to see if the user is subscribed to sites on the same
domain.
Keywords: kbhowto kbchannels kbcode KB175504