探検
COM
■ このスレッドは過去ログ倉庫に格納されています
2007/01/10(水) 20:13:15
いざ語れや
198デフォルトの名無しさん
2008/04/15(火) 00:13:00 >>197
IEコンポーネントをC++から使う話はたまにWin32APIスレで見る。
.NETから各種COMコンポーネントを使う話もたまにC#やVB.NETのスレで見る。
あと、DirectXのことは当然DirectXのスレで扱われる。
質問はそっちで賄われるから、
その3つのスレはほとんど雑談くらいにしか使われないんだよね。
IEコンポーネントをC++から使う話はたまにWin32APIスレで見る。
.NETから各種COMコンポーネントを使う話もたまにC#やVB.NETのスレで見る。
あと、DirectXのことは当然DirectXのスレで扱われる。
質問はそっちで賄われるから、
その3つのスレはほとんど雑談くらいにしか使われないんだよね。
199デフォルトの名無しさん
2008/04/18(金) 01:20:01 雑談モード。
たしかMSHTML::IHTMLWindowだったか、QueryServiceというのがあったが、QueryInterfaceと何が違ったんだろう…。
どっちもIFを取得するという点では同じなのだが。何か長短があるんだろうか。
たとえば自分がComponent作るとき、QuerySeriviceでIF提供したほうがいいなって場面あるんだろか。
たしかMSHTML::IHTMLWindowだったか、QueryServiceというのがあったが、QueryInterfaceと何が違ったんだろう…。
どっちもIFを取得するという点では同じなのだが。何か長短があるんだろうか。
たとえば自分がComponent作るとき、QuerySeriviceでIF提供したほうがいいなって場面あるんだろか。
200デフォルトの名無しさん
2008/04/22(火) 15:39:39 IBindCtxとIMonikerの関係と、存在意義について教えてください。
201デフォルトの名無しさん
2008/04/22(火) 18:00:23 それらは、MkParseDisplayNameとBindToObjctや、
それをラップしたCoGetObjectなどのように
文字列からCOMオブジェクトを作るためのものだと俺は理解している。
IMonikerはその文字列をくるんだだけのインタフェース。
IBindCtxはオプションを指定するBIND_OPTSをくるんだだけのインタフェース。
実際にはもう少し高機能だろうけど。
文字列ってのは何でもあり。ファイルパスやURLもそうだし、
とあるExcelブックのあるセルを参照するのは
"C:\[hoge.xls]Sheet1!A5"みたいな感じだったと思う。
それをラップしたCoGetObjectなどのように
文字列からCOMオブジェクトを作るためのものだと俺は理解している。
IMonikerはその文字列をくるんだだけのインタフェース。
IBindCtxはオプションを指定するBIND_OPTSをくるんだだけのインタフェース。
実際にはもう少し高機能だろうけど。
文字列ってのは何でもあり。ファイルパスやURLもそうだし、
とあるExcelブックのあるセルを参照するのは
"C:\[hoge.xls]Sheet1!A5"みたいな感じだったと思う。
202200
2008/04/22(火) 18:45:43 >>201
ありがとうございます。
IBindCtxやIMonikerを引数に渡すAPIやInterfaceが多いのですが、
MSDNを何度読んでも、どういう時にどういう設定で使えばよいか良くわからず、困っています。
MSDNに、
The IBindCtx interface provides access to a bind context, ・・・
と書かれていますが、”bind context”とは何なのでしょうか?
ありがとうございます。
IBindCtxやIMonikerを引数に渡すAPIやInterfaceが多いのですが、
MSDNを何度読んでも、どういう時にどういう設定で使えばよいか良くわからず、困っています。
MSDNに、
The IBindCtx interface provides access to a bind context, ・・・
と書かれていますが、”bind context”とは何なのでしょうか?
203デフォルトの名無しさん
2008/04/22(火) 18:49:42 文字列からオブジェクトへの変換を行うバインダへのハンドルのようなもんと思えば
204デフォルトの名無しさん
2008/04/23(水) 07:47:16 >>199
自分の理解では。QueryInterfaceは、あくまでもそのオブジェクトが持つ機能を公開するもので。
QueryServiceは、そのオブジェクトが管理している別のオブジェクトを返すものだと思っている。
例えば、プラグインとかさ。
自分の理解では。QueryInterfaceは、あくまでもそのオブジェクトが持つ機能を公開するもので。
QueryServiceは、そのオブジェクトが管理している別のオブジェクトを返すものだと思っている。
例えば、プラグインとかさ。
205デフォルトの名無しさん
2008/04/23(水) 16:12:01 >>119
QueryInterface は自分自身の IUnknown を返さなくてはならない
(オブジェクトの寿命や同定とかいう観点から)という制約というか仕様なので、
要求された機能を持つ他のオブジェクト(かも知れない)のインタフェイスを
返すには使えないから。
QueryInterface は自分自身の IUnknown を返さなくてはならない
(オブジェクトの寿命や同定とかいう観点から)という制約というか仕様なので、
要求された機能を持つ他のオブジェクト(かも知れない)のインタフェイスを
返すには使えないから。
206デフォルトの名無しさん
2008/04/23(水) 17:03:26207デフォルトの名無しさん
2008/04/23(水) 19:07:22208デフォルトの名無しさん
2008/04/25(金) 00:15:14209デフォルトの名無しさん
2008/04/25(金) 01:37:41 ごめん、自己解決。なんで必要か分かった。
はじめから追加サービスがどれだけあるか決まってるならGetterでいいが、
今後の拡張にそってどれだけサービスが増えるか分からないので、名前引きにした、ということですな。
expandoみたいな考え方な。
だからPluginとかいう話もガイシュツだったわけね。賢いなぁ、アドバイスしてくれた人
はじめから追加サービスがどれだけあるか決まってるならGetterでいいが、
今後の拡張にそってどれだけサービスが増えるか分からないので、名前引きにした、ということですな。
expandoみたいな考え方な。
だからPluginとかいう話もガイシュツだったわけね。賢いなぁ、アドバイスしてくれた人
210デフォルトの名無しさん
2008/04/26(土) 01:29:06 COMコンポーネントのメソッドから、COMコンポーネント呼び出し元クライアントの
SID取って管理者権限か判断とかできるかな?
SID取って管理者権限か判断とかできるかな?
211デフォルトの名無しさん
2008/09/07(日) 09:08:57 COM勉強してるけど、楽しいなあ
212デフォルトの名無しさん
2008/09/07(日) 09:56:27 最初だけだよ・・・一定規模以上のプログラム作り出したら全てを放り投げたくなる
213デフォルトの名無しさん
2008/09/07(日) 10:50:31 Javaが90年代に鯖サイドであっという間に普及したのはCOMのめんどくささのおかげ
CORBAよりはましだけど
CORBAよりはましだけど
214デフォルトの名無しさん
2008/09/07(日) 18:37:14 何ズレた事言ってんだよw
215デフォルトの名無しさん
2008/10/22(水) 17:34:53 C#からCOMいじりしてると、なんか脳液がドクドク出てくるのが分かる
もうシェルインターフェイスだけで丼飯バクバク食えるぞ
自分がMだとは思わなかった
もうシェルインターフェイスだけで丼飯バクバク食えるぞ
自分がMだとは思わなかった
216デフォルトの名無しさん
2008/10/22(水) 18:26:23 C++からCOMいじると最強。 >これ、何の意味がある暗号インターフェース?
217デフォルトの名無しさん
2008/10/22(水) 18:31:43 これ、何語? >MFC
218デフォルトの名無しさん
2008/10/24(金) 13:03:42219デフォルトの名無しさん
2008/10/24(金) 19:23:32 C#ではExcelのオートメーションみたいにデフォルト引数を使いまくりだと死ねる。
220デフォルトの名無しさん
2008/10/27(月) 11:06:10 C#では重かったり、.net frameworkでサポートされてないのを
C++で書いてCOM化してC#から呼ぶのは使えるな。
C++で書いてCOM化してC#から呼ぶのは使えるな。
221デフォルトの名無しさん
2008/10/27(月) 11:10:24 ↑
C#とCOMを無きものにしたらどうよ?
C#とCOMを無きものにしたらどうよ?
222デフォルトの名無しさん
2008/10/27(月) 12:34:16 windowsでGUIアプリ作るのにC#って選択肢ははずせないしね・・・
さすがに、いまさらATLとかは辛い。
さすがに、いまさらATLとかは辛い。
223デフォルトの名無しさん
2008/10/27(月) 12:43:10 >windowsでGUIアプリ作るのにC#
外して下さい。
おながいします。
外して下さい。
おながいします。
224デフォルトの名無しさん
2008/10/30(木) 22:47:48 COM作ろうと思って、shobjidl.hインクルードしたんだが、多重定義のエラー
で、調べてみるとNO_WIN32_LEAN_AND_MEANをdefineすれば解決できるらしい
#define NO_WIN32_LEAN_AND_MEANしようが、コンパイルオプションに/D NO_WIN32_LEAN_AND_MEAN
つけようが、まだ多重定義エラーがでる・・・
解決策おしえてー;;
win xp sp3
vc++6
platform sdk 2003 server sp1
で、調べてみるとNO_WIN32_LEAN_AND_MEANをdefineすれば解決できるらしい
#define NO_WIN32_LEAN_AND_MEANしようが、コンパイルオプションに/D NO_WIN32_LEAN_AND_MEAN
つけようが、まだ多重定義エラーがでる・・・
解決策おしえてー;;
win xp sp3
vc++6
platform sdk 2003 server sp1
225デフォルトの名無しさん
2008/10/30(木) 23:04:27 WIN32_LEAN_AND_MEANを定義したままなんてことはないよな?
226デフォルトの名無しさん
2008/10/30(木) 23:08:44 >>225
はい。
ソースのほうは
#ifndef WIN32_LEAN_AND_MEAN
#define WIN32_LEAN_AND_MEAN
#endif
にしてるので・・・
はあ・・・・なんでだ・・・
なんだかんだで1日中調べてる・・・
どこかで、VC++6では2003年2月以降に発行されたplatform sdkは使えないとか
書いてあったけどそれは違うよね・・・?
はい。
ソースのほうは
#ifndef WIN32_LEAN_AND_MEAN
#define WIN32_LEAN_AND_MEAN
#endif
にしてるので・・・
はあ・・・・なんでだ・・・
なんだかんだで1日中調べてる・・・
どこかで、VC++6では2003年2月以降に発行されたplatform sdkは使えないとか
書いてあったけどそれは違うよね・・・?
227デフォルトの名無しさん
2008/10/30(木) 23:12:53228デフォルトの名無しさん
2008/10/30(木) 23:19:59 >>227
優先される?って?
/D WIN32_LEAN_AND_MEAN単独でも
#define WIN32_LEAN_AND_MEAN単独でも
どちらも同じように多重定義エラーでるんですよね・・・
ちなみに・・VC++6のコンパイルオプションだけど、
プロジェクト⇒設定⇒C/C++オプションのところに
/D WIN32_LEAN_AND_MEANを加えるですよね
優先される?って?
/D WIN32_LEAN_AND_MEAN単独でも
#define WIN32_LEAN_AND_MEAN単独でも
どちらも同じように多重定義エラーでるんですよね・・・
ちなみに・・VC++6のコンパイルオプションだけど、
プロジェクト⇒設定⇒C/C++オプションのところに
/D WIN32_LEAN_AND_MEANを加えるですよね
229デフォルトの名無しさん
2008/10/30(木) 23:29:32 >vc++6
>platform sdk 2003 server sp1
VCのバージョンを上げろゴラってことじゃないかと・・・
>platform sdk 2003 server sp1
VCのバージョンを上げろゴラってことじゃないかと・・・
230デフォルトの名無しさん
2008/10/30(木) 23:39:59231224,226,228
2008/10/31(金) 00:08:51 すみません。
すべてNO_WIN32_LEAN_AND_MEANです。
すべてNO_WIN32_LEAN_AND_MEANです。
232デフォルトの名無しさん
2008/11/10(月) 20:10:51 永遠なるCOMを称えてage
233デフォルトの名無しさん
2008/12/07(日) 02:34:42 Windowsの音量を変更するCOM教えてください。。。
すんません、こんな質問で。
すんません、こんな質問で。
234デフォルトの名無しさん
2008/12/08(月) 12:28:56 つ[http://www.google.co.jp/search?hl=ja&q=Windowsの音量を変更するCOM教えてください]
235デフォルトの名無しさん
2009/04/08(水) 22:12:02 "wshom.ocx"をimportしようとすると生成された.tlh,.tli でエラーが発生します
#import "C:\WINDOWS\system32\wshom.ocx" rename_namespace("XXX") named_guids
debug\wshom.tlh(1004) : error C2629: 'class _variant_t (' は不正です。
debug\wshom.tli(832) : warning C4003: マクロ 'GetFreeSpace' に指定された実引数の数が少なすぎます。
…
import以外にはなにもしていない(mainからreturnしているだけ)なのにこのようなエラーがでる理由がわかりません。
importするやり方が悪いのでしょうか?
#import "C:\WINDOWS\system32\wshom.ocx" rename_namespace("XXX") named_guids
debug\wshom.tlh(1004) : error C2629: 'class _variant_t (' は不正です。
debug\wshom.tli(832) : warning C4003: マクロ 'GetFreeSpace' に指定された実引数の数が少なすぎます。
…
import以外にはなにもしていない(mainからreturnしているだけ)なのにこのようなエラーがでる理由がわかりません。
importするやり方が悪いのでしょうか?
236デフォルトの名無しさん
2009/04/10(金) 19:40:45 ほしゅ
237235
2009/04/11(土) 21:35:32 ITypeLib ViewerからVBScript Regular Expression を*.IDLファイルに保存したら、
ファイルに出力されるインターフェースが途中までしか保存されません。
具体的には、IregExp2インターフェースの
interface IRegExp2 : IDispatch {
[id(0x00002711), propget]
HRESULT Pattern([out, retval] BSTR* pPattern);
[id(0x00002711), propput]
HRESULT Pattern([in] BSTR pPattern);
[id(0x00002712), propget]
HRESULT IgnoreCase([out, [EOF] ←[EOF]は出力されません。単にファイル終端なだけです
ここまででファイルの終端になっています。何が悪いんだろう・・・
ファイルに出力されるインターフェースが途中までしか保存されません。
具体的には、IregExp2インターフェースの
interface IRegExp2 : IDispatch {
[id(0x00002711), propget]
HRESULT Pattern([out, retval] BSTR* pPattern);
[id(0x00002711), propput]
HRESULT Pattern([in] BSTR pPattern);
[id(0x00002712), propget]
HRESULT IgnoreCase([out, [EOF] ←[EOF]は出力されません。単にファイル終端なだけです
ここまででファイルの終端になっています。何が悪いんだろう・・・
238デフォルトの名無しさん
2009/04/13(月) 02:42:25 >>237
最近同じところではまった気がする
結局、何が悪いかは分からなかったけど、ITypeLib View のウィンドウの右ペインで
テキスト選択 => コピー => エディタで貼り付け、
で回避した
ちなみにコピーは Ctrl+C
Ctrl+C のコピーできるなら、マウス右クリックの編集メニューサポートしとけよって…
最近同じところではまった気がする
結局、何が悪いかは分からなかったけど、ITypeLib View のウィンドウの右ペインで
テキスト選択 => コピー => エディタで貼り付け、
で回避した
ちなみにコピーは Ctrl+C
Ctrl+C のコピーできるなら、マウス右クリックの編集メニューサポートしとけよって…
239235
2009/04/14(火) 22:04:30 ありがとう!!!
手動コピペでうまくいった
手動コピペでうまくいった
240235
2009/04/14(火) 22:48:06 >>233
> Windowsの音量を変更するCOM教えてください。。。
> すんません、こんな質問で。
>
Dim objShell
Set objShell = CreateObject("Shell.Application.1")
objShell.ControlPanelItem("mmsys.cpl")
これでどうよ?コントロールパネル-サウンドとオーディオデバイスのプロパティ を出すだけだけど
> Windowsの音量を変更するCOM教えてください。。。
> すんません、こんな質問で。
>
Dim objShell
Set objShell = CreateObject("Shell.Application.1")
objShell.ControlPanelItem("mmsys.cpl")
これでどうよ?コントロールパネル-サウンドとオーディオデバイスのプロパティ を出すだけだけど
241235
2009/04/14(火) 23:23:57 APIでwaveOutSetVolume()ってのがあるみたいだな>>オーディオの調整
242デフォルトの名無しさん
2009/04/16(木) 13:13:27 はいはい
243デフォルトの名無しさん
2009/05/05(火) 15:20:06244デフォルトの名無しさん
2009/08/27(木) 04:41:21 あげ
2009/08/30(日) 05:14:08
COM形式の実行ファイルの話はこのスレでいいんですか
2009/08/30(日) 12:33:10
いいとは思うが、COM形式の実行ファイルって何だ?
2009/08/30(日) 12:47:30
command.com
2009/08/30(日) 13:10:03
いまさらそっちのCOMなのか
じゃあ違うな
個別のスレはなさそうだし、「スレ立てるまでもない質問はここで」とかで聞くしかないんじゃないの?
じゃあ違うな
個別のスレはなさそうだし、「スレ立てるまでもない質問はここで」とかで聞くしかないんじゃないの?
249デフォルトの名無しさん
2009/10/20(火) 05:39:50 office製品との連携にc++でcom(dll)作ってしまうのが良さそうと思ったけど、誰も使ってなさそうだな。orz
みんなvbaで済ませちゃってるっぽいな。vb回避したいのでいろいろ探してcomにたどり着いたのに。orz
それとももうcomは捨てて、まねーじcom(.net)のほうに逝っちゃったかな?
.netはcom使える様にする設定が面倒と思った。
みんなvbaで済ませちゃってるっぽいな。vb回避したいのでいろいろ探してcomにたどり着いたのに。orz
それとももうcomは捨てて、まねーじcom(.net)のほうに逝っちゃったかな?
.netはcom使える様にする設定が面倒と思った。
250デフォルトの名無しさん
2009/10/21(水) 05:21:57 もうだれもobaやってないみたいだなw
251デフォルトの名無しさん
2009/10/30(金) 12:34:24 Inside COMって絶版だったのか。
会社にあったから何とかなったけど、
XPCOMでの関連書籍にEssential COMとかあるのに、それも絶版とか・・・
会社にあったから何とかなったけど、
XPCOMでの関連書籍にEssential COMとかあるのに、それも絶版とか・・・
252デフォルトの名無しさん
2009/10/30(金) 12:43:45 Inside COM
には、
COMは誰も定義が言えないうえ今までなかったプログラミングの構造だが、
今後のプログラミングはこの構造になるって、
ばっちゃが書いてた。
には、
COMは誰も定義が言えないうえ今までなかったプログラミングの構造だが、
今後のプログラミングはこの構造になるって、
ばっちゃが書いてた。
253デフォルトの名無しさん
2009/10/31(土) 04:55:58 いまは.netの方向に進んでて、comは捨てられてるな。
254デフォルトの名無しさん
2009/11/02(月) 09:43:44 ドトネト進むというか迷走だがw
255デフォルトの名無しさん
2009/11/02(月) 16:10:20 com回帰来るの?
256デフォルトの名無しさん
2009/11/02(月) 16:33:30 そうならなくて、HTML5だろ、jk
257デフォルトの名無しさん
2009/11/12(木) 23:34:11 シェル拡張ってInprocServerじゃないとダメなの?
サンクも出来ないLocalServerなCOMも呼べないとかどうしようもないお荷物じゃねーか
サンクも出来ないLocalServerなCOMも呼べないとかどうしようもないお荷物じゃねーか
258デフォルトの名無しさん
2009/11/13(金) 16:08:58 >【IT】英ITサイトの「Microsoft製品のワースト10」、1位はあのOS[09/11/13]
>ttp://anchorage.2ch.net/test/read.cgi/bizplus/1258085902/
英ITニュースサイトV3.co.ukが、同サイトが選んだMicrosoft製品のワースト10を
発表した。
10位はMS-DOS 4.0、
9位はIE 5、
8位は「期待ほど革新的ではなかった」という理由でWindows 95、
7位はZune、
6位はBob(Windows 3.1/95にバンドルされたナビゲーションシステム)、
5位は「セキュリティ問題を引き起こした」という理由でActiveX、
4位はWindows Vista、
3位はVista Capable(Vista対応PCにロゴを付けるプログラム。実際はVista Capableは
Home Basicエディションにしか対応していなかった)、
2位はClippy(クリップの形をしたOfficeのマスコットキャラクター)、
1位はWindows Meだった。
ソースは
http://www.itmedia.co.jp/news/articles/0911/13/news028.html
Top 10 worst Microsoft products of all time(V3.co.uk)
http://www.v3.co.uk/v3/news/2252318/top-worst-microsoft-products
http://www.v3.co.uk/v3/news/2252318/top-worst-microsoft-products
http://www.v3.co.uk/v3/news/2252318/top-worst-microsoft-products?page=2
>ttp://anchorage.2ch.net/test/read.cgi/bizplus/1258085902/
英ITニュースサイトV3.co.ukが、同サイトが選んだMicrosoft製品のワースト10を
発表した。
10位はMS-DOS 4.0、
9位はIE 5、
8位は「期待ほど革新的ではなかった」という理由でWindows 95、
7位はZune、
6位はBob(Windows 3.1/95にバンドルされたナビゲーションシステム)、
5位は「セキュリティ問題を引き起こした」という理由でActiveX、
4位はWindows Vista、
3位はVista Capable(Vista対応PCにロゴを付けるプログラム。実際はVista Capableは
Home Basicエディションにしか対応していなかった)、
2位はClippy(クリップの形をしたOfficeのマスコットキャラクター)、
1位はWindows Meだった。
ソースは
http://www.itmedia.co.jp/news/articles/0911/13/news028.html
Top 10 worst Microsoft products of all time(V3.co.uk)
http://www.v3.co.uk/v3/news/2252318/top-worst-microsoft-products
http://www.v3.co.uk/v3/news/2252318/top-worst-microsoft-products
http://www.v3.co.uk/v3/news/2252318/top-worst-microsoft-products?page=2
259デフォルトの名無しさん
2010/01/30(土) 22:24:33 VC++ のキーワード __hook で COM のイベントのソースとハンドラを繋げる仕組みがありますが、
__hook を使わず、COM 系関数などで完全に再現できるものでしょうか。
__hook を使わず、COM 系関数などで完全に再現できるものでしょうか。
260デフォルトの名無しさん
2010/02/05(金) 18:06:08 いろいろ調べたところ、
__hook と同等の機能かはわかりませが、
IConnectionPointContainer インターフェイスを用いることで、
__hook を使わなくても COM のサーバーとクライアントを
イベントで関連づけることができました。
お騒がせししました。
__hook と同等の機能かはわかりませが、
IConnectionPointContainer インターフェイスを用いることで、
__hook を使わなくても COM のサーバーとクライアントを
イベントで関連づけることができました。
お騒がせししました。
261デフォルトの名無しさん
2010/02/05(金) 18:56:45 おお
262デフォルトの名無しさん
2010/09/01(水) 22:42:43 COMインタフェース登録時のパス指定について。
動作&開発環境:Windows XP Embedded & VC++2005
HogeHogeCom.dllを作成し、IHogeObjectを作りました。
dllと同一フォルダにバッチファイルを作成し、以下を記述しました。
regsvr32 HogeHoge.dll
バッチファイルを叩いたところ、
「HogeHoge.dllのDllRegisterServerは成功しました。」と表示されますが、
レジストリ登録が失敗しています。
CoCreateInstance()で0x80040154 (REGDB_E_CLASSNOTREG)が返されます。
regsvr32 に相対パスではなく絶対パスを指定すると、
レジストリ登録が成功します。
CoCreateInstance()で0 (S_OK)が返されます。
質問の内容ですが、
regsvr32でCOM登録する場合は、絶対パスを指定しないとダメなのでしょうか?
動作&開発環境:Windows XP Embedded & VC++2005
HogeHogeCom.dllを作成し、IHogeObjectを作りました。
dllと同一フォルダにバッチファイルを作成し、以下を記述しました。
regsvr32 HogeHoge.dll
バッチファイルを叩いたところ、
「HogeHoge.dllのDllRegisterServerは成功しました。」と表示されますが、
レジストリ登録が失敗しています。
CoCreateInstance()で0x80040154 (REGDB_E_CLASSNOTREG)が返されます。
regsvr32 に相対パスではなく絶対パスを指定すると、
レジストリ登録が成功します。
CoCreateInstance()で0 (S_OK)が返されます。
質問の内容ですが、
regsvr32でCOM登録する場合は、絶対パスを指定しないとダメなのでしょうか?
263デフォルトの名無しさん
2010/09/02(木) 00:07:50 環境変数
264デフォルトの名無しさん
2011/02/25(金) 23:01:19.09 蘇れ
265デフォルトの名無しさん
2011/02/26(土) 19:19:28.35 >>262
レジストリ登録ファイル使えばええがな。
アレと、継承ツリーを遡り、IIDをマッピングする独自テンプレート
書いておくとATL無しでも簡単にCOMサーバー書けるぞ。
話は変わるが.netってCLSID付きのクラスや、共有のインスタンスって
作れるの?
レジストリ登録ファイル使えばええがな。
アレと、継承ツリーを遡り、IIDをマッピングする独自テンプレート
書いておくとATL無しでも簡単にCOMサーバー書けるぞ。
話は変わるが.netってCLSID付きのクラスや、共有のインスタンスって
作れるの?
266デフォルトの名無しさん
2011/03/03(木) 00:26:26.58267デフォルトの名無しさん
2011/03/12(土) 21:46:04.54 IDispatchって簡単に言うとなんですか?
268デフォルトの名無しさん
2011/03/13(日) 04:23:01.91 WM_COMMAND
269デフォルトの名無しさん
2011/03/13(日) 06:54:02.94 ポリモーフィズム
270デフォルトの名無しさん
2011/03/18(金) 23:42:19.02 ん、つまり
いみがわからない
いみがわからない
271デフォルトの名無しさん
2011/03/26(土) 23:15:49.47 馬鹿にはcomは無理。
272デフォルトの名無しさん
2011/04/09(土) 17:50:41.49 .netでCOMインターフェイス実装して
なんも知らないユーザーがMarshal.ReleaseComObjectすると例外でるよね
だってCOMオブジェクトじゃないもん!って怒られちゅうんだ
なんも知らないユーザーがMarshal.ReleaseComObjectすると例外でるよね
だってCOMオブジェクトじゃないもん!って怒られちゅうんだ
273天使 ◆uL5esZLBSE
2011/07/06(水) 07:02:42.16 これ ; デリミタっていうんだけどさ、よく打ち忘れるよね
Rubyだとつけなくてよくなるんだけど
ゴミだな
Rubyだとつけなくてよくなるんだけど
ゴミだな
274デフォルトの名無しさん
2011/07/06(水) 08:54:45.07 キチガイはすっこんでろ
275デフォルトの名無しさん
2011/09/01(木) 21:25:48.66 COMあげ
276デフォルトの名無しさん
2011/09/02(金) 22:09:39.14 MFCのWindowsアプリから、COMのアウトプロセスサーバーのメソッド呼び出し中に
Windowsメッセージに割り込まれることがありますが、これを防ぐ方法はありますか?
現状は、COMの呼び出し中にフラグを立てて、Windowsメッセージ受信時にフラグONなら
同メッセージをPostMessageし直して処理を保留としていますが、スマートではないので。
Windowsメッセージに割り込まれることがありますが、これを防ぐ方法はありますか?
現状は、COMの呼び出し中にフラグを立てて、Windowsメッセージ受信時にフラグONなら
同メッセージをPostMessageし直して処理を保留としていますが、スマートではないので。
277デフォルトの名無しさん
2011/09/02(金) 22:22:13.72 充分スマートです
278デフォルトの名無しさん
2011/09/02(金) 22:45:33.25279デフォルトの名無しさん
2011/09/02(金) 22:56:48.28 はい
がんがって
がんがって
280デフォルトの名無しさん
2011/10/11(火) 18:24:40.07 qttabbarとかのソースみたらCOMだらけだったんですが
ああいうのってどこで学習したらいいんでしょうか
ああいうのってどこで学習したらいいんでしょうか
281デフォルトの名無しさん
2011/10/12(水) 03:02:03.58 ttp://www.amazon.co.jp/dp/4881357557/
282デフォルトの名無しさん
2011/10/12(水) 11:55:53.42 基本的に今の時代0からOLE/COM学習するの無理っぽくね?
昔俺が手がかりにしたMSの仕様書は今探してもことごとく抹消されてた。
Inside OLEとか絶版だし、手に入れても内容がバラけてて網羅性もない。
やっぱりあの仕様書群読むのが一番手っ取り早いはずなんだけど。
昔俺が手がかりにしたMSの仕様書は今探してもことごとく抹消されてた。
Inside OLEとか絶版だし、手に入れても内容がバラけてて網羅性もない。
やっぱりあの仕様書群読むのが一番手っ取り早いはずなんだけど。
283デフォルトの名無しさん
2011/10/27(木) 10:58:54.79 http://msdn.microsoft.com/en-us/library/ee663262(v=VS.85).aspx
284デフォルトの名無しさん
2011/11/28(月) 20:38:46.98 シェルエクステを簡単に実装する方法を教えてください
285デフォルトの名無しさん
2012/01/10(火) 18:51:55.79 SHCreateShellItemArrayFromDataObject の逆のAPIってないの?
IShellItemArrayからIDataObjectが欲しいんだけど
IShellItemArrayからIDataObjectが欲しいんだけど
286デフォルトの名無しさん
2012/01/10(火) 18:56:36.31 と思ったら
IShellItemArray::BindToHandler でいいのか
いずれにせよIShellItemArrayとIDataObjectの寿命がバインドしてるっぽいから
使い勝手悪いな
ITEMIDLISTにばらして持つしかないのか
IShellItemArray::BindToHandler でいいのか
いずれにせよIShellItemArrayとIDataObjectの寿命がバインドしてるっぽいから
使い勝手悪いな
ITEMIDLISTにばらして持つしかないのか
287デフォルトの名無しさん
2012/01/11(水) 10:36:36.21 IShellItemArray / IShellItem使って
IShellFolder / ITEMIDLIST は使うなってことなのか
でも過渡期だとどうせ両方使わなくちゃできないことも多いんで
手間が増えるな
IShellFolder / ITEMIDLIST は使うなってことなのか
でも過渡期だとどうせ両方使わなくちゃできないことも多いんで
手間が増えるな
288デフォルトの名無しさん
2012/01/13(金) 13:08:43.73 class IHoge : public IUnknown { 〜
class IFuga : public IUnknown { 〜
class Piyo : public IHoge , public IFuga { 〜
COMってこういう場合でも仮想継承はしないほうがいいんですか?
void MyFunc(IUnknown * p) { 〜
Piyo * piyo;
MyFunc(piyo);
みたいなコードが書けなくて困るんですけど
class IFuga : public IUnknown { 〜
class Piyo : public IHoge , public IFuga { 〜
COMってこういう場合でも仮想継承はしないほうがいいんですか?
void MyFunc(IUnknown * p) { 〜
Piyo * piyo;
MyFunc(piyo);
みたいなコードが書けなくて困るんですけど
289デフォルトの名無しさん
2012/01/13(金) 17:00:12.78 うんこなぅ
290デフォルトの名無しさん
2012/03/21(水) 18:04:08.53 俺のCOM は9800bpsの高速だぜぇ。
291デフォルトの名無しさん
2012/03/21(水) 18:10:30.31 それを言うなら、9600bpsだろう。
いずれにしても、つまらんが。
いずれにしても、つまらんが。
292デフォルトの名無しさん
2012/03/21(水) 20:28:33.22 久しぶりだなこのスレ
Windows7とか8でまた楽しいCOMインターフェイスが追加されてるな
Windows7とか8でまた楽しいCOMインターフェイスが追加されてるな
293デフォルトの名無しさん
2012/03/22(木) 21:57:04.40 IInspectable
294デフォルトの名無しさん
2012/03/22(木) 22:50:15.60 COMで扱うバリアント型の気持ち悪さは異常
295デフォルトの名無しさん
2012/03/23(金) 08:15:11.72 馬鹿には無理
2012/04/10(火) 19:47:12.90
ああするしかない。
2012/04/10(火) 20:47:48.71
データもIUnknownから派生すればよかったのに
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- ルンバの米アイロボットCEO、倒産原因は「技術面で中国勢に4年遅れ」 [蚤の市★]
- 【高市首相】「日本人が日本各地を旅行するのも大切」 中国からの渡航自粛巡り ★3 [ぐれ★]
- 【高市首相】「日本人が日本各地を旅行するのも大切」 中国からの渡航自粛巡り ★2 [ぐれ★]
- 統合中学の校名案「桜花」 特攻機名と重なり波紋 福岡・大牟田……「生徒が純真に考えた」と賛成意見も市民団体などが疑問の声 [少考さん★]
- フィンランド首相、「つり目」投稿問題で日本向けに「心からお詫び」 ★4 [どどん★]
- 【東京・赤坂の“個室サウナ店夫婦死亡火災” 】妻を守るため…夫が妻に覆いかぶさって倒れる [ぐれ★]
- さとうのご飯だけうちにあるんだが、なんかいいおかずはないか?
- (´・ω・`)おはお
- 【速報】フィンランド人、日本人に続々と宣戦布告www [793117252]
- お前ら粗品嫌いなんか?🥺
- (´・ω・`)おはよ
- 【HELP!🚨】米の卸業者「進次郎が余計なことしたせいで今になって米価格が暴落しそうなの😭」 [455031798]
