Ignore:
Timestamp:
Dec 20, 2019, 1:30:08 AM (3 years ago)
Author:
roman
Message:

Update and VBS test

Location:
trunk/Utilities/JsObjectDispatch
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/Utilities/JsObjectDispatch

    • Property svn:ignore
      •  

        old new  
        22*.aps
        33*.suo
         4.vs
  • trunk/Utilities/JsObjectDispatch/Foo.h

    r124 r919  
    11////////////////////////////////////////////////////////////
    2 // Copyright (C) Roman Ryltsov, 2008-2012
     2// Copyright (C) Roman Ryltsov, 2008-2012, 2019
    33// Created by Roman Ryltsov roman@alax.info
    4 //
    5 // $Id$
    64
    75#pragma once
    86
    97#include <atlstr.h>
     8#include <atlsafe.h>
    109#include "resource.h"       // main symbols
    1110#include "JsObjectDispatch_i.h"
     
    7271
    7372// IFoo
    74         STDMETHOD(Bar)(VARIANT vValue) throw()
     73        STDMETHOD(BarA)(VARIANT Value) throw()
    7574        {
    76                 ATLTRACE(_T("-------- vValue.vt 0x%x -------- -------- --------\n"), vValue.vt);
    77                 if(vValue.vt != VT_DISPATCH)
     75                ATLTRACE(_T("-------- Value.vt 0x%x -------- -------- --------\n"), Value.vt);
     76                if(Value.vt != VT_DISPATCH)
    7877                {
    79                         ATLTRACE(_T("vValue.lVal 0x%x\n"), vValue.lVal);
     78                        ATLTRACE(_T("Value.lVal 0x%x\n"), Value.lVal);
    8079                        return S_FALSE;
    8180                }
    82                 ATLASSERT(vValue.vt == VT_DISPATCH);
    83                 CComQIPtr<IDispatchEx> pDispatchEx = vValue.pdispVal;
     81                ATLASSERT(Value.vt == VT_DISPATCH);
     82                CComQIPtr<IDispatchEx> pDispatchEx = Value.pdispVal;
    8483                #if defined(_DEBUG)
    8584                if(pDispatchEx)
     
    9796                }
    9897                #endif // defined(_DEBUG)
    99                 //TraceProperty(vValue.pdispVal, (DISPID) DISPID_VALUE);
     98                //TraceProperty(Value.pdispVal, (DISPID) DISPID_VALUE);
    10099                for(DISPID nIdentifier = -1000; nIdentifier <= 1000; nIdentifier++)
    101                         TraceProperty(vValue.pdispVal, nIdentifier, FALSE);
     100                        TraceProperty(Value.pdispVal, nIdentifier, FALSE);
     101                return S_OK;
     102        }
     103        STDMETHOD(get_BarB)(VARIANT* Value) throw()
     104        {
     105                ATLASSERT(Value);
     106                CComSafeArray<VARIANT> Array;
     107                ATLVERIFY(SUCCEEDED(Array.Create(2, 0)));
     108                CComVariant ValueA(777, VT_I4);
     109                ATLVERIFY(SUCCEEDED(Array.SetAt(0, ValueA)));
     110                CComVariant ValueB(L"777-777");
     111                ATLVERIFY(SUCCEEDED(Array.SetAt(1, ValueB)));
     112                CComVariant VariantValue;
     113                VariantValue.vt = VT_ARRAY | VT_VARIANT;
     114                VariantValue.parray = Array.Detach();
     115                ATLVERIFY(SUCCEEDED(VariantValue.Detach(Value)));
    102116                return S_OK;
    103117        }
Note: See TracChangeset for help on using the changeset viewer.