SAMPLE: SamScrpt.exe Demos Active Debugging in C++ ActiveX Script EngineID: Q216271
|
SamScrpt.exe is a sample that demonstrates how to implement Active Debugging in an ActiveX Script Engine built in straight C++. It is designed to demonstrate some of the more advanced features of Active Debugging, such as expression evaluation and variable windows.
The following file is available for download from the Microsoft
Software Library:
SamScrpt.exeRelease Date: Jan-29-1999
Q119591 How to Obtain Microsoft Support Files from Online ServicesThis sample demonstrates how to build an ActiveX Script Engine, including support for Active Debugging. ActiveX Scripting allows Hosts such as Internet Explorer to execute scripts without having to be concerned with the actual implementation of the language engine. Active Debugging builds on Active Scripting and enables debugger host applications, like the Microsoft Script Debugger, to provide comprehensive, language-independent testing and error correcting capabilities. Functionality such as breakpoints, expression evaluation, and data monitoring are all possible through the Active Debugging interfaces. Active Debugging also makes it possible to debug multiple scripts in different languages concurrently, making cross-language issues easier to locate and correct.
SamScrpt.exe | 301 KB |
---|---|
SampleScript.ncb | 193 KB |
DLLFunctions.cpp | 8 KB |
DLLFunctions.h | 1 KB |
Readme.txt | 3 KB |
SampleScript.def | 1 KB |
SampleScriptDocs.doc | 128 KB |
TestPage.htm | 6 KB |
SampleScript.dsw | 1 KB |
SampleScript.plg | 5 KB |
SampleScript.dsp | 10 KB |
SampleScript.opt | 53 KB |
rc1.rc | 1 KB |
resource.h | 3 KB |
rc1.aps | 22 KB |
English.cpp | 1 KB |
English.plg | 2 KB |
English.dsp | 4 KB |
DebugExpression.cpp | 13 KB |
DebugExpression.h | 2 KB |
DebugInstruction.cpp | 6 KB |
DebugInstruction.h | 2 KB |
DebugInterpreter.h | 4 KB |
DebugScript.h | 3 KB |
DebugStackedSymbolTable.cpp | 11 KB |
DebugStackedSymbolTable.h | 2 KB |
EDebugStackFrames.h | 2 KB |
EnumSymbols.cpp | 9 KB |
debugDepends.h | 4 KB |
EnumSymbols.h | 9 KB |
EDebugStackFrames.cpp | 9 KB |
DebugParser.h | 1 KB |
DebugParser.cpp | 3 KB |
EDebugCodeContexts.h | 2 KB |
DebugClassFactory.h | 2 KB |
DebugClassFactory.cpp | 5 KB |
SimpleHostBackup.h | 4 KB |
SimpleHostBackup.cpp | 26 KB |
DebugProperty.h | 2 KB |
DebugProperty.cpp | 10 KB |
EDebugCodeContexts.cpp | 9 KB |
DebugScript.cpp | 28 KB |
DebugErrorHandler.h | 2 KB |
DebugErrorHandler.cpp | 10 KB |
CScanner.h | 2 KB |
CScanner.cpp | 19 KB |
ActiveDebugTrace.h | 2 KB |
DebugInterpreter.cpp | 38 KB |
ExtendedDSFDescriptor.cpp | 13 KB |
ExtendedDSFDescriptor.h | 2 KB |
depends.h | 3 KB |
CInstruction.h | 2 KB |
CParserSet.h | 7 KB |
CProductions.h | 2 KB |
ScriptVariant.cpp | 20 KB |
ScriptVariant.h | 3 KB |
StackedSymbolTable.cpp | 6 KB |
StackedSymbolTable.h | 1 KB |
SymbolTable.h | 2 KB |
TStack.h | 2 KB |
CInterpreter.h | 2 KB |
ErrorHandler.h | 3 KB |
ErrorHandler.cpp | 6 KB |
InterpreterTrace.h | 1 KB |
CLexer.cpp | 23 KB |
CLexer.h | 7 KB |
CInstruction.cpp | 5 KB |
SymbolTable.cpp | 4 KB |
CParser.h | 6 KB |
CParser.cpp | 35 KB |
CInterpreter.cpp | 28 KB |
TList.h | 7 KB |
activeDepends.h | 3 KB |
CASInterpreter.h | 3 KB |
CEventHandler.h | 3 KB |
NamedItem.cpp | 5 KB |
NamedItem.h | 2 KB |
SampleClassFactory.cpp | 5 KB |
SampleClassFactory.h | 2 KB |
CASErrorHandler.cpp | 11 KB |
CASErrorHandler.h | 2 KB |
ActiveScriptTrace.h | 1 KB |
CEventHandler.cpp | 20 KB |
SampleScript.h | 5 KB |
SampleScript.cpp | 57 KB |
CASInterpreter.cpp | 32 KB |
ad1.lib | 19 KB |
activdbg.h | 323 KB |
activscp.h | 67 KB |
ad1ex.h | 39 KB |
dbgprop.h | 50 KB |
MULTINFO.H | 8 KB |
DISPEX.H | 31 KB |
HostInfo.h | 1 KB |
error C2065: 'INTERFACE_USES_DISPEX' : undeclared identifier
You need to modify the objsafe.h file in the Visual C++ Include directory. Find the definitions for the Option bits for IObjectSafety, and add definitions for INTERFACE_USES_DISPEX and INTERFACE_USES_SECURITY_MANAGER, as shown below. These bits are required by Internet Explorer.error C2065: 'INTERFACE_USES_SECURITY_MANAGER' : undeclared identifier
// Option bit definitions for IObjectSafety:
#define INTERFACESAFE_FOR_UNTRUSTED_CALLER 0x00000001
// Caller of interface may be untrusted
#define INTERFACESAFE_FOR_UNTRUSTED_DATA 0x00000002
// Data may be untrusted
#define INTERFACE_USES_DISPEX 0x00000004
// Object knows to use IDispatchEx
#define INTERFACE_USES_SECURITY_MANAGER 0x00000008
// Object knows to use IInternetHostSecurityManager
Keywords : kbfile kbsample kbAXScript kbGrpDSO
Version : winnt:5.0,6.0
Platform : winnt
Issue type :
Last Reviewed: July 9, 1999