Teď jste offline a čekáte, až se znova připojí internet.

Způsob volání Run() metody ovládacího prvku Microsoft Script v jazyce C++

DŮLEŽITÉ: Tento článek je přeložen pomocí softwaru na strojový překlad Microsoft. Nepřesný či chybný překlad lze opravit prostřednictvím technologie Community Translation Framework (CTF). Microsoft nabízí strojově přeložené, komunitou dodatečně upravované články, a články přeložené lidmi s cílem zajistit přístup ke všem článkům v naší znalostní bázi ve více jazycích. Strojově přeložené a dodatečně upravované články mohou obsahovat chyby ve slovníku, syntaxi a gramatice. Společnost Microsoft není odpovědná za jakékoliv nepřesnosti, chyby nebo škody způsobené nesprávným překladem obsahu nebo jeho použitím našimi zákazníky. Více o CTF naleznete na http://support.microsoft.com/gp/machine-translation-corrections/cs.

Projděte si také anglickou verzi článku: 229669
Souhrn
Tento článek demonstruje použití ovládacího prvku Microsoft Script pro volání funkce a podrutiny definované v jazyce JavaScript nebo VBScript.
Další informace
Ovládací prvek skript obsahuje čtyři metody. Jedním z nich je Run(), který spustí podprogram nebo funkce. Před voláním této metody zadat jazyk skriptu, nastavte AllowUI a přidejte následující skript do ovládacího prvku skriptu:
//---------------------- Begin ---------------------------#include <stdio.h>#import "C:\winnt\system32\msscript.ocx"  // msscript.ocx using namespace MSScriptControl;int main(void){	HRESULT hr = CoInitialize(NULL);	IScriptControlPtr pScriptControl(__uuidof(ScriptControl));	// Create a VARIANT array of VARIANTs which hold BSTRs	LPSAFEARRAY psa;	SAFEARRAYBOUND rgsabound[]  = { 3, 0 }; // 3 elements, 0-based	int i;	psa = SafeArrayCreate(VT_VARIANT, 1, rgsabound);	if (!psa)	{		return E_OUTOFMEMORY;	}	VARIANT vFlavors[3];	for (i = 0; i < 3; i++)	{		VariantInit(&vFlavors[i]);		V_VT(&vFlavors[i]) = VT_BSTR;	}	V_BSTR(&vFlavors[0]) = SysAllocString(OLESTR("Vanilla"));	V_BSTR(&vFlavors[1]) = SysAllocString(OLESTR("Chocolate"));	V_BSTR(&vFlavors[2]) = SysAllocString(OLESTR("Espresso Chip"));	long lZero = 0;	long lOne = 1;	long lTwo = 2;	// Put Elements to the SafeArray:	hr = SafeArrayPutElement(psa, &lZero,&vFlavors[0]);	hr = SafeArrayPutElement(psa, &lOne,&vFlavors[1]);	hr = SafeArrayPutElement(psa, &lTwo,&vFlavors[2]);	// Free Elements from the SafeArray:	for(i=0;i<3;i++)	{		SysFreeString(vFlavors[i].bstrVal);	}	// Set up Script control properties	pScriptControl->Language = "JScript";	pScriptControl->AllowUI = TRUE;	pScriptControl->AddCode(		"function MyStringFunction(Argu1,Argu2,Argu3)\ 		{  return \"hi there\" ;}" );	//  Call MyStringFunction with the two args:	_variant_t outpar = pScriptControl->Run("MyStringFunction", &psa);		// Convert VARIANT to C string:	_bstr_t bstrReturn = (_bstr_t)outpar;	char *pResult = (char *)bstrReturn;	// Print the result out:	printf("func=%s\n",pResult);		//  Clean up:	SafeArrayDestroy(psa);	CoUninitialize();	return(0);}// --------------- End -----------------------				
Odkazy
Informace o skriptu ovládacího prvku můžete najít na Skriptování web MSDN.

Další informace lze najít v následujících článcích znalostní báze Microsoft Knowledge Base:
184977 Oprava: ScriptControl zprávy neplatný jazyk VBScript v knihovně MFC

165967 PRB: Chyba skriptu při odkazování na jiné varianty matice
Spustit Scriptcontrol SafeArray

Upozornění: Tento článek je přeložený automaticky

Vlastnosti

ID článku: 229669 - Poslední kontrola: 07/20/2013 07:05:00 - Revize: 3.0

  • kbautomation kbhowto kbscript kbmt KB229669 KbMtcs
Váš názor
var Route = "76500"; var Ctrl = ""; document.write("