Thread Rating:
  • 241 Vote(s) - 2.72 Average
  • 1
  • 2
  • 3
  • 4
  • 5
ActiveX の情報をしりたい
01-28-2014, 11:17 AM,
#1
ActiveX の情報をしりたい
ActiveXObject を利用する際に、そのオブジェクトが、どんなメソッドを持っているかなどの情報を知りたいです。
どのような方法がありますか。
Reply
01-28-2014, 11:28 AM,
#2
RE: ActiveX の情報をしりたい
詳細は、仕様が記載されているサイトなどで確認すべきでしょうが、
いちおう、ActiveXObject から情報を取得できます。

Code:
{import * from CURL.GRAPHICS.ACTIVEX}

{define-proc public {get-active-x-info
                        xobj:ActiveXObject
                    }:StringBuf

    def strb = {StringBuf}

    def tb = "\t"
    def rtn = "\n"

    ||基本情報
    {strb.concat "【ActiveX基本情報】" & rtn }
    {strb.concat "CLSID" & tb & xobj.com-clsid  & rtn }
    {strb.concat "固有ID" & tb & xobj.com-identity & rtn }
    {strb.concat rtn }


    ||ゲッター
    {strb.concat "【ゲッター】" & rtn }
    {if xobj.getter-count > 0 then
        {strb.concat "名前" & tb & "型" & tb & "説明" & rtn }

    }
    {for i:int = 0  below xobj.getter-count do
      def  inf:ActiveXFieldInfo = {xobj.get-getter-info i}
        {strb.concat inf.name & tb & inf.type.type & inf.description & rtn }
    }
    {strb.concat rtn }

    ||セッター
    {strb.concat "【セッター】" & rtn }
    {if xobj.setter-count > 0 then
        {strb.concat "名前" & tb & "型" & tb & "説明" & rtn }
    }
    {for i:int = 0  below xobj.setter-count do
      def  inf:ActiveXFieldInfo = {xobj.get-setter-info i}
        {strb.concat inf.name & tb & inf.type.type & inf.description & rtn }
    }
    {strb.concat rtn }


    ||イベント
    {strb.concat "【イベント】" & rtn }
    {for i:int = 0  below xobj.event-count do
      def  inf:ActiveXMethodInfo  = {xobj.get-event-info i}
        {strb.concat "■名前" & tb & inf.name & rtn }
        {strb.concat " 戻値" & tb & inf.return-type.type & rtn }
        {strb.concat " 引数" }

        {if inf.arg-count > 0 then
            {strb.concat  rtn & tb & "型" & tb & "INパラメータ?" & tb & "OUTパラメータ?" & tb & "オプション?" & rtn }
         else
            {strb.concat tb & "なし" & rtn}
        }
        {for j:int = 0  below inf.arg-count do
            def arg-inf:ActiveXArgInfo = {inf.arg-type j}
            {strb.concat tb & arg-inf.type & tb & arg-inf.in? & tb & arg-inf.out? & tb & arg-inf.optional?  & rtn }
        }
        {strb.concat " 説明" & tb & inf.description & rtn }

    }
    {strb.concat rtn }



    {strb.concat "【メソッド】" & rtn }
    {for i:int = 0  below xobj.method-count do
        def  inf:ActiveXMethodInfo  = {xobj.get-method-info i}
        {strb.concat "■名前" & tb & inf.name & rtn }
        {strb.concat " 戻値" & tb & inf.return-type.type & rtn }
        {strb.concat " 引数" }

        {if inf.arg-count > 0 then
            {strb.concat  rtn & tb & "型" & tb & "INパラメータ?" & tb & "OUTパラメータ?" & tb & "オプション?" & rtn }
         else
            {strb.concat tb & "なし" & rtn}
        }
        {for j:int = 0  below inf.arg-count do
            def arg-inf:ActiveXArgInfo = {inf.arg-type j}
            {strb.concat tb & arg-inf.type & tb & arg-inf.in? & tb &arg-inf.out? & tb & arg-inf.optional?  & rtn }
        }
        {strb.concat " 説明" & tb & inf.description & rtn }

    }
    {strb.concat rtn }


    {return strb}

}

{def xobj =
    {ActiveXObject
        ClsId = |"{8E27C92B-1264-101C-8A2F-040224009C02}"|
    }
}

{def ta = {TextArea width = 4in, height = 5in}}
{CommandButton
    label = "対象のActiveXの情報を取得",
    {on Action do
        def strb = {get-active-x-info xobj}
        set ta.value = {strb.to-String}
    }
}

{value ta}
Reply


Possibly Related Threads...
Thread Author Replies Views Last Post
  ActiveX error in Curl8.0 alchimiste 4 5,980 09-01-2011, 07:38 PM
Last Post: alchimiste
Forum Jump:


Users browsing this thread:
1 Guest(s)

MyBB SQL Error

MyBB has experienced an internal SQL error and cannot continue.

SQL Error:
1017 - Can't find file: 'mybb_threadviews' (errno: 2)
Query:
INSERT INTO mybb_threadviews (tid) VALUES('1032')