08/08/30 18:10:46
>>485
解決しました~
なんかスパイウェアのせいでなってたみたいで駆除した
後やってみると、みごとにパーフェクトでした。
490:デフォルトの名無しさん
08/12/13 01:44:03
質問です。
今WSHでやっている処理のうち、あまりにも重い一部の処理を
ネイティブコードに移そうと考えています。
そのために、そのコードとのインターフェースを取るため、
これをCOMコンポーネント?にしたいのですが…
目的としては、単に処理をバイナリに移譲するだけなので、
filesystemオブジェクトのように不可視なものでよく、
単に数個の関数と、コールバックによるイベント処理と、
例外発生処理だけを実装したいのです。
なんか、良い資料とか、本とかないでしょうか?
教えてください偉い人。
491:デフォルトの名無しさん
08/12/13 13:15:52
URLリンク(winofsql.jp)
492:デフォルトの名無しさん
08/12/17 01:17:39
>>491
どうも、
おかげで、jscriptから自作オブジェクトの関数が実行できました。
ただ、まだ自作オブジェクトからjscriptのメソッドをコールバックで
実行する方法がわかりません。
なにかヒントになるような情報を教えてください偉い人・・・
ちなみに、VC++.net 2003?使ってます…
493:490=492
08/12/17 01:18:26
一応質問なんでageときます・・・
494:デフォルトの名無しさん
08/12/17 02:04:58
jscriptのオブジェクトもIDispatchインターフェースを公開しているCOMだよ。
495: 【大吉】
09/01/01 18:58:30
>479 さんの質問と関連してるかもしれませんが
オブジェクトが持っているプロパティやメソッドを
一覧で取得するメソッドというものはあるのでしょうか?
496:デフォルトの名無しさん
09/01/01 19:21:05
URLリンク(jp.rubyist.net)
497:デフォルトの名無しさん
09/01/02 21:04:37
>>495
昔、会社の後輩がVBScriptかVBAかを使ってやってたんだけど、やり方を聞くのを忘れてた…。
>>496ではRubyのCOMラッパを使ってるのかな。
498:デフォルトの名無しさん
09/01/03 13:07:39
>>496-497
ありがとうございます
でも結局判りませんでした
ひきちぎりおねがいします
499:497
09/01/03 14:21:54
>>498
>ひきちぎり
-> ひきつづき?
「タイプライブラリ」「取得」でググってみると、いくつかサイトが引っ掛かったんで
この辺を調べてみては?
URLリンク(homepage1.nifty.com)
URLリンク(homepage1.nifty.com)
URLリンク(rararahp.cool.ne.jp)
TLBINF32.DLLを使えば何とかなりそうだけど、逆に詳細が分かったら教えて欲しいかも…。
500:デフォルトの名無しさん
09/01/03 16:46:16
ありがとうございます
なんとかなりそうです
うまくいったらご報告します
501:デフォルトの名無しさん
09/01/03 21:50:20
Set tlb=CreateObject("TLI.TLIApplication")
Set t=tlb.TypeLibInfoFromFile("C:\winnt\system32\dcomext.dll").TypeInfos
on error resume next
for i=1 to t.Count
WScript.Echo "========"
WScript.Echo t(i).Name
Set m=t(i).Members
for j=1 to m.Count
WScript.Echo " " & m(j).Name
next
next
502:デフォルトの名無しさん
09/01/03 22:05:32
Const acSysCmdAccessDir = 9 'As Long
Dim tl 'As TLI.TypeLibInfo
Dim eif 'As TLI.InterfaceInfo
Dim em 'As TLI.MemberInfo
idx = 0
Set tl = CreateObject("TLI.TLIApplication")
Set t = tl.TypeLibInfoFromFile(CreateObject("Access.Application").SysCmd(acSysCmdAccessDir) & "msacc9.olb")
'DoCmdはインターフェース(クラスではない)
for each eif In t.Interfaces
if eif.Name = "DoCmd" then
for each em in eif.Members
'使用できない隠しコマンド?は省く
if em.AttributeMask = 0 then
WScript.Echo em.Name
end if
next
exit for
end if
next
Set t = Nothing
Set tl = Nothing
503:デフォルトの名無しさん
09/01/03 22:18:50
URLリンク(moz-addon.g.hatena.ne.jp)
URLリンク(moz-addon.g.hatena.ne.jp)
URLリンク(www.roy.hi-ho.ne.jp)
URLリンク(www.roy.hi-ho.ne.jp)
URLリンク(pc.2ch.net) (807)
URLリンク(www.geocities.co.jp)
504:デフォルトの名無しさん
09/01/03 23:14:39
URLリンク(mail.python.org)
505:デフォルトの名無しさん
09/01/04 00:18:54
Function GetTypeName(TliVarType)
Select Case TliVarType
Case 8192 : sTemp = "Array"
Case 70 : sTemp = "Object"
Case 11 : sTemp = "Boolean"
Case 8 : sTemp = "String"
Case Else
GetTypeName=""
Exit Function
End Select
GetTypeName = " As " & sTemp
End Function
506:デフォルトの名無しさん
09/01/04 00:19:35
Set tlb = WScript.CreateObject("TLI.TLIApplication")
Set t = tlb.TypeLibInfoFromFile(CreateObject("Access.Application").SysCmd(acSysCmdAccessDir) & "msacc9.olb")
on error resume next
for each o in t.TypeInfos
s = ""
for each m in o.Members
s = s & m.Name & ";" & o.Name & "." & m.Name & "("
param = ""
for each p in m.Parameters
Set v = p.VarTypeInfo
s = GetTypeName(v.VarType)
if param = "" then
if p.Optional then
param = param & "[" & p.Name & s & "]"
else
param = param & p.Name & s
end if
else
if p.Optional then
param = param & "[, " & p.Name & s & "]"
else
param = param & ", " & p.Name & s
end if
end if
next
s = s & param & ")" & GetTypeName(m.ReturnType) & ";" & m.HelpString & vbCrLf
next
WScript.Echo s
next
507:デフォルトの名無しさん
09/01/04 09:31:02
>>501-506
いただきました
ありがとうございます
508:デフォルトの名無しさん
09/02/09 04:54:31
kaso
509:デフォルトの名無しさん
09/02/09 16:15:46
chinko