ocxファイルについての質問です。

例えばカレンダーを実現するXXXX.ocxファイルが、実際になんと言う名称なのか、その実現機能とファイル名との対応関係が一覧になっている情報はないでしょうか。

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:2008/03/30 05:10:58
  • 終了:2008/03/31 14:08:35

ベストアンサー

id:cx20 No.2

cx20回答回数606ベストアンサー獲得回数1072008/03/31 02:28:10

ポイント69pt

対応を表にしたいのですが、これは手作業しか無理なのでしょうか。

ActiveX(COM) の情報は、基本的には「レジストリ」+「タイプライブラリ」(OLEView.exe で表示できる内容)から取得できます。

これらの情報を取得するコンポーネントがありますので、それらを使用して一覧を作成することが可能です。

参考までにコンポーネントの一覧を取得するスクリプト(VBScript を使用)を作成してみました。

<スクリプトの概要>
1. レジストリ HKCR\CLSID\ 配下のレジストリを列挙
2. レジストリ HKCR\CLSID\{XXXXXXXX}\Control のものを ActiveX と判断する
3. コンポーネント情報(ProgID, HelpString 等)を取得
4. 結果をレコードセットに詰める
5. 1~4 を繰り返す
6. 結果をタブ区切り形式で表示

以下のスクリプトをコマンドラインで

CScript ExportOcxList.vbs //Nologo > out.txt

として、実行すると、結果をタブ区切りのファイルとして出力します。

  • ソース
' File Name : ExportOcxList.vbs
' Usage : CScript ExportOcxList.vbs //Nologo > out.txt

Option Explicit

' Registry
Const HKEY_CLASSES_ROOT = &H80000000

' ADO
Const adVarChar = 200
Const adFldIsNullable = 32

Call Main()

' メイン
Sub Main()
    ' 初期処理
    Dim strComputer
    strComputer = "." 
    
    ' ■ レジストリ / サブキーの列挙
    ' http://www.microsoft.com/japan/technet/scriptcenter/scripts/os/registry/osrgvb10.mspx
    Dim oReg
    Set oReg = GetObject("winmgmts:\\" & strComputer & "\root\default:StdRegProv") 
    
    ' ■ FILE: Tlbinf32.exe : Help Files for Tlbinf32.dll
    ' http://support.microsoft.com/kb/224331/en-us
    Dim tliApp
    Set tliApp = CreateObject("TLI.TLIApplication")
    
    ' データ格納用レコードセットの用意
    Dim rs
    Set rs = MakeRecordset()
    
    ' データ収集開始
    Dim strKeyPath
    strKeyPath = "CLSID"
    Dim arrSubKeys
    oReg.EnumKey HKEY_CLASSES_ROOT, strKeyPath, arrSubKeys 
    Dim subKey
    Dim strFindKey
    For Each subkey In arrSubKeys 
        If Left(subKey,1) = "{" And Right(subKey,1) = "}" Then
            strFindKey = strKeyPath & "\" & subkey
            If IsActiveX( oReg, strFindKey ) Then
                Call GetComInfo( tliApp, oReg, strFindKey, rs )
            End If
        End If
    Next
    
    ' データ表示
    Dim strDelimiter
    strDelimiter = vbTab ' 区切り文字を指定(vbTab : タブ文字)
    ShowRecordset rs, strDelimiter
    
    ' メモリ開放
    Set rs = Nothing
    Set tliApp = Nothing
    Set oReg = Nothing
End Sub

' ActiveX かどうかの判別
Function IsActiveX( oReg, strKeyPath )
    Dim bResult
    bResult = False
    
    Dim subkey
    Dim arrSubKeys
    oReg.EnumKey HKEY_CLASSES_ROOT, strKeyPath, arrSubKeys
    If IsNull( arrSubKeys ) Then
        IsActiveX = bResult
        Exit Function
    End If
    ' "HKCR\CLSID\{XXXXXXXX}\Control" がある COM を ActiveX と判断する
    For Each subkey In arrSubKeys 
        If LCase( subkey ) = "control" Then
            bResult = True
            Exit For
        End If
    Next

    IsActiveX = bResult
End Function

' データ格納用レコードセットの準備
Function MakeRecordset()
    Dim rs
    Set rs = CreateObject("ADODB.Recordset")
    rs.Fields.Append "CLSID",          adVarChar, 255, adFldIsNullable
    rs.Fields.Append "ProgID",         adVarChar, 255, adFldIsNullable
    rs.Fields.Append "InprocServer32", adVarChar, 255, adFldIsNullable
    rs.Fields.Append "LocalServer32",  adVarChar, 255, adFldIsNullable
    rs.Fields.Append "Description",    adVarChar, 255, adFldIsNullable
    rs.Fields.Append "HelpString",     adVarChar, 255, adFldIsNullable
    rs.Open
    Set MakeRecordset = rs
End Function

' データ表示
Sub ShowRecordset( rs, strDelimiter )
    On Error Resume Next

    rs.MoveFirst
    
    ' タイトル行
    Dim strLine
    strLine = GetFieldNameList( rs, strDelimiter )
    WScript.Echo strLine ' タイトル行を出力
    
    ' データ行
    While Not rs.BOF And Not rs.EOF
        strLine = GetFieldValueList( rs, strDelimiter )
        WScript.Echo strLine ' データ行を出力
        rs.MoveNext
    Wend
    
End Sub

' カラム名の一覧(1行分)を取得
Function GetFieldNameList( rs, strDelimiter )
    Dim strResult
    
    Dim bFirst
    bFirst = True
    Dim fld
    For Each fld In rs.Fields
        If bFirst Then
            strResult = Chr(34) & fld.Name & Chr(34)
            bFirst = False
        Else
            strResult = strResult & strDelimiter & Chr(34) & fld.Name & Chr(34)
        End If
    Next
    
    GetFieldNameList = strResult
End Function

' カラムデータの一覧(1行分)を取得
Function GetFieldValueList( rs, strDelimiter )
    Dim strResult
    
    Dim bFirst
    bFirst = True
    Dim fld
    For Each fld In rs.Fields
        If bFirst Then
            strResult = Chr(34) & fld.Value & Chr(34)
            bFirst = False
        Else
            strResult = strResult & strDelimiter & Chr(34) & fld.Value & Chr(34)
        End If
    Next
    
    GetFieldValueList = strResult
End Function

' COM 情報を取得
Function GetComInfo( tliApp, oReg, strKeyPath, ByRef rs )
    Dim strCLSID
    Dim strProgID
    Dim strInprocServer32
    Dim strLocalServer32
    Dim strDescription
    Dim strHelpString
    Dim strFilePath
    
    strCLSID          = Mid( strKeyPath, InStrRev( strKeyPath, "\" ) + 1 )
    strProgID         = GetKeyValue( oReg, strKeyPath & "\ProgID", "" )
    strInprocServer32 = GetKeyValue( oReg, strKeyPath & "\InprocServer32", "" )
    strLocalServer32  = GetKeyValue( oReg, strKeyPath & "\LocalServer32", "" )
    strDescription    = GetKeyValue( oReg, strKeyPath, "" )
    strFilePath = SelectFilePath( strInprocServer32, strLocalServer32 )
    strHelpString     = GetHelpString( tliApp, strFilePath )
    
    rs.AddNew()
    rs.Fields( "CLSID" )           = strCLSID
    rs.Fields( "ProgID" )          = strProgID
    rs.Fields( "InprocServer32" )  = strInprocServer32
    rs.Fields( "LocalServer32" )   = strLocalServer32
    rs.Fields( "Description" )     = strDescription
    rs.Fields( "HelpString" )      = strHelpString
    rs.Update()

End Function

' レジストリ値を取得
Function GetKeyValue( oReg, strKeyPath, strValueName )
    Dim strResult

    Dim strValue
    Call oReg.GetStringValue( HKEY_CLASSES_ROOT, strKeyPath, strValueName, strValue )
    strResult = strValue
    
    GetKeyValue = strResult
End Function

' パス名がセットされている方を選択
Function SelectFilePath( strFileName1, strFileName2 )
    Dim strResult
    
    If Len( strFileName1) > 0 Then
        strResult = strFileName1
    Else
        strResult = strFileName2
    End If
    
    SelectFilePath = strResult
End Function

' 指定コンポーネントのヘルプ情報を取得
Function GetHelpString( tliApp, strFullPath )
    Dim strResult
    
    On Error Resume Next
    
    ' TypeLibInformation ActiveX オブジェクト (tlbinf32.dll) を使用してヘルプ情報を取得
    Dim tli
    Set tli = tliApp.TypeLibInfoFromFile( strFullPath )
    If Err.Number > 0 Then
        strResult = ""
    Else
        strResult = tli.HelpString
    End If
    Set tli = Nothing
    
    GetHelpString = strResult
End Function
  • 実行例(一部を抜粋)
CLSID ProgID InprocServer32 LocalServer32 Description HelpString
{612A8624-0FB3-11CE-8747-524153480004} COMCTL.Toolbar.1 C:\WINDOWS\system32\comctl32.ocx
Microsoft Toolbar Control, version 5.0 (SP2) Microsoft Windows Common Controls 5.0 (SP2)
{66833FE6-8583-11D1-B16A-00C0F0283628} MSComctlLib.Toolbar.2 C:\WINDOWS\system32\mscomctl.ocx
Microsoft Toolbar Control, version 6.0 Microsoft Windows Common Controls 6.0 (SP6)
{0713E8A2-850A-101B-AFC0-4210102A8DA7} COMCTL.TreeCtrl.1 C:\WINDOWS\system32\comctl32.ocx
Microsoft TreeView Control, version 5.0 (SP2) Microsoft Windows Common Controls 5.0 (SP2)
{C74190B6-8589-11D1-B16A-00C0F0283628} MSComctlLib.TreeCtrl.2 C:\WINDOWS\system32\mscomctl.ocx
Microsoft TreeView Control, version 6.0 Microsoft Windows Common Controls 6.0 (SP6)
{603C7E80-87C2-11D1-8BE3-0000F8754DA1} MSComCtl2.UpDown.2 C:\WINDOWS\system32\MSCOMCT2.OCX
Microsoft UpDown Control 6.0 (SP6) Microsoft Windows Common Controls-2 6.0 (SP6)
{026371C0-1B7C-11CF-9D53-00AA003C9CB6} ComCtl2.UpDown.1 C:\WINDOWS\system32\COMCT232.OCX
Microsoft UpDown Control, version 5.0 (SP2) Microsoft Windows Common Controls-2 5.0 (SP2)
{8856F961-340A-11D0-A96B-00C04FD705A2} Shell.Explorer.2 C:\WINDOWS\system32\ieframe.dll
Microsoft Web Browser Microsoft Internet Controls
{248DD896-BB45-11CF-9ABC-0080C7E7B78D} MSWinsock.Winsock.1 C:\WINDOWS\system32\MSWINSCK.OCX
Microsoft WinSock Control, version 6.0 (SP6) Microsoft Winsock Control 6.0 (SP6)
{00E1DB59-6EFD-4CE7-8C0A-2DA3BCAAD9C6} MicrosoftWorks.WkImgSrv.WksImagingServer.6 C:\Program Files\Microsoft Works\wkimgsrv.dll
Microsoft Works Imaging Server WkImgSrv 1.0 Type Library
{8E27C92B-1264-101C-8A2F-040224009C02} MSCAL.Calendar.7 C:\Program Files\Microsoft Office\OFFICE11\MSCAL.OCX
Microsoft カレンダー コントロール 11.0 Microsoft Calendar Control 11.0
{D9347033-9612-11D1-9D75-00C04FCC8CDC} BARCODE.BarCodeCtrl.1 C:\Program Files\Microsoft Office\OFFICE11\1041\MSBCODE9.OCX
Microsoft バーコード コントロール 9.0 Microsoft Access BarCode Control 9.0
{67331D85-BE17-42f6-8D3F-47B8E8B26637} MigrationWizard.OOBE.1 C:\WINDOWS\system32\SHELL32.dll
Migration Wizard OOBE Automation Object Microsoft Shell Controls And Automation
  • 参考情報
■ [VB] Visual Basic 6.0 に添付されている ActiveX コントロール一覧
http://support.microsoft.com/kb/412577/ja
■ [VB] ActiveX コンポーネントで作成されるレジストリ エントリ
http://support.microsoft.com/kb/183771/ja
■ レジストリ / サブキーの列挙
http://www.microsoft.com/japan/technet/scriptcenter/scripts/os/r...
■ FILE: Tlbinf32.exe : Help Files for Tlbinf32.dll
http://support.microsoft.com/kb/224331/en-us
■ ADO API リファレンス
http://msdn.microsoft.com/library/ja/jpado260/htm/mdmscadoapiref...
id:clinejp

完璧すぎる回答いただきましてなんだか恐縮です。

大変ありがとうございました。

今後ともよろしくお願いいたします。

2008/03/31 14:06:48

その他の回答(2件)

id:tarutatta No.1

tarutatta回答回数20ベストアンサー獲得回数02008/03/30 11:31:07

ポイント10pt

Visual Studio 2008 Professional Edition しか手元にないので他のバージョンでは確認できませんでしたが、C# か VB プロジェクトを作成し、フォームデザイナを開いている状態で「ツールボックス」を右クリック(ツールボックスが開いていない場合は「表示(V)」→「ツールボックス(X)」でツールボックスを開けます)→「アイテムの選択(I)...」→「COM コンポーネント」タブで一覧を表示することができます。

おそらく、無料で配布されている Visual C# (Basic) 2008 Express Edition にも同様の機能があると思われます。

参考1:http://msdn2.microsoft.com/ja-jp/library/cby6tzh5(VS.80).aspx

参考2:http://www.microsoft.com/japan/msdn/vstudio/express/

id:clinejp

ありがとうございます。

VB6で確認しました。

対応を表にしたいのですが、これは手作業しか無理なのでしょうか。

実はそれが一番欲しいのです。

2008/03/30 14:20:56
id:cx20 No.2

cx20回答回数606ベストアンサー獲得回数1072008/03/31 02:28:10ここでベストアンサー

ポイント69pt

対応を表にしたいのですが、これは手作業しか無理なのでしょうか。

ActiveX(COM) の情報は、基本的には「レジストリ」+「タイプライブラリ」(OLEView.exe で表示できる内容)から取得できます。

これらの情報を取得するコンポーネントがありますので、それらを使用して一覧を作成することが可能です。

参考までにコンポーネントの一覧を取得するスクリプト(VBScript を使用)を作成してみました。

<スクリプトの概要>
1. レジストリ HKCR\CLSID\ 配下のレジストリを列挙
2. レジストリ HKCR\CLSID\{XXXXXXXX}\Control のものを ActiveX と判断する
3. コンポーネント情報(ProgID, HelpString 等)を取得
4. 結果をレコードセットに詰める
5. 1~4 を繰り返す
6. 結果をタブ区切り形式で表示

以下のスクリプトをコマンドラインで

CScript ExportOcxList.vbs //Nologo > out.txt

として、実行すると、結果をタブ区切りのファイルとして出力します。

  • ソース
' File Name : ExportOcxList.vbs
' Usage : CScript ExportOcxList.vbs //Nologo > out.txt

Option Explicit

' Registry
Const HKEY_CLASSES_ROOT = &H80000000

' ADO
Const adVarChar = 200
Const adFldIsNullable = 32

Call Main()

' メイン
Sub Main()
    ' 初期処理
    Dim strComputer
    strComputer = "." 
    
    ' ■ レジストリ / サブキーの列挙
    ' http://www.microsoft.com/japan/technet/scriptcenter/scripts/os/registry/osrgvb10.mspx
    Dim oReg
    Set oReg = GetObject("winmgmts:\\" & strComputer & "\root\default:StdRegProv") 
    
    ' ■ FILE: Tlbinf32.exe : Help Files for Tlbinf32.dll
    ' http://support.microsoft.com/kb/224331/en-us
    Dim tliApp
    Set tliApp = CreateObject("TLI.TLIApplication")
    
    ' データ格納用レコードセットの用意
    Dim rs
    Set rs = MakeRecordset()
    
    ' データ収集開始
    Dim strKeyPath
    strKeyPath = "CLSID"
    Dim arrSubKeys
    oReg.EnumKey HKEY_CLASSES_ROOT, strKeyPath, arrSubKeys 
    Dim subKey
    Dim strFindKey
    For Each subkey In arrSubKeys 
        If Left(subKey,1) = "{" And Right(subKey,1) = "}" Then
            strFindKey = strKeyPath & "\" & subkey
            If IsActiveX( oReg, strFindKey ) Then
                Call GetComInfo( tliApp, oReg, strFindKey, rs )
            End If
        End If
    Next
    
    ' データ表示
    Dim strDelimiter
    strDelimiter = vbTab ' 区切り文字を指定(vbTab : タブ文字)
    ShowRecordset rs, strDelimiter
    
    ' メモリ開放
    Set rs = Nothing
    Set tliApp = Nothing
    Set oReg = Nothing
End Sub

' ActiveX かどうかの判別
Function IsActiveX( oReg, strKeyPath )
    Dim bResult
    bResult = False
    
    Dim subkey
    Dim arrSubKeys
    oReg.EnumKey HKEY_CLASSES_ROOT, strKeyPath, arrSubKeys
    If IsNull( arrSubKeys ) Then
        IsActiveX = bResult
        Exit Function
    End If
    ' "HKCR\CLSID\{XXXXXXXX}\Control" がある COM を ActiveX と判断する
    For Each subkey In arrSubKeys 
        If LCase( subkey ) = "control" Then
            bResult = True
            Exit For
        End If
    Next

    IsActiveX = bResult
End Function

' データ格納用レコードセットの準備
Function MakeRecordset()
    Dim rs
    Set rs = CreateObject("ADODB.Recordset")
    rs.Fields.Append "CLSID",          adVarChar, 255, adFldIsNullable
    rs.Fields.Append "ProgID",         adVarChar, 255, adFldIsNullable
    rs.Fields.Append "InprocServer32", adVarChar, 255, adFldIsNullable
    rs.Fields.Append "LocalServer32",  adVarChar, 255, adFldIsNullable
    rs.Fields.Append "Description",    adVarChar, 255, adFldIsNullable
    rs.Fields.Append "HelpString",     adVarChar, 255, adFldIsNullable
    rs.Open
    Set MakeRecordset = rs
End Function

' データ表示
Sub ShowRecordset( rs, strDelimiter )
    On Error Resume Next

    rs.MoveFirst
    
    ' タイトル行
    Dim strLine
    strLine = GetFieldNameList( rs, strDelimiter )
    WScript.Echo strLine ' タイトル行を出力
    
    ' データ行
    While Not rs.BOF And Not rs.EOF
        strLine = GetFieldValueList( rs, strDelimiter )
        WScript.Echo strLine ' データ行を出力
        rs.MoveNext
    Wend
    
End Sub

' カラム名の一覧(1行分)を取得
Function GetFieldNameList( rs, strDelimiter )
    Dim strResult
    
    Dim bFirst
    bFirst = True
    Dim fld
    For Each fld In rs.Fields
        If bFirst Then
            strResult = Chr(34) & fld.Name & Chr(34)
            bFirst = False
        Else
            strResult = strResult & strDelimiter & Chr(34) & fld.Name & Chr(34)
        End If
    Next
    
    GetFieldNameList = strResult
End Function

' カラムデータの一覧(1行分)を取得
Function GetFieldValueList( rs, strDelimiter )
    Dim strResult
    
    Dim bFirst
    bFirst = True
    Dim fld
    For Each fld In rs.Fields
        If bFirst Then
            strResult = Chr(34) & fld.Value & Chr(34)
            bFirst = False
        Else
            strResult = strResult & strDelimiter & Chr(34) & fld.Value & Chr(34)
        End If
    Next
    
    GetFieldValueList = strResult
End Function

' COM 情報を取得
Function GetComInfo( tliApp, oReg, strKeyPath, ByRef rs )
    Dim strCLSID
    Dim strProgID
    Dim strInprocServer32
    Dim strLocalServer32
    Dim strDescription
    Dim strHelpString
    Dim strFilePath
    
    strCLSID          = Mid( strKeyPath, InStrRev( strKeyPath, "\" ) + 1 )
    strProgID         = GetKeyValue( oReg, strKeyPath & "\ProgID", "" )
    strInprocServer32 = GetKeyValue( oReg, strKeyPath & "\InprocServer32", "" )
    strLocalServer32  = GetKeyValue( oReg, strKeyPath & "\LocalServer32", "" )
    strDescription    = GetKeyValue( oReg, strKeyPath, "" )
    strFilePath = SelectFilePath( strInprocServer32, strLocalServer32 )
    strHelpString     = GetHelpString( tliApp, strFilePath )
    
    rs.AddNew()
    rs.Fields( "CLSID" )           = strCLSID
    rs.Fields( "ProgID" )          = strProgID
    rs.Fields( "InprocServer32" )  = strInprocServer32
    rs.Fields( "LocalServer32" )   = strLocalServer32
    rs.Fields( "Description" )     = strDescription
    rs.Fields( "HelpString" )      = strHelpString
    rs.Update()

End Function

' レジストリ値を取得
Function GetKeyValue( oReg, strKeyPath, strValueName )
    Dim strResult

    Dim strValue
    Call oReg.GetStringValue( HKEY_CLASSES_ROOT, strKeyPath, strValueName, strValue )
    strResult = strValue
    
    GetKeyValue = strResult
End Function

' パス名がセットされている方を選択
Function SelectFilePath( strFileName1, strFileName2 )
    Dim strResult
    
    If Len( strFileName1) > 0 Then
        strResult = strFileName1
    Else
        strResult = strFileName2
    End If
    
    SelectFilePath = strResult
End Function

' 指定コンポーネントのヘルプ情報を取得
Function GetHelpString( tliApp, strFullPath )
    Dim strResult
    
    On Error Resume Next
    
    ' TypeLibInformation ActiveX オブジェクト (tlbinf32.dll) を使用してヘルプ情報を取得
    Dim tli
    Set tli = tliApp.TypeLibInfoFromFile( strFullPath )
    If Err.Number > 0 Then
        strResult = ""
    Else
        strResult = tli.HelpString
    End If
    Set tli = Nothing
    
    GetHelpString = strResult
End Function
  • 実行例(一部を抜粋)
CLSID ProgID InprocServer32 LocalServer32 Description HelpString
{612A8624-0FB3-11CE-8747-524153480004} COMCTL.Toolbar.1 C:\WINDOWS\system32\comctl32.ocx
Microsoft Toolbar Control, version 5.0 (SP2) Microsoft Windows Common Controls 5.0 (SP2)
{66833FE6-8583-11D1-B16A-00C0F0283628} MSComctlLib.Toolbar.2 C:\WINDOWS\system32\mscomctl.ocx
Microsoft Toolbar Control, version 6.0 Microsoft Windows Common Controls 6.0 (SP6)
{0713E8A2-850A-101B-AFC0-4210102A8DA7} COMCTL.TreeCtrl.1 C:\WINDOWS\system32\comctl32.ocx
Microsoft TreeView Control, version 5.0 (SP2) Microsoft Windows Common Controls 5.0 (SP2)
{C74190B6-8589-11D1-B16A-00C0F0283628} MSComctlLib.TreeCtrl.2 C:\WINDOWS\system32\mscomctl.ocx
Microsoft TreeView Control, version 6.0 Microsoft Windows Common Controls 6.0 (SP6)
{603C7E80-87C2-11D1-8BE3-0000F8754DA1} MSComCtl2.UpDown.2 C:\WINDOWS\system32\MSCOMCT2.OCX
Microsoft UpDown Control 6.0 (SP6) Microsoft Windows Common Controls-2 6.0 (SP6)
{026371C0-1B7C-11CF-9D53-00AA003C9CB6} ComCtl2.UpDown.1 C:\WINDOWS\system32\COMCT232.OCX
Microsoft UpDown Control, version 5.0 (SP2) Microsoft Windows Common Controls-2 5.0 (SP2)
{8856F961-340A-11D0-A96B-00C04FD705A2} Shell.Explorer.2 C:\WINDOWS\system32\ieframe.dll
Microsoft Web Browser Microsoft Internet Controls
{248DD896-BB45-11CF-9ABC-0080C7E7B78D} MSWinsock.Winsock.1 C:\WINDOWS\system32\MSWINSCK.OCX
Microsoft WinSock Control, version 6.0 (SP6) Microsoft Winsock Control 6.0 (SP6)
{00E1DB59-6EFD-4CE7-8C0A-2DA3BCAAD9C6} MicrosoftWorks.WkImgSrv.WksImagingServer.6 C:\Program Files\Microsoft Works\wkimgsrv.dll
Microsoft Works Imaging Server WkImgSrv 1.0 Type Library
{8E27C92B-1264-101C-8A2F-040224009C02} MSCAL.Calendar.7 C:\Program Files\Microsoft Office\OFFICE11\MSCAL.OCX
Microsoft カレンダー コントロール 11.0 Microsoft Calendar Control 11.0
{D9347033-9612-11D1-9D75-00C04FCC8CDC} BARCODE.BarCodeCtrl.1 C:\Program Files\Microsoft Office\OFFICE11\1041\MSBCODE9.OCX
Microsoft バーコード コントロール 9.0 Microsoft Access BarCode Control 9.0
{67331D85-BE17-42f6-8D3F-47B8E8B26637} MigrationWizard.OOBE.1 C:\WINDOWS\system32\SHELL32.dll
Migration Wizard OOBE Automation Object Microsoft Shell Controls And Automation
  • 参考情報
■ [VB] Visual Basic 6.0 に添付されている ActiveX コントロール一覧
http://support.microsoft.com/kb/412577/ja
■ [VB] ActiveX コンポーネントで作成されるレジストリ エントリ
http://support.microsoft.com/kb/183771/ja
■ レジストリ / サブキーの列挙
http://www.microsoft.com/japan/technet/scriptcenter/scripts/os/r...
■ FILE: Tlbinf32.exe : Help Files for Tlbinf32.dll
http://support.microsoft.com/kb/224331/en-us
■ ADO API リファレンス
http://msdn.microsoft.com/library/ja/jpado260/htm/mdmscadoapiref...
id:clinejp

完璧すぎる回答いただきましてなんだか恐縮です。

大変ありがとうございました。

今後ともよろしくお願いいたします。

2008/03/31 14:06:48
id:tarutatta No.3

tarutatta回答回数20ベストアンサー獲得回数02008/03/31 10:53:19

ポイント15pt

Visual Studio の表ですが、ListView to CSV というのを使ってみたところ上手く取得できました。

CSV 形式で出力されるので、エクセルで簡単に加工できると思います。

id:clinejp

なるほど、こういう手もあるのですね。

他の用途にも使えますね。

ありがとうございます。

2008/03/31 14:07:59

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません