![]() |
Chilkat HOME Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi DLL Go Java JavaScript Node.js Objective-C PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(Unicode C) JavaScript console using CallbacksSee more JavaScript ExamplesDemonstrates console output using Chilkat JavaScript with callbacks.Note: This example requires Chilkat v11.4.0 or greater.
#include <C_CkStringBuilderW.h> #include <C_CkJsW.h> #include <C_CkJsonObjectW.h> void js_ProgressInfo(const wchar_t *name, const wchar_t *value) { wprintf(L"%s: %s\n",name,value); } void ChilkatSample(void) { BOOL success; HCkStringBuilderW sbScript; HCkJsW js; void (*fnjsProgressInfo)(const wchar_t *name, const wchar_t *value) = js_ProgressInfo; HCkJsonObjectW result; success = FALSE; // This example demonstrates using the built-in console object. // The Javascript run in this example is shown below. // Load the JavaScript from a file. sbScript = CkStringBuilderW_Create(); success = CkStringBuilderW_LoadFile(sbScript,L"qa_data/js_tests/test_console.js",L"utf-8"); if (success == FALSE) { wprintf(L"%s\n",CkStringBuilderW_lastErrorText(sbScript)); CkStringBuilderW_Dispose(sbScript); return; } js = CkJsW_Create(); CkJsW_setProgressInfo(js, fnjsProgressInfo); result = CkJsonObjectW_Create(); // Run the JavaScript // Results (not console output) go to result. // Note: Eval returns the completion value of the script. This is generally the value of the last evaluated expression. // In this case, the last evaluated expression is console.log which does not calculate a value. Therefore, it returns undefined. success = CkJsW_Eval(js,sbScript,result); if (success == FALSE) { wprintf(L"%s\n",CkStringBuilderW_lastErrorText(sbScript)); CkStringBuilderW_Dispose(sbScript); CkJsW_Dispose(js); CkJsonObjectW_Dispose(result); return; } // We can look at the result, which is "undefined", which is normal and expected. wprintf(L"%s\n",CkJsonObjectW_emit(result)); // The result JSON is: {"type":"undefined","value":"undefined"} // The console output is received using ProgressInfo callbacks. // The output is: // log: Hello World, 248, 12.05 // // error: foo:bar baz // // warn: 1 2 3 // // log: %% %s // // log: myApp: { // "appName": "Example", // "version": 1, // "isDebug": true, // "supportedTypes": [ // "string", // "number", // "object" // ], // "settings": { // "maxWidgets": 1024, // "allowIO": true // } // } // // log: App: myApp (Version 1) // // {"type":"undefined","value":"undefined"} CkStringBuilderW_Dispose(sbScript); CkJsW_Dispose(js); CkJsonObjectW_Dispose(result); }
|
||||||
© 2000-2026 Chilkat Software, Inc. All Rights Reserved.