■掲示板に戻る■ ■過去ログ倉庫めにゅーに戻る■
COM・DCOM研究室
1 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/03(金) 20:02
さあ、皆で研究するぞ


2 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/03(金) 20:49
では最初の質問。
COmって何ですか?



3 名前: >2 投稿日: 2000/11/03(金) 22:53
tinyモデルで作られた、DOSプログラムの拡張子です。


4 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/03(金) 23:26
DCOM はドコモ?


5 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/04(土) 07:47
■■■■終り■■■■
2chらしい研究成果だったな。(藁


6 名前: Dr.URI 投稿日: 2000/11/07(火) 09:34
さ、ちゃんと研究するですよ!


7 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/07(火) 22:14
しんぐるとーん!!!


8 名前: DDi 投稿日: 2000/11/07(火) 23:21
COM=彼方の秘密、守ります。


9 名前: 2 投稿日: 2000/11/08(水) 00:44
では次の質問。
DDE, OLE, OLE2, COM, DCOM, ActiveX, OCX, DLLの違いって何ですか?


10 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/08(水) 01:59
つーかCOMってだめだろ。
COMを作るとして第三者のプログラマ相手でしょ。そんなの作りたくないし。
使う側として、内部で何やってるのか分からないから、呼び出しタイミング
とかが良く分からないし。

参照カウンタなんて1個狂ったら全滅だし。
個人とか社内でやるならDLLで十分だし。


11 名前: >10 投稿日: 2000/11/08(水) 02:10
>COMを作るとして第三者のプログラマ相手でしょ。
>そんなの作りたくないし。
有用なCOM作るのはMSとかのメジャーなところだから、
アンタは作らなくていいの。

>内部で何やってるのか分からないから
アンタOOP嫌いでしょ(プ


12 名前: 10 投稿日: 2000/11/08(水) 02:16
>11
技術板なんだからもっとまじめな返事してよ。



13 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/09(木) 02:24
>10
確かに、参照カウントが狂っちゃうと厄介だねぇ。


14 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/09(木) 04:30
>>10,>>13
参照カウントは簡単に狂う物なんですか?


15 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/09(木) 04:33
狂わない実装が存在しないってことなら、確かに使えないですね。
レジストリでの一元管理も頂けないし…。


16 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/09(木) 04:58
COMはちゃんと動きますけど、DLLでだめな理由もないですね。
レジストリでの一元管理も頂けないですが、ファイルシステムが管理するのが
いいのかも難しいところです。
個人的には、ファイル管理でいいと思ってますが・・・



17 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/09(木) 05:36
基本的な質問なんですけど、宜しくお願いします。
COMをコンパイルしたときレジストリに自動的に登録されますよね。
自分のマシンでそのCOMを使う時は登録済みだから自由に使えるけど、
そのCOMを含むdllを他のマシンに持っていっても使えるのですか?
登録してないから使えないと思うのですが、どうやったら登録できるのですか?



18 名前: >17 投稿日: 2000/11/09(木) 10:03
regsvr32.exeを使ってちょ。


19 名前: お嬢 投稿日: 2000/11/09(木) 13:48
>17
ATLの場合、実行時にIDが登録されているか調べに行って、
登録されてなかったら、リソースを元に登録しに行くって
方法をとってるんじゃなくって?
リソースを見るとregファイルと似たリソースがありましてよ。


20 名前: 17 投稿日: 2000/11/09(木) 13:54
>>18
サンキュー。

また質問です。
microsoftのCOMがいっぱい入ってますが、
自作のアプリケーションに組み込むと
便利だったり、おもしろいものってありますか?
いろいろ教えてください。
たとえばIEのブラウズ機能(HTMLソース持ってきてウィンドウにレンダリング)を
組み込むこととかできると思うのですが、どのCOMを使えばいいのですか?



21 名前: お嬢 投稿日: 2000/11/09(木) 14:13
>>20
IWebBrowser2なんてどうかしら?
C,C++なんかでカスタムインターフェイスを使用して
使うつもりなら、殺人的な労力が必要ですわよ♪


22 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/09(木) 14:38
command.comはどうよ?


23 名前: 18>20 投稿日: 2000/11/09(木) 15:58
shdocvw.dllだよん。


24 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/09(木) 17:31
falcomはどうよ?


25 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/09(木) 23:36
あのー、>>14の質問に誰も答えてくれないのは何故ですか?


26 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/10(金) 01:51
もう一回書きます。
>>10,>>13
COMの参照カウントは簡単に狂う物なんですか?



27 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/10(金) 01:55
>25
簡単に狂うよ。Release()を1回呼び忘れれば言いだけ
だから。


28 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/10(金) 01:59
>>25-26
少ししつこい。
質問すれば必ず教えてもらえると考えるのは止めましょう。


29 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/10(金) 02:03
>>27
>簡単に狂うよ。Release()を1回呼び忘れれば言いだけ
これってプログラマの方が悪いって事ですか?


30 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/10(金) 02:06
どう転んでもプログラマが悪いのは事実


31 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/10(金) 02:11
>>29
言い足りてなかった。
>これってプログラマの方が悪いって事ですか?
正しくは、
これってプログラマのコーティングの仕方が悪い場合、って事ですか?
です。

つまり、COMの設計上の問題で、リファレンスカウンタの仕様に穴か
何かがあると思える書込みだったので。>10,13

>>28
22=23=24の様なつまんないカキコよりは随分マシだとおもいますが。



32 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/10(金) 02:13
参照カウントの管理にプログラミングのかなりの
時間が費やされるのにも問題あるでしょ。


33 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/10(金) 02:18
スマートポインターだっけ?あれを使えばReleaseとか気にしないでよかったと思う。



34 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/10(金) 02:18
>31
プログラマが参照カウントをインクリメント
もしくは、デクリメントし忘れただけ。
だからプログラマが悪い。
設計上に穴があるわけでは無い。



35 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/10(金) 02:21
>>34
わかりました。
有難うございます。


36 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/10(金) 03:00
COMもしくはDCOMって、ATLとMFCどっち使って作ったほう
がいいんだろう?


37 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/10(金) 04:42
ローカルサーバーまたはリモートサーバにアクセスしてる
クライアントがあるとして、このクライアントが強制終了
した場合、つかんでたインタフェースはちゃんと開放されるの?


38 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/10(金) 09:52
Microsoftはそのうち自らCOMを葬り去る


39 名前: DrURI 投稿日: 2000/11/10(金) 10:21
>>36
COMはATLとMFCという比較はしないんですよ、
比較するとすれば、ATLと非ATLかな?
ATLと非ATLはMFCと非MFCの関係に思いがちだけど、
COMに関しては、ATLでVCのウィザードを使用して
作成するのが現実的だと思うの。
非ATLでCOMは作業量や全体の把握がとても困難じゃないかしら・・・

>>38
MSのビジネスソフトのコアはすべてCOMだと思うんだけどな・・・


40 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/13(月) 00:34
IDLってなんの略ですか?


41 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/13(月) 00:37
>40
CORBAの話?

I インタフェイス
D 宣言
L 言語



42 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/13(月) 03:59
>>41

WindowsのRPC(DCE RPCの亜流)もIDLを使う



43 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/13(月) 09:43
>>39
.NET


44 名前: Dr.URI 投稿日: 2000/11/13(月) 18:47
IDLは、
Interface
  Design (技術評論社からの書籍より)
  Description (翔泳社からの書籍より)
  Definition (MSDNに収録されているCOMのコラムより)
    Language
などいくつも定義の説明があってね、
URIもどれが正しいのかわからないのよねー。(知ってる人がいたら教えてちょうだい!)

IDLっていうのはね、COMのインターフェイスを定義する言語なの。
ここで言うインターフェイスはVBのメソッドやプロパティの事を指すのね、
あと、イベントで呼び出される関数も含まれるのよ。

ちなみにCOMが一般的にクラスで扱えるのは、ここでクラスとして使えるように
定義してあるからなのよ♪

さわりだけだけど、少しはわかったかしら?
それじゃ、がんばってね。


45 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/13(月) 19:30
一番新しいRFCでUniform Resource Identifierって書いてあるからそれでいいんじゃないかな。
Universalはobsoleteされたのか?
でも、URLはともかくUniversal Resource Identifierという言葉はRFCにでてきてないような気もするけど。
詳細きぼ〜ん。


46 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/13(月) 23:35
VBなどから
CreateObject()で起動できるEXEをMFC作ろうと思うのですが、
どうすればいいのでしょうか?教えてくださいませ。


47 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/13(月) 23:35
VBなどから
CreateObject()で起動できるEXEをMFCで作ろうと思うのですが、
どうすればいいのでしょうか?教えてくださいませ。


48 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/13(月) 23:43
>>47
ATL COM Wizardでスケルトン作る。
スケルトン作った後途方に暮れるようだったらまず書籍買い漁れ。

個人的には、今COMそのものを勉強するのはお勧めしないけど。
煩雑すぎてちっとも面白くない。既存コンポーネント利用する分には
便利だけどね。作るのは.NET待ち。


49 名前: 47 投稿日: 2000/11/14(火) 20:02
>>48
わかりました。やってみますぅ。