2009-09-21 8 views
0

Existe-t-il un équivalent C# du code ci-dessous?Equivalent C# de ce code C++

HRESULT hr; 
    ActiveXSite* pSite; 
    pSite = CAxWindowlessHost<CMainDlg>::CreateControlSite(L"AgControl.AgControl", NULL, IDC_AGCONTROL1); 
    if (pSite != NULL) 
    { 
     // disable right-click! 
     pSite->SetAllowRClick(false); 
     // set moniker URL 
     CComBSTR bstrUrl("file:///C:/Temp/SilverlightDemo.xap"); 
     pSite->SetUrl(bstrUrl); 

     PropertyParams props; 
     props.push_back(PropertyParam(L"Windowless", L"true")); 
     props.push_back(PropertyParam(L"MinRuntimeVersion", L"2.0.31005.0")); 
     props.push_back(PropertyParam(L"Source", static_cast<LPCWSTR>(bstrUrl))); 
     props.push_back(PropertyParam(L"InitParams", L"")); 
     hr = pSite->ActivateAx(rc, false, props); 
    } 
+0

Ajout des balises "activex" et "C#". – MartinStettner

Répondre

2

Il semble que vous souhaitiez intégrer une application Silverlight dans votre propre application de bureau. Je ne le faisais pas moi-même, mais il semble un peu lié à

Host silverlight in the Windows.Forms...

Essayez aussi googler « l'intégration dans silverlight WinForms ». Une possibilité serait d'intégrer un contrôle de navigateur Web et de charger l'application Silverlight dans celui-ci.

PS: Il n'y a certainement pas d'équivalent direct de votre code depuis ATL est un C++ - technologie ...

+0

>> Il semble que vous souhaitez intégrer une application Silverlight dans votre propre application de bureau J'ai essayé d'héberger AgControl à partir du composant COM en Winform mais cela ne fonctionne pas pour certaines raisons. Mais Windows Media Player fonctionne bien. Étrange. –

+0

ne veut pas utiliser SL2 OOB et le navigateur Web. Je vérifie les interfaces ISilverlightViewer, IXcpControlHost et IXcpControlHost2. Mes connaissances en C++ sont si limitées. :( –

0

En dehors de l'approche plutôt perverse d'essayer de faire une ligne pour la transcription en ligne en utilisant P/Invoke, la manière d'utiliser les objets COM natifs à partir de .net est via le Runtime Callable Wrapper

Questions connexes