Можно ли как-то запустить cscript из своей программы?
кроме тупого CreateProcess с нужными параметрами?Можно с помощью COM. Надо найти тему Windows Script Interfaces в MSDN.
я что-то не могу понять, откуда взять COM-обёртку
я что-то не могу понять, откуда взять COM-обёрткуЯ не знаю, откуда взять COM обёртку для COM объекта. Сами COM объекты создаются по-старинке через CoCreateInstance
неее.. мне библиотеку типов подавай.
неее.. мне библиотеку типов подавай.Они не вшиты в jscript.dll и vbscript.dll?
Погугли, тема древняя на самом деле, а мне просто не охота.
// *********************************************************************//
// DispIntf: MathObj
// Flags: (4096) Dispatchable
// GUID: {3EEF9758-35FC-11D1-8CE4-00C04FC2B088}
// *********************************************************************//
MathObj = dispinterface
['{3EEF9758-35FC-11D1-8CE4-00C04FC2B088}']
function random: OleVariant; dispid 221;
function round(x: OleVariant): OleVariant; dispid 222;
function tan(x: OleVariant): OleVariant; dispid 225;
function pow(x: OleVariant; y: OleVariant): OleVariant; dispid 220;
function acos(x: OleVariant): OleVariant; dispid 209;
function atan2(x: OleVariant; y: OleVariant): OleVariant; dispid 212;
function atan(x: OleVariant): OleVariant; dispid 211;
function abs(x: OleVariant): OleVariant; dispid 208;
function asin(x: OleVariant): OleVariant; dispid 210;
function max(x: OleVariant; y: OleVariant): OleVariant; dispid 218;
function ceil(x: OleVariant): OleVariant; dispid 213;
function floor(x: OleVariant): OleVariant; dispid 216;
function log(x: OleVariant): OleVariant; dispid 217;
function cos(x: OleVariant): OleVariant; dispid 214;
function sin(x: OleVariant): OleVariant; dispid 223;
function sqrt(x: OleVariant): OleVariant; dispid 224;
function exp(x: OleVariant): OleVariant; dispid 215;
function min(x: OleVariant; y: OleVariant): OleVariant; dispid 219;
property SQRT1_2: OleVariant readonly dispid 207;
property SQRT2: OleVariant readonly dispid 206;
property PI: OleVariant readonly dispid 205;
property LN10: OleVariant readonly dispid 204;
property LN2: OleVariant readonly dispid 203;
property LOG10E: OleVariant readonly dispid 202;
property LOG2E: OleVariant readonly dispid 201;
property E: OleVariant readonly dispid 200;
end;
// *********************************************************************//
// DispIntf: NumberObj
// Flags: (4096) Dispatchable
// GUID: {3EEF9758-35FC-11D1-8CE4-00C04FC2B089}
// *********************************************************************//
NumberObj = dispinterface
['{3EEF9758-35FC-11D1-8CE4-00C04FC2B089}']
property MAX_VALUE: OleVariant readonly dispid 300;
property MIN_VALUE: OleVariant readonly dispid 301;
property NaN: OleVariant readonly dispid 302;
property NEGATIVE_INFINITY: OleVariant readonly dispid 303;
property POSITIVE_INFINITY: OleVariant readonly dispid 304;
end;
интерфейсов к парсеру и исполнителю нет
интерфейсов к парсеру и исполнителю нетНу погугли, ключевые слова-то есть:
Active Script Host, Microsoft Script Control, и так далее.
есть мифический activscp.h который вроде как должен быть в Platform SDK.
ща вижуалстудию поставлю - посмотрю, может там idl рядом есть
гуглю. пока ничего вразумительного нет. слова слишком мусорныеНу разбавь их чем-то вроде MFC, ATL или Delphi, если тебе не под C++ надо. Просто эта тема 1998-2003 годов, вряд ли сейчас будут везде мануалы и примеры валяться.
У меня когда-то был какой-то код, но валяется на винте дома. Но там использовался COM напрямую. Тебе нужен скорее всего Windows Script Control.
да, ларчик просто открывался. он и есть
Оставить комментарий
yolki
имеется в виду виндовый сервер сценариев.кроме тупого CreateProcess с нужными параметрами?
может, у него есть какая-то COM-обёртка? Я что-то не могу найти..