トップページ⇒tech
981コメント239KB

ATL 相談室

レス数が950を超えています。1000を超えると書き込みができなくなります。
0001デフォルトの名無しさんNGNG
テンプレートをベースにしたC++ライブラリ、ATL
(ATL Serverでは XML Webサービス、Webアプリケーション、
サーバーアプリケーションが作成できるらしい。)
について語りましょう。
0002デフォルトの名無しさんNGNG
             __
                /〃 ┼‐┼〃__
             /\    ノ                __
                      __  , -――-、  /\ノ
                      ヽ/\l::::::::::::::::::::\ /: : /
         ,..-―-、/)       |: : :|::::::::::::::::::::::/: : /
     /⌒Y    (_ノ  /)       |: : :|:::::::::::::::::::::|: : : /
      ̄l ̄l、     ) /`〉     ヽ:: :|::::::::::::::::::::l: : :/
         l: : :`ー--‐'‐'´: :/        \|∧ハ/l/: ::〈
       \: : : : : : : : : :く         |: : : : : : : : : : `ー-┐  ,.、
         l: : : : : : : : : :`ー―┐ ,、   |: : : : : : : : : : : : : : |二lニノ
         ヽ.: : : : : : : : : : : : : :|ニノ   |: : : : : : : : : : : : : : |
           ヽ: : : : : : : : : : : : :|      ヽ: : : : : : : : : : : /
           \: : : : : : : : :/       \ : : : : : : /
              ̄ ̄ ̄ ̄    ノ|      ̄ ̄ ̄       ノ)
                   ノしノ  し'(           ノ)__ノ (ノ(
0003デフォルトの名無しさんNGNG
WTLは?
0004デフォルトの名無しさんNGNG
WTC?
0005簡易かおりん祭り。 ◆PFTlOi7I NGNG
良、おめ。

かおりんはなんで飛ぶんーー?
0006コギャルとHな出会いNGNG
http://kado7.ug.to/net/


朝までから騒ぎ!!
   小中高生
 コギャル〜熟女まで
   メル友
  i/j/PC/対応

女性の子もたくさん来てね
                 
全国デ−トスポット情報も有ります。
全国エステ&ネイル情報あります。
0007デフォルトの名無しさんNGNG
0008デフォルトの名無しさんNGNG
0009デフォルトの名無しさんNGNG
0010デフォルトの名無しさんNGNG
0011デフォルトの名無しさんNGNG
0012デフォルトの名無しさんNGNG
0013デフォルトの名無しさんNGNG
0014デフォルトの名無しさんNGNG
0015デフォルトの名無しさんNGNG
0016デフォルトの名無しさんNGNG
0017デフォルトの名無しさんNGNG
WTLの話題もOKなのかな?
WTLに興味があるんだけど、情報が少なくて・・・

Donut本家作者さんのサイトとそこからたどれる
リンク以外でWTLに関して解説してるところって
ありませんか?
0018デフォルトの名無しさんNGNG
ATLは押しにくいので嫌いです
0019デフォルトの名無しさんNGNG
つーか、ATL7.0の情報もWTL並みに少なすぎだよ・・・。
0020デフォルトの名無しさんNGNG
死して屍拾うものなし
0021デフォルトの名無しさんNGNG
つーか、ATLをMSDN読みながら使おうとするのダメ。
ソースを読んで、実装依存にならないようにドキュメントを確認するのが最良
つか、MFCと違ってATLは単純だからソースをドキュメントとして使用できます。
0022デフォルトの名無しさんNGNG
ATL7.0 のウィンドウクラスを用いて、
普通のWin32アプリ作っている人たちに質問。
WinMain 内の基礎的な処理(メッセージループとかWindowの作成)
を書くときに、

1. CExeModule に任せる
2. メッセージループベタ書き(or自作クラス)
3.  WTL7.0 に任せる

のどれが一番ナイスな手法ですか?
0023デフォルトの名無しさんNGNG
>>22
3.
0024デフォルトの名無しさんNGNG
質問です。
ATLで作成したActiveXを、IEで表示しているのですが、
OBJECTタグで指定したWIDTHやHEIGHTの値を、
PARAMタグが処理される前に取得したいのです。
(もしくは一つ目のPARAMタグ処理)
どうもPARAMタグ処理後でないと、ウインドウが作られないため、
ウインドウサイズの取得が出来ません。
何かよい方法はないでしょうか。
0025デフォルトの名無しさんNGNG
>>24
SetExtensionなんちゃらかんちゃらをオーバーライド
(ソース見られないところからだからいい加減)
002624NGNG
>>25 レスどーもです。
HRESULT IOleObject_SetExtent(DWORD dwDrawAspect, SIZEL *psizel)
のことですよね・・・
これ試したんですけど、
PARAMタグで全てのプロパティセット後に呼ばれてるんですよ
くやしいです
0027デフォルトの名無しさんNGNG
>>23

やはり、WTL7.0ですか。
ただ、CAppModule はATL7だと、邪魔な気もするんですよね。
CAtlBaseModule があるのに、いらんやろとか思ってしまう。
0028デフォルトの名無しさんNGNG
>>26
あれ? SetObjectRectsの方が早かったかな?
これより早いとオブジェクト自体作られていないっていうギリギリだったはず。
0029toNGNG
ATL初心者です。。

ATLの動作がいまいち理解できません。
Donutをダウンロードしてステップ実行をしているのですが、メインのMDIウインドウ
はどこで定義されているのでしょうか?
MDIのウィンドウを標準ではなくて、自前の画像などを貼り付けてメディアプレーヤー
みたいなブラウザを作ろうと思っています。

あと、ATLを解説しているいいHPを知っていたら教えてください。
お願いします。
0030デフォルトの名無しさんNGNG
>>29
良書は沢山あるけど、ATL日本語の良サイトはないな
0031toNGNG
>>30
何かおすすめの本ありますか??
0032デフォルトの名無しさんNGNG
http://www.amazon.co.jp/exec/obidos/ASIN/4756132804/249-0481596-1404367
0033デフォルトの名無しさんNGNG
ATL初心者です。

ATLで、ブラウザ上で実行させるコントロールを作成しているのですが、
タイマーを使うことができません。
CWindow::OnTimer(...)
MESSAGE_HANDLER(WM_TIMER, OnTimer)
をオーバーライドさせているのですが、反応しません。

いろいろ悩んだのですが、コントロールが表示される領域に
CWindowから継承されるウィンドウを貼り付け、それのタイマーを利用する
ことも考えました。が、そもそもウィンドウを貼り付ける方法も分かりません。

よく分かっていないので、極めてレベルの低い質問になってしまうのですが、
<object ...></object>で表示されている画面というのは、ブラウザ上に存在する、
ボタン或いはエディットボックスのような1個のウィンドウと
みなしてよいのでしょうか。それとも、ブラウザのビューウィンドウの一部を
間借りしていると考えたほうがよいのでしょうか。

ひとつご教授ください。お願いします。
0034デフォルトの名無しさんNGNG
ActiveXDLLを作る方法がわかるWebページありませんか?
0035デフォルトの名無しさんNGNG
SetTimerについて言及していないのは、なんでだろうか。
0036デフォルトの名無しさんNGNG
CComBSTRって
bool operator<(BSTR bstrSrc) const
bool operator==(BSTR bstrSrc) const
bool operator<(LPCSTR pszSrc) const
bool operator==(LPCSTR pszSrc) const
は定義されてて、なんで
bool operator>(BSTR bstrSrc) const
bool operator!=(BSTR bstrSrc) const
bool operator<=(BSTR bstrSrc) const
bool operator>=(BSTR bstrSrc) const
とかは定義されてないの?

0037デフォルトの名無しさんNGNG
誰も分からんのか・・・
0038デフォルトの名無しさんNGNG
<と==だけあれば別に困らないから。
0039デフォルトの名無しさんNGNG
おい!困らない奴! 教えてくださいませんか。

CComBSTRとBSTRで自然に比較演算できるように定義したんですが、
// operator==
inline bool operator==(BSTR s, const CComBSTR& t)
  { return t.operator==(s); }
inline bool operator==(const CComBSTR& s, const CComBSTR& t)
  { return s.operator==(t); }

// operator!=
inline bool operator!=(const CComBSTR& s, BSTR t)
  { return ! s.operator==(t); }
inline bool operator!=(BSTR s, const CComBSTR& t)
  { return ! t.operator==(s); }
inline bool operator!=(const CComBSTR& s, const CComBSTR& t)
  { return ! s.operator==(t); }

// operator<
inline bool operator<(BSTR s, const CComBSTR& t)
  { return t.operator<(s); }
inline bool operator<(const CComBSTR& s, const CComBSTR& t)
  { return s.operator<(t); }
0040デフォルトの名無しさんNGNG
// operator>
inline bool operator>(const CComBSTR& s, BSTR t)
{
  if (s.m_str == NULL && t == NULL) return false;
  if (s.m_str != NULL && t != NULL) return wcscmp(s.m_str, t) > 0;
  return t == NULL;
}
inline bool operator>(BSTR s, const CComBSTR& t)
  { return t.operator<(s); }
inline bool operator>(const CComBSTR& s, const CComBSTR& t)
  { return s.operator>(t.m_str); }

// operator<=
inline bool operator<=(const CComBSTR& s, BSTR t)
{
  if (s.m_str == NULL && t == NULL) return true;
  if (s.m_str != NULL && t != NULL) return wcscmp(s.m_str, t) <= 0;
  return s.m_str == NULL;
}
inline bool operator<=(BSTR s, const CComBSTR& t)
  { return t.operator>=(s); }
inline bool operator<=(const CComBSTR& s, const CComBSTR& t)
  { return s.operator<=(t.m_str); }

// operator>=
inline bool operator>=(const CComBSTR& s, BSTR t)
  { return ! s.operator<(t); }
inline bool operator>=(BSTR s, const CComBSTR& t)
  { return ! t.operator>(s); }
inline bool operator>=(const CComBSTR& s, const CComBSTR& t)
  { return ! s.operator<(t.m_str); }
0041デフォルトの名無しさんNGNG
と、
bool operator>(const CComBSTR& s, BSTR t)
bool operator<=(const CComBSTR& s, BSTR t)
が、既定義のoperator<()とoperator=()を使って定義できず、
ダサダサになってしまいます。

なんとかならんもんでしょうか?
おながいします。
0042デフォルトの名無しさんNGNG
WTLの全てを教えてください
0043デフォルトの名無しさんNGNG
何箇所か間違いがありましたが、言いたい事は分かってもらえたかな?
0044デフォルトの名無しさんNGNG
おい賢いおまいら、
ATLって何なのか簡潔におしえてくだしぃ。
COMプログラミングのどの辺がらくになるの。
0045デフォルトの名無しさんNGNG
STLの質問も受け付けていますか?
0046デフォルトの名無しさんNGNG
すれ違いだタコ
0047デフォルトの名無しさんNGNG
>>46
なんでそんなにレスはやいんだ?
0048デフォルトの名無しさんNGNG
ATLのAって何?Application?
0049デフォルトの名無しさんNGNG
>>48
Listen me
0050デフォルトの名無しさんNGNG
ActiveX
0051デフォルトの名無しさんNGNG
Ask meじゃネーノ?
0052まじれすNGNG
>>48
Active Template Library
0053デフォルトの名無しさんNGNG
ATLなんて、ATLWindow クラスと、ATLControls に含まれるコモンコントロールラッパー、
そして ATLスマートクラス しか使わないが。
こんな俺は逝ってよしか?
0054デフォルトの名無しさんNGNG
xxxModuleは使わんの?
0055デフォルトの名無しさんNGNG
>>54

ATL7 だから、 特に意識はしてない。
自分でインスタンス作る必要ないし。
005655NGNG
>>54
とか思ってたら、HINSTANCE の取得に
CAtlBaseModule::GetResourceInstance 使ってたよ。
0057デフォルトの名無しさんNGNG
つか、ATLは雑に作られすぎてるので、コアな部分をツマミ食いするだけに留めた方がいいよな。
(ウィンドウ関係、使えなさ過ぎ)
0058デフォルトの名無しさんNGNG
ウインドウ関係だけがおいしい(WTLだが)と思ってるんだが、
具体的にどう雑なんだ?
0059デフォルトの名無しさんNGNG
ATLのコントロールから親のウィンドウハンドルやインスタンスを得ることは出来ないのでしょうか?
IE上で動いてるコントロールからIEのハンドルを得たいのですけれど。
0060デフォルトの名無しさんNGNG
>>59
ATLからのとりかたは知らないんだけど、
前にIEを操作したときは、DDEとか、COMのWebControl使ったぞ
0061デフォルトの名無しさんNGNG
ATLのCWndPprocThunkでHWNDをthisに置き換えてますが、
なんでecxにthisを入れてjmpしないのでしょうか?
その方がthunkのコードも小さくなるのに。

何かの理由で直接ecxを触れると不味いとかあるのですか?
0062デフォルトの名無しさんNGNG
>>61
・メンバ関数の呼び出しにthiscallを使わない処理系(bccとか)で
 使えなくなってしまうから。

・Alpha版とかSH3版とかMIPS版とかARM版とかIA64版とかとコード共有しやすいから。

・VC限定にしても、メンバ関数のアドレスって正攻法で取得できるものだっけ?
 &Class::Member だと必ずしもアドレスの数値が帰ってくるとは限らんし。
 (↑VC++&多重継承無し&非virtual、ならたしか大丈夫だった気もするが)

・ecxはcallerが退避するので書き換えても問題ないと思う。
0063デフォルトの名無しさんNGNG
virtual/多重継承アリでも問題なくアドレスが返ってくることは確認出来ました。

しかし、
>メンバ関数のアドレスって正攻法で取得できるものだっけ
これが気になるのでATLと同じにした方が良さそうですね。

ありがとうございました
0064デフォルトの名無しさんNGNG
ATL(DLL)でmath.hをインクルードして使用すると、_fltusedの多重定義で
エラーが起きます。atlimpl.cppの_fltused定義をコメントアウトすると、
リンク時に_mainが未解決であると怒られます。

どなたか原因がおわかりのかたいらっしゃらないでしょうか?
0065デフォルトの名無しさんNGNG
ATL_MIN_CRTだかがプロジェクトの
どっかに定義してあるから、それを消してみれば
0066デフォルトの名無しさんNGNG
できました・・・。#undefしたら通りました。
意味はよくわかりませんが・・・。ありがとうございます。
0067デフォルトの名無しさんNGNG
OS:Windows NT Sp6a
IE:5.5
開発環境:Visual Studio 6.0 SP5を使用しています。

ATLで適当なCOMクラスを作って、Visual Basicから使おうとすると、
New した時点でActiveX Objectが作成できませんというエラーになってしまいます。

もちろん登録してありますし、そもそもDebugモードでコンパイルすると問題なく動作します。
Win32 Release MinDependency でコンパイルした場合に上記エラーになってしまいます。

VC側でデバッグかけると、デバッグウィンドウに
"例外処理 (初回)は Test.Exe(KERNEL32.DLL)にあります:0xC000008F:Float Inexact Result"

と出てきますので、どうやらなんかの例外でこけているようなのですが、何が原因なのかまったく見当がつきません。
いままでいくつも作ってきてこんなことなかったのに...

誰か助けてください。
0068デフォルトの名無しさんNGNG
>>67
Debug モードのときには動いて、Release モードの時には動かないの?
ASEERT 系マクロの中に関数とか指定していないか調べた?
0069デフォルトの名無しさんNGNG
>>68
×ASEERT
○ASSERT
0070デフォルトの名無しさんNGNG
>68
ありがとうございます。

それが、スケルトンプロジェクトでATLオブジェクトを挿入しただけの
ものでも起こるという状態でして...

環境再構築かなぁ
0071デフォルトの名無しさんNGNG
CAutoPtr<CBase> P(new CDerived) ; //CDerived は CBase の派生
//Pを使う
P.Free(); //CDerived::~CDerived は呼ばれない!

…CAutoPtrってこういうものなんですかね。
もちろんデストラクタはvirtualです。
0072デフォルトの名無しさんNGNG
Free() ってただの delete m_p; だから、
そこでdeleteした時に呼ばれる関数なら全てCAutoPtr::Freeを
読んだときでも呼ばれるはず。

delete P.Detach(); ならうまく行くのかどうかチェックしてみ。
007371NGNG
>72 サンクス。

申し訳ない。単純な形でのテストを怠ってました。
コンソールアプリで普通にやってみたら
P.Free();
でちゃんと派生クラスのデストラクタが呼ばれました。

それでもうちょっと調べたところ…。
MFCのダイアログアプリからやると駄目と分かりました。
うーん。なにかヘッダファイルがらみの単純なことなのかなあ。

class Catltest2Dlg : public CDialog {
//中略
CAutoPtr<CBase> m_pBase ;
}
BOOL Catltest2Dlg::OnInitDialog()
{
//中略
CBase* p = new CDerived(TEXT("TEST")) ;
if (!p) {
::AfxThrowMemoryException() ;
}
m_pBase.Attach(p) ;
return TRUE;
}
void Catltest2Dlg::OnDestroy()
{
m_pBase->SomeFunc() ; //ここでは派生クラスが呼ばれる
m_pBase.Free() ; //ここで駄目
CDialog::OnDestroy();
}
007471NGNG
>71-73
お騒がせしました。解決しました。
…下記のwarningが出ていたのに気付いてませんでした。

c:\MS\VStudio.NET\Vc7\atlmfc\include\atlbase.h(924) :
warning C4150: 'CBase' 型を削除するため delete 演算子が
呼び出されましたが、定義がありません。

正しくdeleteできるようにするため下記の修正が必要でした。
(誤)
class CBase ;
//中略
CAutoPtr<CBase> m_pBase ;

(正)
#include "Base.h"
//中略
CAutoPtr<CBase> m_pBase ;

#しかしなんだってコンパイルできちゃうんだ、これ。
0075デフォルトの名無しさんNGNG
age
0076デフォルトの名無しさんNGNG
WTLの話なのでスレ違いかもしれませんが・・・。

WTLを使いたいのですが、上のほうに書いてあった「ATLインターナル」を買おうかと思っています。
「ATL COM プログラミング」なら持っているのですが、WTLに関する情報は皆無です。
「ATLインターナル」ではWTLに関する情報はどれくらいありますか?
最新はWTL7なんですよね?「ATLインターナル」で扱われているバージョンと違いはありますか?
もしくはWTLに特化した書籍は他に何かありますか?

田舎なもんで、本屋で立ち読みするわけにもいきません。
WTLには非常に興味があるので、どうかご教授願います。
007776NGNG
ひょっとしてWTL7は.NETでしか使えないという罠?
0078デフォルトの名無しさんNGNG
当然C++.NETでしか使えないわけだが
そんなものだれが使うんですか?
0079デフォルトの名無しさんNGNG
>>76

ATL インターナルにWTLの話題はないよ。
つーか、WTL 出る前に書かれたものだし。
ATLウィンドウクラスを解説した章は WTL にもそのまま当てはまるし、
読んでおけば、WTL のソースをそれほど苦労することなく読めるようになる。

あと、WTLを扱った本はないはず。(少なくとも日本語では)

>>77
んなことたぁない
008076NGNG
>>79

WTLの話題は無いのですね。。。残念です。
「ATL COM プログラミング」にウインドウクラスの話題があったかどうか覚えていないので、まずそれを確認してから「ATLインターナル」を読みたいと思います。

それと、サンプルのAlphaって、XPじゃないとコンパイルできないのでしょうか?
0081デフォルトの名無しさんNGNG
>>79

Alpha って、コモンコントロールのサンプル?
WINVER とか その辺のマクロを直せばコンパイルとおるだろ
0082デフォルトの名無しさんNGNG
http://www.amazon.co.jp/exec/obidos/ASIN/4756132804/249-0481596-1404367
0083デフォルトの名無しさんNGNG
WTLは?
0084デフォルトの名無しさんNGNG
MSDNのサイトからPlatformSDKを落して使っています。
WTLを使って見たいのですが、これはSDKには含まれて
いないのでしょうか?個別に落す必要があるのなら
それはそれで構わないのですが。。。どうなんでしょうか?
0085デフォルトの名無しさんNGNG
ttp://download.microsoft.com/download/VisualStudioNET/Install/7.0/WXP/EN-US/WTL70.exe
で落とせる
0086デフォルトの名無しさんNGNG
>>85
さんくす個。とりあえず、内容なので落したの入れてみました。
MFCすらつかったことがないので、WTLのよさが分るかどうか
ちょっと怪しいんですが、いろいろソース読んだりして勉強したい
です。
0087デフォルトの名無しさんNGNG
ちなみにPlatformSDKではWTLはインストールされない模様です。
http://www.mars.dti.ne.jp/~kattoshi/Program/Install/Install.html
0088デフォルトの名無しさんNGNG
C言語
0089デフォルトの名無しさんNGNG
Ask meじゃネーノ?
0090デフォルトの名無しさんNGNG
age
0091デフォルトの名無しさんNGNG
age
0092デフォルトの名無しさんNGNG
そろそろ ATL/WTL は賞味期限切れ。
どとねとに移行しなされ。
0093デフォルトの名無しさんNGNG
>>92
そうでもない。
0094デフォルトの名無しさんNGNG
WTLでActiveXって、どうやって使うの?
クラスウィザードも使えないし...
0095デフォルトの名無しさんNGNG
IWebBrowser2の使い方が禿しく分からん。
誰かバカにもわかるように解説してりろ。
009694NGNG
すみません。自己解決しました。
WTLで検索していたので見つからなかったみたいで、
ATLで探したら簡単に見つかりました。

>>95
下記のページが参考になるかも?
ttp://www.nitoyon.com/vc/tips/ie_component.htm
009795NGNG
>>96
ありがとう。それみてなんとかやってみます。
0098デフォルトの名無しさんNGNG
すんません。
CComBSTR → char* への変換教えてください。
0099デフォルトの名無しさんNGNG
自己レス
CComBSTR bstr;
CString tmp((BSTR)bstr);
でいけた。


くそったれが。さいしょからbstr.GetAnsiChar()でも用意しときやがれ
0100デフォルトの名無しさんNGNG
>>98-99
CString使うなって。マクロで確かW2T(?)があったはず・・・。
bstr_tならLPCTSTRにキャスト可能。
0101デフォルトの名無しさんNGNG
OLE2TとT2OLEが一番無難じゃない?
昔は変換の為にBSTR型を大量に宣言してAllocしてたけど、
解放し忘れでメモリリークしたりして大変だったような・・・。

0102デフォルトの名無しさんNGNG
WTL7.0ってVC6でもいけるのね?

System Requirements
Microsoft Visual C++® .NET or Visual C++ 6.0
0103デフォルトの名無しさんNGNG
>100-101
ありがとん。やっぱ何かしらあるとは思ったよ。
しかしW2Tって。。なんちゅーネーミングだ。付けたヤシはカッコイイとでも思ってんのかね
検索してもW2Tなんて出てきた所で気がつきゃしないよ。もっと直感的な名前にしる
0104名無し@沢村NGNG
>>103
十分直感的な名前やろ。あんたの勘が悪いだけ。
あと、char*への変換が目的ならW2Aにしとけよ。分かったな。

俺なら_bstr_tかWideCharToMultiByte()使うけどな。
0105デフォルトの名無しさんNGNG
sageてまで荒らすとなるとやっぱ完璧に
共有荒らしハンドルとして定着ですか
0106デフォルトの名無しさんNGNG

ATL7.0 なら、CA2WEX とか CW2AEX とかの、
C*2[C]*EX テンプレートクラスを使え。
そのほうがより安全だ。
0107デフォルトの名無しさんNGNG
あああああああ、
_ATL_MIN_CRT ってやってると リリース・ビルド が通らん!

愚痴なのでスルーで。

0108デフォルトの名無しさんNGNG
WTLで小さなプログラム作りたいのに
fstreamとかiostream使うとすぐにでかくなっちゃう。
テンプレート実装のfstreamとかあればいいのに。
0109名無し@沢村NGNG
>>108
typedef basic_fstream<char, char_traits<char> > fstream;
0110デフォルトの名無しさんNGNG
>>107
memcpy とかCのランタイム関数使ってるからでしょ。
APIに置き換えればいいはずだったと思う。たぶん。
0111デフォルトの名無しさんNGNG
CImage.Loadで読み込んだ画像ファイルを表示させるには、
どうしたらいいですか?
0112デフォルトの名無しさんNGNG
>>96
漏れもそのサイトのソースをいじろうとしたのですが、VC++.NETではだめだったりしますか?
コンパイルは通るのですが、AtlAxGetControlあたりで処理が引っかかってるらしく、
IE不在のダイアログしかできないです。
それとも単に、ビルドのオプションを間違えているのでしょうか?
0113名無し@沢村NGNG
>>111
CImage::Draw()
0114デフォルトの名無しさんNGNG
age
0115 NGNG
age
0116デフォルトの名無しさんNGNG
>>109 >>113
似非沢村、増殖中。
0117IP記録実験NGNG
IP記録実験
http://qb.2ch.net/test/read.cgi/accuse/1042013605/

1 名前:ひろゆき ◆3SHRUNYAXA @どうやら管理人 ★ 投稿日:03/01/08 17:13 ID:???
そんなわけで、qbサーバでIPの記録実験をはじめましたー。

27 名前:心得をよく読みましょう 投稿日:03/01/08 17:20 ID:yL/kYdMc
SETTING.TXT管轄でないということは全鯖導入を視野に、か?

38 名前:ひろゆき ◆3SHRUNYAXA 投稿日:03/01/08 17:22 ID:rLfxQ17l
>>27
鋭いです。

73 名前:ひろゆき ◆3SHRUNYAXA 投稿日:03/01/08 17:27 ID:rLfxQ17l
>ところで、IPが抜かれて何か今までと変わることってあるのでしょうか?
・今までより、サーバが重くなる。
・裁判所や警察からの照会があった場合にはIPを提出することがある。
0118デフォルトの名無しさんNGNG
>>540
逝き遅れの妹発見
0119デフォルトの名無しさんNGNG
まじっすか、やだもーん
0120デフォルトの名無しさんNGNG
test
0121デフォルトの名無しさんNGNG
25歳。
去年まで働いてたんだけど、ひきこもってオンラインボンバーマンで
二年で350点貯めた。一度やってみなよ。
身内で不正だけど、6人くらいでシングル3たてすれば800点くらい貰える。
点数だけ稼いで得点トップなら目立つ事ができるし、序盤ブローグでで赤ボンか黒ボンに
思い切って投げてしまえば50パーセントくらい殺せる。
荒らしが入ればサーバー変えるだけ。暇つぶしになる。
味噌ボンとかぎんぎんパワーあるのでまじオススメ。
http://www.bomberman-online.com/

0122デフォルトの名無しさんNGNG
>>317-318
来ないと言うやつは又来るが、さようならと言った次のレスにもうコピペする奴は珍しい。
0123デフォルトの名無しさんNGNG
======2==C==H======================================================

         2ちゃんねるのお勧めな話題と
     ネットでの面白い出来事を配送したいと思ってます。。。

===============================読者数: 138720人 発行日:2003/1/9

年末年始ボケがそろそろ収まり始めた今日このごろのひろゆきです。

そんなわけで、年末に予告したIP記録ですが実験を開始しています。

「2ちゃんねる20030107」
こんな感じで各掲示板の最下部に日付が入ってるんですが、
20030107以降になってるところはログ記録実験中ですー。

んじゃ!

────────────────────────Age2ch─
■この書き込みは、Age2chを使って配信されています。
────────────────────────────
Keep your thread alive !
http://pc3.2ch.net/test/read.cgi/software/1041952901/l50
────────────────────────────
0124デフォルトの名無しさんNGNG
qb : 2ch批判要望 削除議論 削除要請 削除整理
live2 : ニュース速報
tmp : ニュース極東 ちくり裏事情 政治思想 Download
    厨房! 人権問題 バカニュース 薬・違法
    ゴーマニズム ロビー 最悪 少年犯罪
    違反の潰し方 ペット苦手 なんでもあり 学歴
0125デフォルトの名無しさんNGNG
どうもです。
0126デフォルトの名無しさんNGNG
IPとってる板

qb : 2ch批判要望 削除議論 削除要請 削除整理
live2 : ニュース速報
tmp : ニュース極東 ちくり裏事情 政治思想 Download
    厨房! 人権問題 バカニュース 薬・違法
    ゴーマニズム ロビー 最悪 少年犯罪
    違反の潰し方 ペット苦手 なんでもあり 学歴
0127デフォルトの名無しさんNGNG
つまらないね。

トリップだってさ
全然ボツ。
0128デフォルトの名無しさんNGNG
まあ、どうにもならんわな。法律的に勝てる可能性は0に限りなく近い。
最高裁いっても新しい事実とかが無い限り逆転はないわな。
弁護士やとっても無駄金を取られるだけになってしまうだろうな。
ここはみんなで400万集める方法を考えた方がいいと思うぞ。
0129あげNGNG
ATLのスマートポインタやらなんやらつかうより、
boostやloki使うほうがいいよな?
まー、適材適所なのだが。
0130デフォルトの名無しさんNGNG
5nd
0131デフォルトの名無しさんNGNG
2ちゃんねる が衰退していく

あるネット関連会社の社長は、
「いずれにしても2ちゃんねるは資金が底をつけば終わり。
あまり知られていないことだが、2ちゃんねる内部関係者によると今、
大手通信会社系が調査費名目で資金提供している。
だが、それが止まれば続けてはいけないだろう」
と証言する。
2ちゃんねるが判決によって力を失った場合、
資金提供の打ち切りも予想される。

http://ascii24.com/news/reading/causebooks/2002/07/01/636911-000.html  
0132デフォルトの名無しさんNGNG
>>129
そーか? ATL の CComPtr はよく出来ていると思うがな。
Loki の ComRefCounted ポリシーは穴だらけ。
0133129NGNG
>>132
あげついでになんとなくしったかぶって発言してみました。
正直lokiもATLもまだ使ってないっす。
boostとWTLは使ってるんだけどね。

ところでATLでboost/lokiよりすぐれてると思われるものってほかにありますかね?

それにしても日本語の情報サイトってすくないなー。
英語めんどくせー。
0134デフォルトの名無しさんNGNG
昇進しそびれたボランティア★が揚げ足取りをして罵倒する所ですね。
0135デフォルトの名無しさんNGNG

観念しなさい
0136デフォルトの名無しさんNGNG
実験段階は既に終了して、通常運用だと思う。
110番の日なのは狙ったのかな。
0137デフォルトの名無しさんNGNG
ところで、アホーの投票祭り無いの?
俺は「2ちゃんねるってなに?」に投票してきたけど。
0138デフォルトの名無しさんNGNG
激しく同意。ヤナ時代になったもんだ・・・
0139デフォルトの名無しさんNGNG
こうゆう基地外は一度捕まった方が良いと思われ
  ↓
http://ex2.2ch.net/test/read.cgi/morningcoffee/1041906510/29
0140デフォルトの名無しさんNGNG
>>133
ATL無しでWTLを使う方法を教えて下さい。
0141デフォルトの名無しさんNGNG
こらポリ製品おまい誰に断って快速スレの継続たてているんだ。
0142デフォルトの名無しさんNGNG
オウム幹部と麻原が捕まった時のことを思い出すな
0143デフォルトの名無しさんNGNG
======2==C==H======================================================

         2ちゃんねるのお勧めな話題と
     ネットでの面白い出来事を配送したいと思ってます。。。

===============================読者数: 139038人 発行日:2003/1/10

なにやら、連日メルマガだしてるひろゆきです。

そんなわけで、ログ記録実験ですが、いちいちサーバ指定するのが面倒なので、
全部のサーバに入れてみました。

重くなって落ちたりしてもご愛嬌ってことで。。。

んじゃ!

────────────────────────Age2ch─
■この書き込みは、Age2chを使って配信されています。
────────────────────────────
Keep your thread alive !
http://pc3.2ch.net/test/read.cgi/software/1041952901/l50
────────────────────────────
0144デフォルトの名無しさんNGNG
>裁判所や警察からの照会があった場合にはIPを提出することがある。

今までもやってたくせに
0145デフォルトの名無しさんNGNG
http://temp.employment.yahoo.co.jp/bin/tw_detail?id=dp806473&pf=13&jc=04&jb=04070&ct=job
おまいら、時給20003円の仕事めっけ!
0146デフォルトの名無しさんNGNG
スレタイもうちょっと・・・なんとか・・・ならないんだよね。
0147デフォルトの名無しさんNGNG
早く閉鎖してください。
お願いします。
0148デフォルトの名無しさんNGNG
【無料】みんなでお揃いのユニフォーム【祭り】
http://life2.2ch.net/test/read.cgi/offevent/1042037013/

みんなで2ちゃんユニフォームを作ってワショーイしよう!
同じカッコしたちゃねらーで街を埋め尽くそう!

ユニフォーム代はなんと無料です!
↓ここを利用します。
http://www.getuniform.com/

0149デフォルトの名無しさんNGNG
もしこれが実行されたらにちゃんは閉鎖だな、きっと
0150デフォルトの名無しさんNGNG
wって2ちゃん発祥なの?
ださくないか?
(笑)もザサイから、(^^)がナウイよ。
0151デフォルトの名無しさんNGNG
いや、最近のニュー速は本当に良くなってきたと思うよ。
ニュース速報板だからね。
0152デフォルトの名無しさんNGNG
(^^)
0153デフォルトの名無しさんNGNG
心配なら学校休ませればいいのに。ってか、他人の子供なんて
正直どうでもいいような気がするんだなぁ。
0154デフォルトの名無しさんNGNG
今日新たに登録した顔文字
↓
ヽ(*`Д´)ノぬっころぬ!!!!
0155デフォルトの名無しさんNGNG
「掲示板の削除依頼は内容証明ですべし」というバカバカしい法律はありません。
そのとき裁判官は「条理」を根拠にします。社会的常識も条理です。
内容証明でなくても裁判で事実を証明できれば勝てます。
プロバイダ責任制限法の条文を読んだけど、どうして免責の対象になるのか?教えてくれる?

0156デフォルトの名無しさんNGNG
大変なんですねぇ・・・頑張ってヽ(´ー`)ノ
0157山崎渉NGNG
(^^)
0158デフォルトの名無しさんNGNG
訴えられたら捕まる?(^_^;)なんか勘違いしてるでしょ
0159山崎渉NGNG
(^^)
0160デフォルトの名無しさんNGNG
浮上
0161山崎渉NGNG
(^^)
0162デフォルトの名無しさんNGNG
hage
0163デフォルトの名無しさんNGNG
絶滅種保存age
0164デフォルトの名無しさんNGNG
いまATLでWebサービスを開発しているのですが、珍しいですかね?
0165デフォルトの名無しさんNGNG
>>164
ATLって作るのは簡単なんだけど、多分メンテできる人が少ないから避けられると思う。
しかもほとんどのSEはATLって何か知らないから、ATLでやったほうがいい、っていっても却下される。
0166デフォルトの名無しさんNGNG
そうかあ。もったいないなあ。ATL良くできてるのに。
0167デフォルトの名無しさんNGNG
ATL Serverを使った一大プロジェクト、.NET MyServicesがこけた時点でATLは終わった。
GUIの強みもLonghornで無くなる。
0168デフォルトの名無しさんNGNG
最初はATLを使ってWEBサービスに組み込んでたんだけど
なんでこんな面倒な事をするのかよくわからななくなったので
やめました。
0169デフォルトの名無しさんNGNG
いいかげん、MFCが滅んでくれるのがいいのだけどね。
VBみたいな存在になりつつある。嫌過ぎ。
0170デフォルトの名無しさんNGNG
>>169
ATLがVBみたいな存在なの?
どういう意味で?
0171デフォルトの名無しさんNGNG
VBって作るのは簡単なんだけど、多分メンテできる人が少ないから避けられると思う。
しかもほとんどのSEはVBって何か知らないから、VBでやったほうがいい、っていっても却下される。
0172デフォルトの名無しさんNGNG
>170
169じゃないけど。MFCがVBみたいなんじゃないかなあ。
APIレベルの動作を知らないで変なことをやっちゃう人が
多いんでしょ。オレも5年くらい前はかなりそんなの作ってた。

>171
ネタ?ATLについてならそういうこと言えるかも。
0173デフォルトの名無しさんNGNG
MFCって作るのは簡単なんだけど、多分メンテできる人が少ないから避けられると思う。
しかもほとんどのSEはMFCって何か知らないから、MFCでやったほうがいい、っていっても却下される。
0174テンプレNGNG
○○って作るのは簡単なんだけど、多分メンテできる人が少ないから避けられると思う。
しかもほとんどのSEは○○って何か知らないから、MFCでやったほうがいい、っていっても却下される。
0175デフォルトの名無しさんNGNG
点プレ減点33点
0176デフォルトの名無しさんNGNG
ATLとSTLってどう違うんですか?
0177デフォルトの名無しさんNGNG
WTLでこんな感じで
class CFileView : public CWindowImpl<CFileView, CListViewCtrl>
リストビュー生成したんだけど、
これの初期化(カラムの追加とか)ってどこでやればいいの?
OnCreate作ってやっても追加できなかったんだけど。

同じコードをOnChar作って書くと
キー押せばちゃんと追加されるのは確認済み。
0178デフォルトの名無しさんNGNG
OnCreateでできたよ。
0179177NGNG
>>178
ありがとう。自分のミスでした。
OnCreateをオーバーライドしたら自分でDefWindowProcも
呼んであげないといけないのね。
呼んでなかったので、リストビュー自体が作られてなかったみたいです。
呼ぶようにしたらできました。初心者でスマソ。
0180デフォルトの名無しさんNGNG
WTLってなんでこんなに流行らないの?
日本語ページほとんど無いし、Donutくらいしか使ってるソフト無いし。

テンプレートベースだから実行ファイルは小さいしランタイムもいらないし、
MFCをシェイプアップした感じのクラス構成は使いやすいし、
生API+C++で書くのと違ってわざわざGetWindowLongでthis変数取得したりしなくても
ちゃんとOOできるし。
WindowsのGUIライブラリとしては最強だと思うんだけど。
0181デフォルトの名無しさんNGNG
>>180
サイズを追求するならフレームワークは自作するし、そうでないならMFCで十分
WTLは中途半端


0182デフォルトの名無しさんNGNG
>>180
時代は.NETだから。
商用ソフトはメーカーに見捨てられた時点で終わり。
0183デフォルトの名無しさんNGNG
商用だったのか…
0184デフォルトの名無しさんNGNG
>>181
サイズを追及するなら普通WTLだろ?
「MFCで十分」ってのもおかしな表現だよな。
大掛かりなのはMFCの方なんだから、
普通は「WTLで十分」になるはずなんだが・・・
0185デフォルトの名無しさんNGNG
WTLはもちろんフリーだが・・・
0186デフォルトの名無しさんNGNG
WTLは最低でも24KBになるから本当にサイズを追求するならWTLは使えない。
0187デフォルトの名無しさんNGNG
upxだ!
0188デフォルトの名無しさんNGNG
>>186
そういう「普通じゃない」場合には確かに使えないかもな。
Donutは一時期、「世界一小さいサイズのタブブラウザ」とか言ってたけど、
WTLはサイズがかなり小さめなのは確か。
0189デフォルトの名無しさんNGNG
>>187
小さいexeを要求するユーザほどUPXは嫌がるんだよね。
実力で小さくして欲しいらしい。
0190デフォルトの名無しさんNGNG
それにしても使ってる人少ないね。
ほとんどのPGがテンプレート拒否症なだけのような気が。
テンプレート好んで使うような香具師は、
Windowsプログラミングなんてやってなさそう。
0191デフォルトの名無しさんNGNG
>>189
UPXだと複数起動時に読み込み専用領域が共有されないし
もっともほとんどは真面目にREBASEしてないから関係ないが
0192デフォルトの名無しさんNGNG
テンプレート拒否症って、ようするにテンプレートあんまり慣れてないとか、知らないとかだろ。
まあ大多数のPGのレベルなんてそんなもんだよなぁ。
0193デフォルトの名無しさんNGNG
デフォルトでは インストール されない から。

…WTL用のウィザードってあったっけ?
0194デフォルトの名無しさんNGNG
MSが宣伝してないからだ。もう.NETだし。
0195デフォルトの名無しさんNGNG
うーむ、皆さん.NETへ移行してるんですか?
個人レベルでも?
0196デフォルトの名無しさんNGNG
いや、個人が移行してなくてもMSがその気だから。
MSが宣伝しないとWTLがあること自体知らない人も多いだろう。
0197デフォルトの名無しさんNGNG
.NETになると、C++でもライブラリが変わるのか?
持ってないから知らないんだけど。
0198デフォルトの名無しさんNGNG
managed C++なんて嫌だ。
0199デフォルトの名無しさんNGNG
>>198
意外にクセになるよ。麻薬みたいなもん。
0200デフォルトの名無しさんNGNG
WTLはおそらく上級者が使う場合が多いから、日本語ドキュメントのサイトなんて必要ないんだよな。
ソース見ればだいたい解るからな。
0201デフォルトの名無しさんNGNG
なんで英語サイトはたくさんあるのに日本語サイトは全くないの?
外人の方がレベル高いって事?
0202デフォルトの名無しさんNGNG
上級者とか初心者とか関係なしに、使いにくいからじゃないの?
APIを薄くラッピングしただけにすぎないし、
そこそこやってるなら自前で作ってただろうし(出るのが遅すぎ)
そうでない人はMFCで満足してるかB系に流れるか。
0203デフォルトの名無しさんNGNG
かなり設計が練られてて、ハイレベルなので、自前で作ったのよりは
出来がいいはず。
そのままAPI使うよりは、オブジェクト指向やジェネリックプログラミングを
格段に導入しやすくなってる。
MFCみたいにランタイムが必要なわけでもないし、設計が悪いわけでもない。
0204デフォルトの名無しさんNGNG
WTLより自作のほうがいいと信じてる人は
きっとリンクリストの再発明も繰り返してるんだろうな
STL? 自作したほうが効率がいいに決まってるじゃない
0205デフォルトの名無しさんNGNG
自作の方が良いというか
今まで自作で間に合ってきたから
わざわざ乗り換える必然性が無いというか
0206デフォルトの名無しさんNGNG
それならわかる。
> 出るのが遅すぎ
ってこったな。
0207デフォルトの名無しさんNGNG
それで今まで自作でやって来た人がWTL使いに抜かされて、
WTL使いが.NET使いに抜かされていくわけですね。
0208デフォルトの名無しさんNGNG
>>207
どういう意味で"抜かされる"のですか?
0209デフォルトの名無しさんNGNG
実用的技術力
開発効率
0210デフォルトの名無しさんNGNG
はたしてWTLが実用的なのかと小一時間(ry
WTLも自作フレームワークも、つぶしのきかない技術であることに変わりはないな
0211デフォルトの名無しさんNGNG
非実用性なら.NETの方がWTLより上だろう。
それでもカビの生えたWTLよりは使われていくだろう。
.NETの寿命は短いかもしれないが。
0212デフォルトの名無しさんNGNG
>>210
>はたしてWTLが実用的なのかと小一時間

( ´,_ゝ`)プゥー 実用できるほど学習する能力が君に無いだけだろ
0213デフォルトの名無しさんNGNG
書くコード量が少ないつまり開発効率がいい方から順に
.NET > WTL > 自作フレームワーク
0214デフォルトの名無しさんNGNG
単にウィザードが発達してるだけだとか
0215デフォルトの名無しさんNGNG
最近Tony Goodhewの名前を聞かなくなったな。
0216デフォルトの名無しさんNGNG
.NETのManagedC++のライブラリってどんな感じなの?
テンプレート使うの?
あと、WTLってテンプレート使ってるのがMFCとの根本的な違いだと思うけど、
それで何が良くなるの?
サンプルを見た感じだと普通にクラスの継承を使ってるし、MFCとの違いが
イマイチよくわから無かった。
0217デフォルトの名無しさんNGNG
Managed C++==属性つきプログラミング
であってる?
IDLファイルとか作らなくてイイヤツの事?
0218デフォルトの名無しさんNGNG
WTLは基本的にvirtualを使わないで多胎を実現してる
0219デフォルトの名無しさんNGNG
>>213
バグが出にくい、デバッグしやすい、再利用がしやすい、
つまり開発効率いい方から順に
Swing > AWT > WTL > 自作フレームワーク >>>>>ジェリコの壁>>>>> .NET
0220デフォルトの名無しさんNGNG
Java厨キタ━━━━━(゚∀゚)━━━━━!!
0221デフォルトの名無しさんNGNG
WTLってフレームワークからしてバグバグだよな
0222デフォルトの名無しさんNGNG
ヘッダだけなので簡単に修正できるし修正箇所とかもも
全部ネットに載ってるけどね。
0223デフォルトの名無しさんNGNG
>>222
URLキボンヌ。
最新のバージョンは結構バグが直ったって聞いたけどなぁ。
0224デフォルトの名無しさんNGNG
>>223
http://members.jcom.home.ne.jp/rapt/files/src/DonutRAPT_40_src.cab
の中とか、海外のMLとか
0225デフォルトの名無しさんNGNG
.NETでATLプロジェクト作ってコンパイルしても、
リソースのバージョンが反映されていないんだけど俺だけ?
後で出来たDLLのプロパティ見ても空っぽになってる。
0226デフォルトの名無しさんNGNG
>>225
初心者が良くやるやつだな
0227デフォルトの名無しさんNGNG
>>226
え?
どこ直すの?
0228デフォルトの名無しさんNGNG
ツールバーの別のボタンを押せ
0229デフォルトの名無しさんNGNG
>>228
どこどこ?
マジでわかんない。
つか.NETからだよね、これって。
VC++6.0じゃこんなこと無かったし。
0230デフォルトの名無しさんNGNG
raptのfixedwtl7と標準のWTL7をdiffしてみたが
WTL7も相当バグってるな。
0231デフォルトの名無しさんNGNG
そんなにバグが放置されまくってること自体
マイナー & MSにやる気がないことの現れだな
0232デフォルトの名無しさんNGNG
APIのバグも長期放置するけどナー
0233デフォルトの名無しさんNGNG
開発していて、望んだ動作をしていない場合、
WTLのソースをその都度変えちゃってる。
バグなのかどうかはわからんが。
0234デフォルトの名無しさんNGNG
>>233
Σ( ̄▽ ̄;)
0235デフォルトの名無しさんNGNG
>>234
改変したWTLのソースごと持ち運んでも大したサイズにならないんだし、
別にいいんじゃない?
0236235NGNG
改変したWTLで作ったソフトをオープンソースで公開するとしても、
改変部分のdiffを取って同梱するか、
Raptみたいに改変したファイルだけ付属しちゃえばいいんだし。
0237デフォルトの名無しさんNGNG
テンプレートライブラリだから微妙に改造された少しずつ異なる
DLLが出回って収拾つかなくなったりもしないし
0238デフォルトの名無しさんNGNG
ヘッダファイルだけってのは手軽でいいよな。
ATLもそうなの?
0239デフォルトの名無しさんNGNG
おまえらライブラリのソースを勝手に変更して、
「スタティックリンクしかしないからいいじゃん」
っていってる厨と同レベルだな
0240デフォルトの名無しさんNGNG
何が厨なのか説明しないお前が厨
0241デフォルトの名無しさんNGNG
WTLのヘッダがが変更されてることに気づかずソースを参考にして別のプログラムを作ってみたら挙動が違って混乱する罠
0242デフォルトの名無しさんNGNG
でも、変更したものを配布しちゃって良いのか?
0243デフォルトの名無しさんNGNG
差分だけなら問題なし
差分だけで同一性保持権の侵害に問われる可能性もなくはないが
プログラムの著作物でバグ取りという前提だからさらに無問題
0244デフォルトの名無しさんNGNG
WTLでアイコンつきメニューを使う場合はわざわざコマンドバー作らないと駄目ですか?
CMenuの実装見てもオーナードローらしきコードは見当たらないし。
0245225NGNG
しつこくてすまぬ。
どうしても.NETのATLプロジェクトでバージョンが
反映されないのが分からない。
たすけて・・・。
0246デフォルトの名無しさんNGNG
ライブラリを変更しないのは、主にライブラリのバージョンアップ時に、
自分のソースとライブラリのソースを、変更しなくて済むようにするためだろ。
なに? WTLはもうバージョンアップしない??
0247デフォルトの名無しさんNGNG
>>245
クリーンビルドじゃ駄目か?
0248デフォルトの名無しさんNGNG
>>246
バージョンアップしたらまた直すが。
つーか、バグだろうし。
0249225NGNG
>>247
さんくす。

それもダメでした。
いくつか作ったけど、どれもこれもダメ。
プロキシ/スタブの方は問題なく反映される。
環境も会社と家ので試したけどどちらもダメ。

他のみんなは反映されてるの?
0250デフォルトの名無しさんNGNG
WTLおもしろそう。

これから勉強しよ〜っと。
0251デフォルトの名無しさんNGNG
ATLってなんでtry〜catch使うとコンパイラで警告出るの?
0252デフォルトの名無しさんNGNG
>>251
コンパイルオプションの設定が悪い
0253250NGNG
ちょっと触っただけだけど興味深い・・・


VC7だと毎回「古い形式じゃゴルァ!」と出るのがウザイんだけど・・・
0254デフォルトの名無しさんNGNG
マジ?
どこがどう古い形式なんだ?
0255250NGNG

あれ、初めの一回だけ?
もう出なくなった。
0256デフォルトの名無しさんNGNG
何が古い形式なのかわからんけど、ワークスペース等は一度変換してしまえば無問題
0257デフォルトの名無しさんNGNG
属性付きプロジェクトでWTLのビルドを通すようにするのには苦労したぜ。
0258名無しさん♯NGNG
VS 2003でWTLを使う方法。

1. AppWiz70\setup.jsの変更

 var strVC7Key = "HKLM\\Software\\Microsoft\\VisualStudio\\7.1\\Setup\\VC\\ProductDir";
                                         ↑
2. AppWiz70\Files\WTLApp70.vszの変更

 Wizard=VsWizard.VsWizardEngine.7.1
                      ↑
3. セットアップ実行
0259デフォルトの名無しさんNGNG
VS2003って何?
0260デフォルトの名無しさんNGNG
>>259
4月か5月に出る。
0261デフォルトの名無しさんNGNG
VC7でWTL/ATLのプロジェクト作ってコンパイル→実行まで出来るんだけど
CMessageFilterとかWTLの独自アイテムの定義に「定義に移動」で
たどり着けないのですが、そういうものと思ってあきらめた方がいいですか?
0262デフォルトの名無しさんNGNG
ATLとWTLのファイル全てプロジェクトに追加すれば良いんじゃないのか?
0263デフォルトの名無しさんNGNG
オプション設定に検索するソースディレクトリの指定がなかったっけ?
0264261NGNG
Inclide file のPathにWTLのIncludeのパスを設定してもだめでした・・・
0265デフォルトの名無しさんNGNG
一度作ったCOMのDLLファイル名を変えたいんだけど、どうすればいいかおせーて。

古いDLLがHogeHoge.dllだとします。
で、新しい関数を追加した新しいDLLはHogeHoge2.dllです。
新しい関数はまだ信頼性が保証できないので、二つのDLLを共存させたいんです。
そこで古いプロジェクトに関数を追加して、GUIDを変えたんですが、うまく動きません。
0266265NGNG
動きました。RGSファイルを書き換えていませんでした・・・
0267263NGNG
>264
inludeのパス、libのパス、そしてsrcのパス!
0268263NGNG
う。inludeじゃなくてinclude
0269デフォルトの名無しさんNGNG
>>267

lib , src は include と同じでいいのかな?
WTLってIncludeしかないよね?
0270263NGNG
…あ゛、そ、か。
普通のライブラリのつもりでいた。逝ってくるよ…
0271デフォルトの名無しさんNGNG
良スレあげ
0272デフォルトの名無しさんNGNG
もしかしてWTLのことってMSDNに記述無いの?
0273ネニグレクト・ラーファNGNG
ttp://www.geocities.jp/fieldabout/
「世界の仕組み研究所!!」

何か質問があったらおいらにかかってこいでつ。
活動してなかったけど世界の仕組み研究所は生まれ変わるでつ。
ちょっとづつHTMLがちょっと分かってきたので少しづつアップするでつ。

0274bloomNGNG
http://www.agemasukudasai.com/bloom/
0275デフォルトの名無しさんNGNG
俺はこの辺見てる>WTL
ttp://www.codeproject.com/wtl/
0276デフォルトの名無しさんNGNG
あげ
0277デフォルトの名無しさんNGNG
ATL ってどこでダウンロードするの?
0278デフォルトの名無しさんNGNG
VCに付いてくる。
ATLはダウンロード出来ないはず 
0279デフォルトの名無しさんNGNG
あ、DigitalMarsのサイトでダウンロード出来たかも知れない
0280デフォルトの名無しさんNGNG
>>277
P2PでVC++ごと落とせ
0281 NGNG
あげあげあげ
0282デフォルトの名無しさんNGNG
誰かDDX系のマクロだけでもまとめてくれんかの?


MFCとの対応表みたいなの作ってくれるといいのだが・・・
0283デフォルトの名無しさんNGNG
業務でWTL使ってる人いる?
0284デフォルトの名無しさんNGNG
http://user.ecc.u-tokyo.ac.jp/~rr26303/develop/wtl/atlcrack.html
>>282
0285デフォルトの名無しさんNGNG
>>283
職場に保守できる人がないみたいだからから使ってない。
0286デフォルトの名無しさんNGNG
>>283
∩(・・
職場でC++ 使えるの自分だけだし。
だから、結構自分勝手にやってる。
何よりMFC触ったことがない!



0287デフォルトの名無しさんNGNG
仕事でWTLって使えないのが普通なんだ…
もしかしてMFC必須なのか…

そもそもC++すら活かせそうにないけど(´Д⊂
0288283NGNG
>>286
>何よりMFC触ったことがない!

(・∀・)イイ!!
0289デフォルトの名無しさんNGNG
WTL7.0ってWinXPじゃないとダメなのか・・・
0290デフォルトの名無しさんNGNG
んなこたーない
0291283NGNG
>>286 もしかしてBoostとかも使い放題ですか?
0292デフォルトの名無しさんNGNG
Boostはライセンスの問題とかあるので、微妙。
0293デフォルトの名無しさんNGNG
http://boost.org/more/lib_guide.htm#License

License requirements
Must be simple to read and understand.
Must grant permission without fee to copy, use and modify the software for any use (commercial and non-commercial).
Must require that the license appear on all copies of the software source code.
Must not require that the license appear with executables or other binary uses of the library.
Must not require that the source code be available for execution or other binary uses of the library.
May restrict the use of the name and description of the library to the standard version found on the Boost web site.
0294デフォルトの名無しさんNGNG
>>293
>Must be simple to read and understand.
いいな、これw
こういうの好きだ。
0295デフォルトの名無しさんNGNG
boost を使ったアプリケーションの使用許諾書は短文でなければならないと言う事なのか。
0296デフォルトの名無しさんNGNG
ライセンスじゃなくてソースコードへの要求では
0297デフォルトの名無しさんNGNG
WTL7にしたら、atlapp.hでエラーでまくるのだけどうちだけ?
0298かおりん祭りNGNG
http://saitama.gasuki.com/kaorin/
〜oノハヽo〜 / ̄ ̄ ̄ ̄ ̄ ̄ ̄                
  ( ^▽^) < こんなのがございまーす♪ 
= ⊂   )   \_______
= (__/"(__) トテテテ...
0299あぼーんNGNG
 ( ・∀・)< こんなのみつけたっち♪
http://muryou.gasuki.com/moe/hankaku10.html
http://muryou.gasuki.com/moe/hankaku09.html
http://muryou.gasuki.com/moe/hankaku08.html
http://muryou.gasuki.com/moe/hankaku07.html
http://muryou.gasuki.com/moe/hankaku06.html
http://muryou.gasuki.com/moe/hankaku05.html
http://muryou.gasuki.com/moe/hankaku04.html
http://muryou.gasuki.com/moe/hankaku03.html
http://muryou.gasuki.com/moe/hankaku02.html
http://muryou.gasuki.com/moe/hankaku01.html
0300デフォルトの名無しさんNGNG
>>297
スコットさんも出るらしい
ttp://www.idevresource.com/wtl/issues.asp
0301デフォルトの名無しさんNGNG
>>300
スコットってあの、デジタルカウボーイ"Juranek Scott"か!
こいつは、やばいことになってきたな…
0302デフォルトの名無しさんNGNG
WTLで作ったソフトはWin95でも動きますか?
MFC7で作ると動かないので、VS.NET以降でのネイティブアプリは
WTL+C++標準ライブラリがいいかなぁと思ってるのですがどうでしょう?
意見を聞かせてください。
0303デフォルトの名無しさんNGNG
#define WINVERとかちゃんとすれば動きます。
0304デフォルトの名無しさんNGNG
MDIの子Frameを複数種類持つことは出来ますか?
VS6のソースviewとリソースviewみたいな感じの。

もしかして同じ子Frameクラスを継承すればいいだけ?
0305 NGNG
                _∧_∧_∧_∧_∧_∧_∧_∧_
     デケデケ      |                          |
        ドコドコ   <    小泉政権崩壊まだぁ〜!?     >
   ☆      ドムドム |_  _  _ _ _ _ _ _ _ _|
        ☆   ダダダダ! ∨  ∨ ∨ ∨ ∨ ∨ ∨ ∨ ∨
  ドシャーン!  ヽ         オラオラッ!!    ♪
         =≡= ∧_∧     ☆
      ♪   / 〃(・∀・ #)    / シャンシャン
    ♪   〆  ┌\と\と.ヾ∈≡∋ゞ
         ||  γ ⌒ヽヽコ ノ  ||
         || ΣΣ  .|:::|∪〓  ||   ♪
        ./|\人 _.ノノ _||_. /|\

         ドチドチ!
0306デフォルトの名無しさんNGNG
ATL7なDLLからWTLを使ってウインドウ出したい場合って、
CComModule使わないと駄目ですか?
0307デフォルトの名無しさんNGNG
WTLってMFCのCInternetSessionみたいなネット関連のクラスはないの……?
0308 NGNG
インテリセンスさへ効いてくれれば業務でも使えるのだが・・・
0309山崎渉NGNG
(^^)
0310デフォルトの名無しさんNGNG
>>308
え、効いてない?
0311デフォルトの名無しさんNGNG
cppと分けてないとか……
0312308NGNG
>>311
分ければ出るんですか?
0313 NGNG
VC2003 soon age
0314デフォルトの名無しさんNGNG
MFC使ったこと無いのですが、
WTLのウィザードで生成される

BEGIN_MSG_MAP(CMainDlg)
 MESSAGE_HANDLER(WM_INITDIALOG, OnInitDialog)
END_MSG_MAP()

みたいなのって、もしかしてMFCの部類のマクロですか?
0315デフォルトの名無しさんNGNG
>>314
互換性はあるのかどうか分からんけど、とりあえず>>284参照してみて
0316デフォルトの名無しさんNGNG
WTLはここでいいのかな・・・よろしければ質問お願いします。

WTLのAppWizardで吐き出した、モードレスダイアログの
テンプレを、他のプロジェクトで使おうと思っていたのですが、
終了時に問題がでちゃいます。流れとしては、

別アプリのウィンドウ生成
COMを初期化

メニューからダイアログ表示を選ばれたら、
以下のようにモードレスダイアログ表示。(Wizardが吐き出した通り)
CMainDlg dlg;
CMessageLoop theLoop;
_Module.AddMessageLoop(&theLoop);
dlg.ShowWindow(SW_SHOWDEFAULT);
theLoop.Run();
_Module.RemoveMessageLoop();

COM終了

という感じす。ダイアログ側から、自分でちゃんと
ダイアログを閉じてからアプリを終了する分には何の問題もありません。

ところが、ダイアログが開いたままだと、アプリ終了時にアプリ側より
ダイアログに終了メッセージを送ってから、アプリを終了すると、
何故かプロセスに残ってしまうんです。

そもそも使い方が悪いとか、何でも良いので助言頂けると幸いです。
0317デフォルトの名無しさんNGNG
しまった、上げさせてください
0318デフォルトの名無しさんNGNG
>>316
モーダルダイアログじゃないのに
メッセージループを二つ使ってるみたいだけど
これは理解してやってるの?
0319デフォルトの名無しさんNGNG
System Requirements
Supported Operating Systems: Windows XP

Required disc space: 1.6 MB
Microsoft Visual C++ .NET or Visual C++ 6.0

って書いてあるけどWin2000でも開発できるの?
0320デフォルトの名無しさんNGNG
少なくとも WTL(とATLでWTLから参照している部分)はWin2000でも使えたよ。
0321デフォルトの名無しさんNGNG
>>319
何の話?
0322デフォルトの名無しさんNGNG
>>321
あぁごめん。WTL7.0の話。ダウンロードページに>>319のように書いてあったので。
0323316NGNG
>>318
レスありがとうございます。
申し訳ないです、かなり理解してないかもしれません。

アプリのメインウィンドウの方は普通に(つまりWTLの
フレーム関係なしに)初期化しております。
その上で別途モードレスダイアログを立ち上げています。

・・・・書いている内に、かなり変な事している気がしてきました。
やはりメインウィンドウも、WTLを使った形で
生成するべきでしょうか。もう少し良く考えてみます。
0324デフォルトの名無しさんNGNG
俺は今猛烈に感動している。

「ATL?よく知らんけどCOMで何かすんだべ?俺には関係ないよ。」
と思っていたが、このスレやここからリンクするサイトを読んで、さらに今
MSDNの「ATL 3.0ウィンドウ クラス: 入門」を読んで考えを改めた。
これは1999年のドキュメントだが、俺は今までこんなすばらしいものを
見過ごしてきたのか。

2003年春、俺はATL/WTLに目覚める。
0325デフォルトの名無しさんNGNG
俺もCOMはよーわからんけど、ATL/WTLはいいと思う。
0326山崎渉NGNG
   ∧_∧
  (  ^^ )< ぬるぽ(^^)
0327山崎渉NGNG
   ∧_∧
  (  ^^ )< ぬるぽ(^^)
0328デフォルトの名無しさんNGNG
>>324
>これは1999年のドキュメントだが、俺は今までこんなすばらしいものを
>見過ごしてきたのか。

すまん。MSDNの「ATL 3.0ウィンドウ クラス: 入門」 を読んだんだが。
そんなほめられるモンじゃないと感じたけどねぇ。

C -> C++ つう流れで SDK -> WTL って考えると、なんでこんな感じになっちゃったの?
ってのが感想。
0329デフォルトの名無しさんNGNG
こんな感じとは?
0330デフォルトの名無しさんNGNG
SDKをC++化したわけではないんだが……
0331デフォルトの名無しさんNGNG
>>329
>>328がMixinとtemplateを知らなかっただけ。
0332 NGNG
templateで喜ぶなよ。って事じゃないの?
0333デフォルトの名無しさんNGNG
>C -> C++ つう流れで SDK -> WTL って考えると
  _, ._
( ゚ Д゚)  ・・・
0334デフォルトの名無しさんNGNG
> C -> C++ つう流れで SDK -> WTL って考えると、

どんな感じになると思ったの?
0335デフォルトの名無しさんNGNG
SDK++
0336デフォルトの名無しさんNGNG
SDK -> ATL/WTLなら全然問題ないような。
MFC -> ATL/WTLはダメな人多いようだけど。
0337デフォルトの名無しさんNGNG
結局言い逃げっぽいね<こんな感じ
0338デフォルトの名無しさんNGNG
つうか単に328がWTLについてけないだけだろ

フィッシングはそろそろやめようや
0339デフォルトの名無しさんNGNG
つーかWTL8は無さそうだからついていかない方がよさそうだな。
0340デフォルトの名無しさんNGNG
MFC7で作ったプログラムはWin95では動きませんが、
ATL7で作ったプログラムはWin95でも動くのでしょうか?
0341デフォルトの名無しさんNGNG
Managed C++にMFC7は使えますか?
Managed C++にATL7は使えますか?
0342デフォルトの名無しさんNGNG
GC搭載して欲しい。
0343デフォルトの名無しさんNGNG
お願いですから余計なものつけないで欲しい。
0344340NGNG
どなたかわかりませんでしょうか。
もし動くなら.NET買おうかなと思ってるのですが・・・
0345動画直リンNGNG
http://homepage.mac.com/hitomi18/
0346デフォルトの名無しさんNGNG
>>344
ログ読め
0347デフォルトの名無しさんNGNG
ログにあるのはWTL7.0。
0348デフォルトの名無しさんNGNG
あげ
0349デフォルトの名無しさんNGNG
あがってたのでネタフリ。
VS.NET2003のはATL7.0のままなんだね。
あれ、フレなかった。
0350デフォルトの名無しさんNGNG
これじゃあヘジも見放すわけだ
0351デフォルトの名無しさんNGNG
誤爆した
0352デフォルトの名無しさんNGNG
>>349
違います。
VS.NET 2003 では ATL 7.1 になってます。
0353デフォルトの名無しさんNGNG
http://www.microsoft.com/japan/msdn/visualc/productinfo/visualc03/topten/upgrade60.asp
の9にATL7.0とあるが・・
0354352NGNG
>>353
4月分のMSDNライブラリ見た?
「ATL 7.1」で検索すると VS.NET 2003 が ATL 7.1 になってるのがわかるよ。
_ATL_VER も 0x0700 じゃなくて、0x0710 って定義されてます。
0355デフォルトの名無しさんNGNG
な、なんだってぇー!
0356デフォルトの名無しさんNGNG
WTLは7.0のままなのかな
0357デフォルトの名無しさんNGNG
VS2003で
WTLを使う方法
早くきぼんぬ
0358352NGNG
>>357
>>258
0359デフォルトの名無しさんNGNG
仮にもIDE使うような人間なら、そのくらい自分で直せよ>357
0360デフォルトの名無しさんNGNG
>>358 サンクス
>>359 過去ログすら読む暇もなかったのでね

仕事暇になったら勉強しようっとWTL
0361デフォルトの名無しさんNGNG
>過去ログすら読む暇もなかったのでね
こんな痛い言い訳、書かない方がマシなのに。
0362デフォルトの名無しさんNGNG
Windowsいぢくらにゃならんようになって、せっせとSDKのラッパークラス作ってたら
既にこんなんがあるんじゃん。タイヤ作りまくり。
0363デフォルトの名無しさんNGNG
フフフ、MSにATLのバグを直してもらったぜ。
0364デフォルトの名無しさんNGNG
ATL/MFCはバンバン更新かかってますなぁ
0365デフォルトの名無しさんNGNG
良いことぢゃ
0366デフォルトの名無しさんNGNG
ちなみにいつ更新された話をしてるのかな?.NET2003での話?
0367デフォルトの名無しさんNGNG
COMオブジェクトが、2byte文字フォルダで登録出来ない不具合は直ってる?
0368363NGNG
>>366
VC7.1のATLのバグだにょ。
インシデント使って文句言ったら修正したファイルを送ってきたにょ。
0369デフォルトの名無しさんNGNG
>>368
ごめん、>>364に対してのレスなんだ<更新
それとも>>363のような人たちがたくさんいて、今まさに更新されてるって意味なのかな??
0370デフォルトの名無しさんNGNG
.NETもう終わり?
0371デフォルトの名無しさんNGNG
死滅ネタは専用スレでやっておくれ
0372デフォルトの名無しさんNGNG
遅ればせながらATLでHelloWorld作ってみた。
0373デフォルトの名無しさんNGNG
日記は板違い
0374デフォルトの名無しさんNGNG
すまんかった。
0375デフォルトの名無しさんNGNG
Active Template Library
0376デフォルトの名無しさんNGNG
ATL/WTLは内部でC/C++ライブラリ関数を使ってますか?
0377デフォルトの名無しさんNGNG
ATL_MIN_CRTなんてオプションがある位だから使ってるんだろうね。
0378デフォルトの名無しさんNGNG
プログラムのファイルサイズを小さくしたくてCRTを使ってないのだけど、
リストビューやスレッドやvectorのような動的に拡張できる配列も簡単に使いたく、
ATL/WTLが最適かと思ったけど内部でCRT使ってるならかなわぬ夢か・・・
0379デフォルトの名無しさんNGNG
>>378
だから、ATL_MIN_CRT をつければ CRT を使っているとコンパイルエラーになるよ。
#define ATL_MIN_CRT の状態でコンパイルが通るようにしればOK
0380デフォルトの名無しさんNGNG
それにしてもなんと情報の少ないことか。。。
0381デフォルトの名無しさんNGNG
ATL_MIN_CRTでも一部のCRTを使ってますよ。
0382デフォルトの名無しさんNGNG
ATL_MIN_CRTの名前からして最小限のCRTは使ってそう
0383デフォルトの名無しさんNGNG
ATL_MIN_CRTを付けてstrcpyを使ってもコンパイル通りますた
0384デフォルトの名無しさんNGNG
strcpyはLIBCの外で単体でアセンブリコードとして存在するので当たり前です。
0385デフォルトの名無しさんNGNG
ATL_MIN_CRTを付けてLIBCをはずしてコンパイルが通ればよいのかな?
0386デフォルトの名無しさんNGNG
MSDN Online見たけど.NETだとやたらAPIのラッパクラスが増えてるんだな
6月に2003買おう。でも今回はMSDNデラックスEditionが無いので(´・ω・`)ショボーン。
0387デフォルトの名無しさんNGNG
>>386

え!マジで
0388デフォルトの名無しさんNGNG
>>386
あるよ
0389デフォルトの名無しさんNGNG
>>388
どっかに書いてある?MSのメールには無かったが・・・
0390デフォルトの名無しさんNGNG
http://www.atmarkit.co.jp/fdotnet/insiderseye/20030522vs2003/vs2003.html
ここ見るとデラックス版あったよ。
0391山崎渉NGNG
     ∧_∧
ピュ.ー (  ^^ ) <これからも僕を応援して下さいね(^^)。
  =〔~∪ ̄ ̄〕
  = ◎――◎                      山崎渉
0392デフォルトの名無しさんNGNG
緊急浮上
0393デフォルトの名無しさんNGNG
もういいよもういいよなにがWTLだよもういいよどうせやる気無いんだろ
うんざりだよどうせ流行んないよいいよいいよMFCと心中するよぬるぽ
0394デフォルトの名無しさんNGNG
2003のダイレクトメールが来た。MFC7.1/ATL7.1だった。
0395デフォルトの名無しさんNGNG
>>393
そんな君にはwxWindowsをお勧めするよ
0396デフォルトの名無しさんNGNG
>>395
スレ違い
0397デフォルトの名無しさんNGNG
>>393
ガッ
0398デフォルトの名無しさんNGNG
ATLでgoogleツールバーみたいなの作ってるんだけど、Navigate2でPOSTするにはどうしたらいいか知ってる香具師いますか?
どうやってもGETとして扱われてるみたいです。
0399デフォルトの名無しさんNGNG
ttp://msdn.microsoft.com/workshop/browser/webbrowser/reference/ifaces/iwebbrowser2/navigate2.asp
PostDataがNULLだとGETになりますな。

ハズしてたら恥ずかしい。
0400デフォルトの名無しさんNGNG
sage>>399
Thanks。

PostDataには、いろいろ入れて試してみてるんだけど、POST先のContext-Typeと相違があったら、PostDataはNULLとみなされるらしいっす。
CByteArray型でエンコードした内容を入れなきゃならないらしいけど、このエンコードがうまくいってないみたいです。
というところまではわかったんだけど、CStringをBYTE配列に入れて渡してみてもだめでした。
0401サンプルですNGNG
☆クリックで救える○マ○コがあるらしい!!☆
http://yahooo.s2.x-beat.com/linkvp/linkvp.html
0402デフォルトの名無しさんNGNG
あ、何気に解決しました。
ありがとうございます。
0403デフォルトの名無しさんNGNG
(´-`).。oO(まさか401のリンク先で解決……?)
0404デフォルトの名無しさんNGNG
あげまする
0405デフォルトの名無しさんNGNG
hageます。
0406デフォルトの名無しさんNGNG
WTLの話ってこんなところでやってたのかよ。探しまくったじゃねーかよ!
スレ立てないの?
0407デフォルトの名無しさんNGNG
まだいいんじゃない。ここでさえ話題止まってるんだし。
0408デフォルトの名無しさんNGNG
IEのようにReBar領域全体を覆うような境界線を描画させたいものの、
CreateSimpleReBar()のスタイルをいろいろ変えてみてもどうもうまくいかない…。
どうすれば実現できるか、どなたかわかりませんでしょうか。
0409デフォルトの名無しさんNGNG
>>408
Spy++でIEのReBarと自分のReBarのスタイルを比べてみるといいよ。
0410408NGNG
>>409
ありがとうございます。
比較してみたもののどうにもうまくいかず…と思いさらに調査していたら、
hp.vector.co.jp/authors/VA016589/wtl/bugs/bugs.html
に同じ症状が見つかりました。自力で描画しないといけないのか…。むむ。
0411409NGNG
スマン、俺も後で試してみたらCCS_NOPARENTALIGNに行き着いたところで困ったw
やっぱこれで描画するしかないのか……
0412デフォルトの名無しさんNGNG
VC++.netでWindowsサービスってどうやって作るんだ?
ATLプロジェクトのサービス(exe)選んだけど
http://program.station.ez-net.jp/special/vc/atl/service.asp
ここと同じところで引っかかった。
何か間違ってるのか・・・
0413デフォルトの名無しさんNGNG
>>412
CodeProject に載ってるよ。
PreMessageLoop にバグがあるから、直せば動くよ。
http://www.codeproject.com/atl/MigratingAtlServices.asp
0414デフォルトの名無しさんNGNG
>>413
ありがとう。バグだったのか・・・
つーか2002のころからあるみたいだが
2003になってもなおってないとは
0415ゲイシNGNG
違うよ仕様だよ
0416デフォルトの名無しさんNGNG
質問お願いします。

WTL7.0のAppWizardで、普通にSDI Applicationを作成した後、
そのプロジェクトにcppファイルを一つでも加えると、次のエラーが出てしまいます。

「(加えたcppファイル名) : fatal error C1010: プリコンパイル済みヘッダーの検索中に予期しない EOF を検出しました。」

原因を教えていただければ幸いです。
0417416NGNG
追記すいません、VC++6.0 sp5、Windows2000でやっております。
0418デフォルトの名無しさんNGNG
#include "stdafx.h"
するか、もしくは、プリコンパイル済みヘッダを使用しない設定にする。
0419デフォルトの名無しさんNGNG
>>418
レスありがとうございます、無事コンパイルできました。

プリコンパイルって、指定ヘッダをあらかじめまとめておく
…くらいの認識だったのですが、色々やっかいなんですねぇ
0420山崎 渉NGNG

 __∧_∧_
 |(  ^^ )| <寝るぽ(^^)
 |\⌒⌒⌒\
 \ |⌒⌒⌒~|         山崎渉
   ~ ̄ ̄ ̄ ̄
0421 NGNG
TAIdxFuture error LNK2005: "class _variant_t vtMissing" (?vtMissing@@3V_variant_t@@A) は既に comsuppwd.lib(comutil.obj) で定義されています。

意味わからん・・・
0422デフォルトの名無しさんNGNG
ATC
0423デフォルトの名無しさんNGNG
ATL7の本出て欲しい
0424デフォルトの名無しさんNGNG
>>423
MSDNライブラリをプリントアウトすれば?
0425山崎 渉NGNG
(^^)
0426デフォルトの名無しさんNGNG
VC7ではATL_MIN_CRTで通ったのに、VC7.1で通らなくなった…
0427デフォルトの名無しさんNGNG
>>426
へー、ATL_MIN_CRTなんか使ってる人がいるんだ。
0428山崎 渉NGNG
    (⌒V⌒)
   │ ^ ^ │<これからも僕を応援して下さいね(^^)。
  ⊂|    |つ
   (_)(_)                      山崎パン
0429デフォルトの名無しさんNGNG
オウム幹部と麻原が捕まった時のことを思い出すな
0430デフォルトの名無しさんNGNG
VC6でATLを学ぶのとVC.netのATLで学ぶのどっちがいい?
書籍がVC6のばかりだから、とりあえずVC6で勉強してるんですが。
0431デフォルトの名無しさんNGNG
個人的な意見だけど、最新版のATLを使えるようにした方がいいと思うよ。
いろいろ便利になってるし。
0432430NGNG
>>431
VC.netで作ってもCOMなんだから、VB6からも普通に使えますよね?
0433名無し@沢村NGNG
>>432
おう
0434デフォルトの名無しさんNGNG
ATL/WTLによるって.NET SDK付属のVCだけでできる?
0435デフォルトの名無しさんNGNG
>>434
ムリピョーン
0436デフォルトの名無しさんNGNG
による開発」だった。できないのかぁ
0437デフォルトの名無しさんNGNG
SDKにゃATLが付いてないもんね
0438デフォルトの名無しさんNGNG
.NET SDKでWin32開発はできないでにょ。
0439デフォルトの名無しさんNGNG
VCコンパイラだけはついてるのよ
0440デフォルトの名無しさんNGNG
.NET SDK+Platform SDKでフリーWin32プログラミングできるよ。
WTLは使ったことないから知らないけど。
0441デフォルトの名無しさんNGNG
>.NET SDK+Platform SDKでフリーWin32プログラミングできるよ。
PlatformSDKだけでいいし、そんなことみんな知ってるし、
>WTLは使ったことないから知らないけど。
じゃあレスするなと。
0442デフォルトの名無しさんNGNG
> PlatformSDKだけでいいし、そんなことみんな知ってるし、
ハァ?PSDKにcl.exe含まれてないだろ。
0443デフォルトの名無しさんNGNG
ATLやWTLみたいな感じで自作のテンプレートライブラリを作っていて、
AtlLoadStringみたいなユーティリティ的な普通の関数もいくつか混ぜたいが、
あいにくそいつはinlineにはできないとする。
そういう場合どうします?

ヘッダの方は宣言だけにして大人しく.cppに実装するってのもイマイチだし。
ダミークラス作ったりするしかないのかなぁ。

何かいい案はないでしょうか。
0444デフォルトの名無しさんNGNG
sageてるし……
0445デフォルトの名無しさんNGNG
自作ライブラリなら根本的にATL/WTLの質問じゃないんじゃ・・・
C++とかテンプレートスレでは?
0446443NGNG
>>445
スマソ、自分でも書いてからそんな気がしてた。
自分でもうちょい考えてから、改めて向こうのスレで聞いてみます。
0447デフォルトの名無しさんNGNG
UI−Proxy/Stub−CTLのように
カスタムのProxy/Stubを組み込みたいんだけど、
通常にCoCreateInstanceすると
UI−CTLのように直接呼び出されちゃうんです。
そうしたら、Proxy/Stubを通るようになるんでしょうか?
0448デフォルトの名無しさんNGNG
age
0449デフォルトの名無しさんNGNG
VC買わなくてもつかえるATL/WTLのオープンソース版みたいなのってない?
0450デフォルトの名無しさんNGNG
WTLってVC必須なの?
0451デフォルトの名無しさんNGNG
ちがうの?
0452450NGNG
いやごめん、全然知らないけど

でもただのテンプレートだし、Win32APIしか使ってないし…
そりゃ、さすがにウィザードは使えないだろうけどね
0453デフォルトの名無しさんNGNG
>>450
そりゃあATLの拡張なんだから
0454デフォルトの名無しさんNGNG
.NET2003でどうもうまく動かないな。WTL。
ウィザードはインストールできたし、コードも吐くんだけど、コンパイルが通らん。
atl***.hがインクルードできませんと出る。
0455デフォルトの名無しさんNGNG
>>454
インクルードファイルのパス通した?
0456デフォルトの名無しさんNGNG
あれ、パスは手動で通す必要があったの?
VC6の時はやらなかったような記憶があったスマソ
0457デフォルトの名無しさんNGNG
なんたら.jsを実行してないとか。
0458デフォルトの名無しさんNGNG
setup.jsだった。そのまんまだった。
0459454&456NGNG
パス通したらコンパイル出来ました。
恥ずかしい。逝ってきます。
0460デフォルトの名無しさんNGNG
T2OLEとか使おうとすると
error C2065: '_convert' : 定義されていない識別子です。
など他にもエラーが出るけどどういうこと。
0461デフォルトの名無しさんNGNG
setup.jsの一部を書き換えると.NET2003でもウィザードとか使えるよ
0462デフォルトの名無しさんNGNG
WTL作者本人による.NET2003のウィザード対応方法
ttp://groups.yahoo.com/group/wtl/message/5373
0463デフォルトの名無しさんNGNG
WTLの解説サイトって英文でもいいからどこかない?
0464デフォルトの名無しさんNGNG
こことか
ttp://www.codeproject.com/wtl/
0465デフォルトの名無しさんNGNG
そこは定番だね。他は?
0466デフォルトの名無しさんNGNG
自分でぐぐれ知障
0467デフォルトの名無しさんNGNG
setup.jsの書き換えは>>258で既出だった。
0468デフォルトの名無しさんNGNG
むしろ
自分でつくれ素敵マン
0469デフォルトの名無しさんNGNG
>>468
自分で作ったら同じようなsetup.jsになった…。
0470デフォルトの名無しさんNGNG
age
0471デフォルトの名無しさんNGNG
MSDNライブラリの「ATL 3.0ウィンドウ クラス: 入門」の7.1版てある?
OnlineMSDNで検索したんだけど無さげ。
0472デフォルトの名無しさんNGNG
Win2000, VC++6.0 で_ATL_MIN_CRTを使ってウィンドウを表示するだけの
プログラムを作っても、リリースビルドで36kbありました。
http://www.microsoft.com/japan/msdn/library/ja/vccore/html/vclrfBenefitsTradeoffsOfUsing_ATL_MIN_CRT.asp
を見るとCRTを使わないので小さくなるとあるのですが、
もしかしてVC++6.0では小さくならないんでしょうか?
0473デフォルトの名無しさんNGNG
nowin98とかは当然やってるんだろうな?
0474デフォルトの名無しさんNGNG
>>473
>>472の答えにはなってないかと。
0475デフォルトの名無しさんNGNG
>>472
比較対象の (_ATL_MIN_CRT 使ってない) プログラムに CRT をスタティックリンク
してないとか。MSVCRT.DLL 使ってたらサイズ比較は意味無いぞ。
0476デフォルトの名無しさんNGNG
>>475
シングルスレッド用ライブラリをスタティックリンクしています。
Win32Appプロジェクトなのですが、_ATL_MIN_CRT 以外にすることがあるのでしょうか。
0477デフォルトの名無しさんNGNG
VC6(SP5)、ATL COM AppWizard から作成したDLLで、MFCを利用にチェックを入れて作成しています。
作成途上なんどかビルドを繰り返していると、Warning LNK4006 やら error LNK2005がでるようになって
しまいました。 どちらも、"DllMain@12 が重複〜"という趣旨の警告を出しているのですが、その当たり
をさわってもいなければ、リンクの設定も弄っていない状態です。
 同じような症状にあわれた方、対処法ご存じの方いらっしゃいませんでしょうか?
0478デフォルトの名無しさんNGNG
WTL7.0のCFolderDialogのSetSelection()とか使う時は、CFolderDialogImplの派生で
OnInitializedをオーバーライドしないといけないんだよね?

それと、もしMFCだと基底クラスでOnInitializedが仮想関数で、派生クラスで
それをオーバーライドすると思うんだけど、そうしないでテンプレートでやる利点て何?
0479 NGNG
>>478
後者だけ。

仮想関数方式だと、基底クラスで定義された非 virtual な関数は派生クラス
側で変更できないので、柔軟性を持たせるにはなんでもかんでも virtual に
するしかなくって、vtbl が肥大化するし効率あまり良くないから。

あと仮想基底クラスを使わなくても良いのでなんとなく安心っていうのもある。
0480デフォルトの名無しさんNGNG
>>479
なるほど、たしかにWTLの売りを考えるとその通りだ。
0481デフォルトの名無しさんNGNG
ATLインターナルにCWindow(CWindowImplではなく)でメインウィンドウを作る例が
あったと思うんだけど、あれってどういうコードだっけ?
MSDNには既存のHWNDをアタッチする方法はあるんだけど、Createで作る例は
見つからないです。
0482デフォルトの名無しさんNGNG
WTLで作ったウィンドウを、ダブルクリックを受付るよう指定したいのですが、
ウィンドウクラスのスタイルを変えるにはどうすれば良いのでしょうか?

こんな風にやってもうまくいきません…

CMainFrame main_frame;
main_frame.CreateEx();

CFrameWndClassInfo& ci = main_frame.GetWndClassInfo();
ci.m_wc.style |= CS_DBLCLKS;
RegisterClassEx( &ci.m_wc );
0483482NGNG
RegisterClassExではなく、SetClassLongを使ったらいけました、お騒がせしました。
0484デフォルトの名無しさんNGNG
>>483
Win32API の基礎から勉強しなおせ。
0485デフォルトの名無しさんNGNG
>>484
http://pc2.2ch.net/test/read.cgi/tech/1064204112/
0486デフォルトの名無しさんNGNG
質問です

ATL COM AppWizardからサービス(exe)を作成しています。
MFC関連を使いたくて(職場の規約でCStringを使わねばならない)#include <afxwin.h>を定義したところ
次のエラーが発生

ソースファイル名 : fatal error C1189: #error : WINDOWS.H already included. MFC apps must not #include <windows.h>

初心者なりに色々テストしてみて #include <atlbase.h> と競合してるところまでわかりましたが
ATL COM AppWizardのサービス(exe)で なんとかMFCを使うことはできないのでしょうか?

お願いします。
0487デフォルトの名無しさんNGNG
AppWizardでMFCをサポートするにチェックを入れる。
0488頭悪い ◆gGTEz68pSM NGNG
EXEの場合はMFCは使えないのでは。CStringTなら使えるかな?
0489486NGNG
解答ありがとうございます。
CStringTですか。聞いたことすらありませんでした。うわー
個人的に興味があるので調べてみます。
0490デフォルトの名無しさんNGNG
VC++.NET2003(VC++7.1)で、
WTLコントロールクラスに対してインテリセンス(メンバ自動表示)が効かないんですが、
どうすれば効くように出来ますか?
0491デフォルトの名無しさんNGNG
別にCStringだけなら、WTLのatlmisc.h使えばいいような気もするが。
0492デフォルトの名無しさんNGNG
それさえ使わなくて済むって話じゃ
0493デフォルトの名無しさんNGNG
今は、ATLもCStringをサポートしているのだ。
0494デフォルトの名無しさんNGNG
WTL7.0ゲットしてきたんだけどATL7.1と相性かなり悪くない?
ヘッダ名かぶってるし互換性ないし。
0495デフォルトの名無しさんNGNG
マジ?ATL7.1が楽しみで2003買おうと思ってたのに・・・
0496デフォルトの名無しさんNGNG
>>494
俺は工夫して使ってるけどな。
しかも属性付きで。
0497デフォルトの名無しさんNGNG
>>494
別にヘッダ名はかぶってないし、
それぞれ ATL/WTL namespace に入っているからシンボルが衝突することもない。
同機能のクラスが2つあるのが嫌なら、
#define _WTL_NO_CSTRING, _WTL_NO_WTYPES, _WTL_NO_UNION_CLASSES
のあたりを定義すればATL版を使ってくれる。
まったく問題なく使えるよ。
0498デフォルトの名無しさんNGNG
俺は WTL のヘッダをインクルードする前に

namespace WTL
{
static ATL::CAtlBaseModule& _Module = _AtlBaseModule;
}

をはさんでる。
もっといい方法あるかしら?
0499デフォルトの名無しさんNGNG
>>497
逆に”_ATL_NO_CSTRING”みたいのは無いんですかね。
インテリセンスの表示メンバがATLのCStringのものになっていて、
非常に鬱陶しいのですが・・・
0500デフォルトの名無しさんNGNG
>>499
ATL::CString も WTL::CString もほぼ MFC::CString 互換なんだから、ATL版でいいじゃん?
VC6でもコンパイルしたいとかの理由があるの?
>>490 にも重なるが、WTLヘッダを自分のプロジェクト内に入れれば、
インテリセンスが効くようになるかも。
0501499NGNG
>>500
WTLのヘッダはプロジェクトに追加してるんですが、
CStringだけはATLの内容が表示される・・・
Tokenizeとか各関数の定義が微妙に違って、使いずらいんですよねぇ。
ちなみに環境はVC2003です。
0502デフォルトの名無しさんNGNG
WTLってなんで標準でつかなくなったの?
MFCみたいなヘビーなのはいらないけどCMenu/CButton等のうす〜いラッパーはすげー使いやすいのに。
0503デフォルトの名無しさんNGNG
結局WTLってMFCと同じ様な制限抱えてるよね
0504デフォルトの名無しさんNGNG
>>503
例えば?
0505503NGNG
>>504
Windowsアプリしか作れない
0506デフォルトの名無しさんNGNG
>>505
おじさんつまんなーい
0507デフォルトの名無しさんNGNG
良い子のみんな、WTLのWは何かなぁ? ∩ ゚∀゚)

503 「Wunkoで〜〜す!!」
0508503NGNG
例えばこんなの

815 名前:デフォルトの名無しさん[sage] 投稿日:03/03/11 18:18
WTLのフレームはツールバーが上、ステータスバーが下と決め打ちしてるから、それしかない。
独自のフレームクラスを定義するしかないな。
0509デフォルトの名無しさんNGNG
そりゃWTL/MFCの制限じゃなくてAppWizardの制限だろ
0510503NGNG
これまで書かんと分からないのか…
マンドクセ

809 名前:808[sage] 投稿日:03/03/10 23:49
出来たと思ったのですが、
下部に作成する事は出来たのですが、
ステータスバー属性にCCS_TOPを追加して上部に作成しようとすると
リストビューのカラムの名前を表示する部分と重なってしまいます。
上部に追加するのは無理でしょうか…

CreateSimpleStatusBar("", WS_CHILD | WS_VISIBLE | WS_CLIPCHILDREN |
 WS_CLIPSIBLINGS | CCS_TOP);
0511デフォルトの名無しさんNGNG
いやだからそのぶんViewをずらせばいいだろ。
単にViewをAppWizardのままにしてるからだろ。
0512デフォルトの名無しさんNGNG
>>510
そんなもんWTLに限らずSDKでやったって工夫しなきゃ重なるって。
0513デフォルトの名無しさんNGNG
>>510
CFrameWindowImplBase::UpdateBarsPosition() を修正したら?
ライブラリ自体の修正が簡単なのも、WTLのメリットと言えなくもないんだから。
上部ステータスバーなんて誰も使わないけどな。
0514503NGNG
いちいちライブラリのソースなんか読みたくないんだよ!!
0515デフォルトの名無しさんNGNG
>>513
2画面ファイラとかがよく使ってるよ
0516デフォルトの名無しさんNGNG
WTLのソースを読みたくないってのは致命的だろう。
っていうか騙りかもしれないしどってことない問題だから以後放置で。
0517デフォルトの名無しさんNGNG
CDialogResizeとか、さりげなく便利だよな
0518デフォルトの名無しさんNGNG
MSDN の ATLCon サンプルに入っている atlcontrols.h には
WTL の atlctrls.h 相当のコントロールラッパが詰まっていて、
何らかの理由で WTL を使いたくないときにはとても便利。
0519デフォルトの名無しさんNGNG
何らかの理由でATLを使いたくないときはどうすればよいですか
0520デフォルトの名無しさんNGNG
>>519
氏ね
0521デフォルトの名無しさんNGNG
初歩的なことなのかも知れませんが、ATLのメソッドで、「関数の多重定義」みたいなこと
やるにはどのようにしたらいいんでしょう?
0522デフォルトの名無しさんNGNG
>>521
IDLではメソッドのオーバーロードは禁止されてるから無理じゃないか?
0523デフォルトの名無しさんNGNG
実際に使われてんのかねぇ、WTLって。
0524デフォルトの名無しさんNGNG
漏れは使ってるよ。でもイマイチだね。
0525デフォルトの名無しさんNGNG
テンプレートベースでMixin使いまくりだから、
コード補完がうまく効かないのが辛いよね。
0526デフォルトの名無しさんNGNG
しばらく見ないうちにWTLの話が多くなったな
0527デフォルトの名無しさんNGNG
もまえらがWTLを使う時、ListViewやTreeView等のコントロールは必ず継承して使い、
継承したコントロールにそのコントロールがする処理を書きますか?
それとも、継承する必要が無いコントロールはそのまま使って、フレームクラスでNotifyMessage拾って処理を書きますか?
0528デフォルトの名無しさんNGNG
他のアプリでも再利用するようなコントロール作るなら前者だけどそうでなければ後者
0529デフォルトの名無しさんNGNG
>>96, >>112

すっごい遅レスなんだが俺もいま同じとこではまってる。
AtlAxGetControl が FAILED 返すので何も起き様がない。
VisualStudio6のころつくったプロジェクトを、
VS.NET2003でコンパイルし直しただけなのになぁ。
もちろんVS6時代にビルドしたexeは期待通り実行されるのに。
なんでですか?
0530デフォルトの名無しさんNGNG
>>529

VS.NET2003、WinXP(SP1) の環境で動きましたよ。
CreateWindow("AtlAxWin", ...) を
CreateWindow("AtlAxWin71", ...) にしただけですが。

アサートが何回か出ますが、それを無視して実行し続けてみたら、ブラウザが表示されましたよ。
0531デフォルトの名無しさんNGNG
>>529
ProgID じゃなくて URL 指定して、CreateControl(_T("about:blank")) じゃダメ?
053294NGNG
CreateWindow(CAxWindow::GetWndClassName(), ...)
が正解ではないかと思ふ
0533デフォルトの名無しさんNGNG
WTLの日本語資料って少ないねぇ。
0534デフォルトの名無しさんNGNG
>>533
MFCみたいにフレームワークを提供しているわけではないから、
Win32の知識だけで十分使いこなせないか?
0535デフォルトの名無しさんNGNG
いちいち事あるごとにソース読まなきゃいけないのが面倒。
0536デフォルトの名無しさんNGNG
リファレンスは欲しいよね
0537デフォルトの名無しさんNGNG
WTLの質問です。
親フレームで、NOTIFY_HANDLERを使って子コントロールの通知メッセージを拾いたいのですが、
子コントロールのIDはどうやったら分かるのでしょうか?
現在はIDを設定する方法が分からないので、
NOTIFY_CODE_HANDLERを使ってif文でコントロールごとに処理を分けているのですが、
これだとすぐにコードが汚くなってしまいます。
0538デフォルトの名無しさんNGNG
>>537
CWindow.Createの引数にID渡せるけどこれは違うのか?
0539デフォルトの名無しさんNGNG
WTLって実は全然使えないよね。
WTL使ってる人って、意地で使ってるだけとちゃう?
0540デフォルトの名無しさんNGNG
そんなことより、日本語リファレンスを作った人がいないってのが不思議だよ〜ん。

どっか一部だけ…としたらどの辺が需要有るかな。
コモンコントロール周りはいらないよね。
0541デフォルトの名無しさんNGNG
UPDATE_UI_MAPとかUPDATE_ELEMENTとかその辺
0542デフォルトの名無しさんNGNG
いくらWTLがMFCより小さくなっても、
STLとかBoostとかiostreamとか使うとすぐ肥大化するから意味無いね。
0543デフォルトの名無しさんNGNG
STL とか Boost 使わなければよいかと…
ATL で大抵事足りない?
0544デフォルトの名無しさんNGNG
EXEのサイズを小さくする目的でWTLを使っているわけじゃないな。
MFCだとフレームワークに従わないといけないけど、
WTLなら独立性が高いので、ネジ・クギとして使えるのが嬉しい。

そもそもEXEサイズにこだわるのって、ほとんど自己満足だし。
0545デフォルトの名無しさんNGNG
今んとこまだまだVS6とCOMで業務をこなしつつVS.NETの勉強って感じだと思うけど、
COMの開発はATLが主流なのかな。
0546デフォルトの名無しさんNGNG
オレなんてCOMがさっぱり分からずC#に移ったら、なぜだか理解できなかった
COMの本が読めるようになってきたw
迷う迷うw
0547デフォルトの名無しさんNGNG
書き方キモイ文だなぁ
0548デフォルトの名無しさんNGNG
>>544
自分の枠組みでプログラムするのも自己満足だろ
そもそも、プログラム自体がじ(ry
0549デフォルトの名無しさんNGNG
もまいら教えてくさいm(__)m
MFCひととおりやったのですが、ATLを
やってみたいのですが、みなさんどんな書籍、サイト等が
お勧めでつか?
0550デフォルトの名無しさんNGNG
Inside Atl
Inside COM
0551デフォルトの名無しさんNGNG
>>549
マジレスだけど、Visual Studio についてくる MSのドキュメントが一番お勧め。
ATL, チュートリアルからはじめるのが吉。
0552デフォルトの名無しさんNGNG
このスレゆっくりと進んでて好きだなー。

しばらくATLから遠ざかったけど、またやろうかな。
遠ざかっていた間は、VBでCOM。VBだとかなり制限があるけど
COMの隠蔽度が高いって言うのか「COM作ってるぞ!」感が全然
無くってこれはこれで良かった。

#ただの独り言でした。
0553デフォルトの名無しさんNGNG
ATLはいいんだけど、CAutoPtrは糞じゃねぇ?

CAutoPtr< T > p1( new T() );
CAutoPtr< T > p2( p1 ); // アボーン

CAutoPtr< T > p1( new T() );
CAutoPtr< T > p2 = p1; // 正解
0554デフォルトの名無しさんNGNG
>>553
VC7.1のatlbase.hでは、ちゃんと所有権の譲渡が行われているが?
CAutoPtr( CAutoPtr< T >& p ) throw()
{
 m_p = p.Detach(); // Transfer ownership
}
そもそも、その2つってまったく同じ意味だぞ?
0555デフォルトの名無しさんNGNG
>>553
漏れが今やってる仕事では、そこだけ boost::shared_ptr 使ってる。。
CComPtr 同等に使えて便利。
0556デフォルトの名無しさんNGNG
Inside系の本は難しいのでもっと簡単なのを探してます。
ちなみに当方、VBでのコンポーネント作成はかなり理解してる方だと思います。
0557デフォルトの名無しさんNGNG
>>530
ありがとう。同じようなことで悩んでたんだけどヒントになったよ。お礼に

ttp://userpages.umbc.edu/~bcorfm1/wtl.html

でどう?
0558549NGNG
>>550-551
遅くなってすみませんm(__)m
どうもありがとう。。。
0559デフォルトの名無しさんNGNG
WTLだけど、フラットツールバーを作るには

CreateSimpleToolBar(0, ATL_SIMPLE_TOOLBAR_STYLE | TBSTYLE_FLAT);

ではなく、

CreateSimpleToolBar();
CWindow bar(m_hWndToolBar);
bar.ModifyStyle(0, TBSTYLE_FLAT);

とかしないとダメだよね?
http://www.codeproject.com/wtl/wtl4mfc3.asp
では前者の方法が紹介されてるけど、前者でもできる方法がある?
0560デフォルトの名無しさんNGNG
誰もいないのか・・・
0561デフォルトの名無しさんNGNG
見てるけど、>>559の話題に興味がないだけ
0562デフォルトの名無しさんNGNG
WTLのリファレンスにはMFCのが使えるな
0563デフォルトの名無しさんNGNG
>>562
今更
0564デフォルトの名無しさんNGNG
ATL/WTLプログラミング関連の本といったらATLインターナルくらいしかない?
0565デフォルトの名無しさんNGNG
COMインターナル
0566デフォルトの名無しさんNGNG
WTLのコントロールクラスってなんでテンプレートになってるの?
ソースではTBaseから派生ってなってるけど
CButtonTの中でTBaseは特に使って無いみたいだし。
直接CWindowから派生させればいいと思うんだけど、そうしない理由は?
0567デフォルトの名無しさんNGNG
>>566
柔軟な設計が出来るから。
class CMyWindow : public CWindow;
typedef CButtonT<CMyWindow> CMyButton;
既存のクラス階層の「途中に」派生クラスを挿入できるのがメリットだと思うのだが。
0568デフォルトの名無しさんNGNG
WinFXがでるのにATLなんて物をまだ使ってるのかw
レベル低ッ!!
0569デフォルトの名無しさんNGNG
やっぱり結局使ってるのは漏れだけかなあと思っていたら、
久しぶりに煽りが出るほど賑わっていて嬉しいですね。
0570デフォルトの名無しさんNGNG
>>568
へー、もうWinFXを使って開発してるんだ。w

参考までに、どんなソフトを作ってるのかご教授願えますか?
0571デフォルトの名無しさんNGNG
そんなもんに釣られんな。
0572デフォルトの名無しさんNGNG
WTLで質問です。
OnPaintをMESSAGE_HANDLERしたんですが、HWNDの取得ってどうやってやりますか?
CPaintDCにNULLを上げると狂気に走ってくれたので、
とりあえず、GetActiveWindowを使ってるのですが、
もっとベターな方法はありますか?
0573デフォルトの名無しさんNGNG
よく見たらここ2日は書き込みがない・・・。
浮上します。
0574デフォルトの名無しさんNGNG
*thisじゃだめなん?
0575デフォルトの名無しさんNGNG
m_hWndでいいと思うが
0576デフォルトの名無しさんNGNG
AppWizardでも
CPaintDC dc(m_hWnd);
と出力してるし。
0577デフォルトの名無しさんNGNG
>>574
ソース追っかけてみてもCMainFrameからの取得はないようです。
でも、追っかけ足りないだけかも・・・。

>>575-576
あ”−−−!!そんなベタな・・・。
コード補完に出てこなかったので探し回ったのに・・・。
でもスッキリしました。
本当にありがとう。
0578デフォルトの名無しさんNGNG
ベタな方法なだけにベター・・・
0579デフォルトの名無しさんNGNG
>578
うぐ!なかなかやるな・・・。

>574
試してみたらできましたね・・・。
追っかけたりなかったようです。
THX。
0580デフォルトの名無しさんNGNG
>>572
ProcessWindowMessage() の時点では hwnd も拾えるので、
MESSAGE_HANDLER 改変したマクロを定義してもいい。
0581デフォルトの名無しさんNGNG
>>580
そういう方法もありますね。
標準のものを改変するのはちょっとイレギュラーな感じがするけど。
非常手段として参考にします。
Thx!
0582デフォルトの名無しさんNGNG
>>581
誤解させちゃったかも。
MESSAGE_HANDLER() に似た、別の名前のマクロを自分で定義して〜ってつもりだった。

例えば、自分では
#define MESSAGE_LAMBDA(msg, lambda) \
 if (uMsg == msg)\
 {\
  lResult = 0;\
  lambda;\
  return TRUE;\
 }
なんてのを定義して、引数が異なる関数を呼んだり、短い処理をするのに使ったりしてる。
 MESSAGE_LAMBDA(ID_FILE_NEW, { OnPaint(hWnd); } )
って感じで。
0583デフォルトの名無しさんNGNG
>>581
MESSAGE_HANDLER に渡す関数の定義は、

LRESULT MessageHandler( HWND, UINT, WPARAM, LPARAM )

なんだから、普通に、

BEGIN_MSG_MAP( ... )
MESSAGE_HANDLER( WM_PAINT, OnPaint )
END_MSG_MAP()

LRESULT OnPaint( HWND h, UINT, WPARAM, LPARAM lp );

でいいんじゃないの?

0584デフォルトの名無しさんNGNG
>>583
LRESULT MessageHandler(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
0585デフォルトの名無しさんNGNG
>>583
もう解決してるのにカコワルイ・・・・
0586デフォルトの名無しさんNGNG
WTL7.0のAppWizardではOnIdle()でFALSEを返してるけど、この値ってチェックしてないよね?
なんか意味あんの?
0587デフォルトの名無しさんNGNG
>>586
たぶんバグ、というか真面目に実装していないのか。

WTLのエラッタをまとめてくれてるサイトってあったっけ?
0588デフォルトの名無しさんNGNG
形式上、MFCを真似たって感じなのかなぁ
0589デフォルトの名無しさんNGNG
今後バージョンアップはあるの?
0590デフォルトの名無しさんNGNG
地味にありそう。
0591デフォルトの名無しさんNGNG
WinFXだっけ? あっち対応の話ってどうなってるの?
0592デフォルトの名無しさんNGNG
>>591
とりあえずSTLはヴァージョンアップして対応しているらしい。
0593デフォルトの名無しさんNGNG
ATLでDLL作ってVBから呼び出してウィンドウを表示させようと思ってるんだけど、
そのウィンドウにツールバーを付けたいんだけどどうやってもできないんす。
CWindowじゃ無理なの??誰かサンプル教えてーください。
0594デフォルトの名無しさんNGNG
WTL使えば?
0595593NGNG
WTLでDLLって作れるんですか??
0596デフォルトの名無しさんNGNG
>>595
意味不明
0597デフォルトの名無しさんNGNG
>>593
MSDN の ATLCon つーサンプルの中に、各種コントロールを定義した
"ATLControls.h" があるから、それを使ってなんとかしろ。
0598デフォルトの名無しさんNGNG
ATL7で、ATL, Cランタイム共に静的にリンクさせようとすると、エラーになるんだけど
なぜだろう。
0599デフォルトの名無しさんNGNG
エラーのときはエラー内容を書け。
0600デフォルトの名無しさんNGNG
LIBCMT.lib(crt0dat.obj) : error LNK2005: __osplatform は既に LIBCMT.lib(crt0dat.obj) で定義されています。
LIBCMT.lib(crt0.obj) : error LNK2001: 外部シンボル "_main" は未解決です。

これ。
0601デフォルトの名無しさんNGNG
_ATL_MIN_CRTが定義されてる
0602デフォルトの名無しさんNGNG
いや、定義してないですよ。
ちなみに、DEBUGだとリンクできます。Releaseでは不可。
0603デフォルトの名無しさんNGNG
リリースにも?普通リリースだけに_ATL_MIN_CRTが定義されてるけど。
0604デフォルトの名無しさんNGNG
>>602
VC++ のバージョンは?
.net 2003 だったら、「ATL で CRT をできるだけ使用しない」を「いいえ」にする。
こいつが「はい」になっていると、_ATL_MIN_CRT が定義される。
0605デフォルトの名無しさんNGNG
>>603, 604
.NET2003です。
そういうことですか。Cランタイムを配布したくなかったのですが、仕様なら仕方ないですね。
ありがとうございました。
0606デフォルトの名無しさんNGNG
>>605
Cランタイムを使わない方法を検討する。
0607デフォルトの名無しさんNGNG
>>606
自分のコードでは使ってないんですけど、NT4.0等、MSCVRT71が
入ってない環境でregsvc32すると、ランタイムが無いって警告が
でませんか?
0608デフォルトの名無しさんNGNG
ん?静的リンクしたかったら>>604で「いいえ」にすればいいんでないの?
0609デフォルトの名無しさんNGNG
WTL 7.1 あげ
http://www.microsoft.com/downloads/details.aspx?FamilyId=1BE1EB52-AA96-4685-99A5-4256737781C5&displaylang=en
0610デフォルトの名無しさんNGNG
うぉおお!2003対応キタ━━━(゚∀゚)━━━ !!!
0611デフォルトの名無しさんNGNG
CEサポートとFixが主だな。新しいクラスと言えばCCustomWaitCursorくらいか・・・
0612デフォルトの名無しさんNGNG
>>609
かんどーした!!!!!!!!!
0613デフォルトの名無しさんNGNG
ウフォッ
0614デフォルトの名無しさんNGNG
喜多!サポート続けてくれるんだな。ありがたい。
0615デフォルトの名無しさんNGNG
>>614
ああ、更新内容よりはむしろバージョンアップしたという事実がありがたい。
0616デフォルトの名無しさんNGNG
WTLのCStringで
Format(_T("%I64d"), value);
とすると I64d となってしまうんだけどなぜ?WTL::CStringはI64dって表記サポートしてるよね??
0617デフォルトの名無しさんNGNG
と思ったらXP以降か・・・
http://216.239.59.104/search?q=cache:mxYfiDPJ1osJ:groups.yahoo.com/group/wtl/message/3068+%25I64%E3%80%80WTL&hl=ja&ie=UTF-8&inlang=ja
0618デフォルトの名無しさんNGNG
Raptのビルドがとおんねえ〜
あと新機能の追加が少ないのがかなしひ。
せめてCStringはATLと完全互換にならんものか・・・
0619デフォルトの名無しさんNGNG
WTL_NO_STRING を define すれば ATL の CString が使えるんだけど…
0620デフォルトの名無しさんNGNG
たしかWTL7.1のReadmeのNotesにも書いてるよね
0621デフォルトの名無しさんNGNG
>>619-620
そうではないだろう
0622デフォルトの名無しさんNGNG
WTLのメッセージループ(CMessageLoop::Run())ってGetMessageが-1の場合にも
continueでループを続けてるんだけど、breakで抜けるべきじゃないの?
0623デフォルトの名無しさんNGNG
第二引数がNULLのときはGetMessageは-1を返さない
0624デフォルトの名無しさんNGNG
いや、返した場合の話なんだけど・・・
0625デフォルトの名無しさんNGNG
PlatformSDKより。ループは抜けなくてもいいのでは?ディスパッチするべきじゃないだけであって。

BOOL bRet;

while( (bRet = GetMessage( &msg, NULL, 0, 0 )) != 0)
{
if (bRet == -1)
{
// handle the error and possibly exit
}
else
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
}
0626デフォルトの名無しさんNGNG
>>625
-1 が返ってくる状況になったら、なにも考えずにもう一度 GetMessage() すると
再び -1 が返ってきて、無限ループにならない?
0627デフォルトの名無しさんNGNG
GetMessage() が -1 を返すような状況では、
アプリケーションもOSもまともな動作をしているとは思えない。
それほど気にしなくていいんじゃないかと。
0628デフォルトの名無しさんNGNG
>>626
ならない?と聞かれてもSDKの解説もWTLもループさせてるし・・・
0629デフォルトの名無しさんNGNG
>>628
SDK のサンプルは、コメントに「エラー処理しろ」と書いてあるやん。エラー処理といっても、
もはや出来ることは限られてると思うが……。
0630デフォルトの名無しさんNGNG
>>629
そのエラー処理が、結果的にbreakするのかcontinueするのかって議論。
0631デフォルトの名無しさんNGNG
throw
0632デフォルトの名無しさんNGNG
書き方が悪かったか・・・
GetMessageの返りが-1の場合、メッセージループを抜けるのか、継続するのか。
0633デフォルトの名無しさんNGNG
抜ける方がいいに一票。
理由は>>627が書いているように、
まともにOSが動作していない状況で、
動作を継続する方が危険だから。
0634デフォルトの名無しさんNGNG
ベストを尽くせばいいじゃん
0635デフォルトの名無しさんNGNG
>>633
そうすると最初の質問のWTLがcontinueしてるのが気になるんだよな
0636デフォルトの名無しさんNGNG
ttp://homepage1.nifty.com/Roy_/Software/WTL/WTL_Lecture03.htm
WTL7.1の日本語記事はこれしか見つからん。
他にない?

>>635
自分で修正すれば?
0637デフォルトの名無しさんNGNG
>>636
いや、その前にバグなのかが疑問。
0638デフォルトの名無しさんNGNG
>>636
・・・藻前のバグの定義って何だよ・・・
0639デフォルトの名無しさんNGNG
>>637だった
0640デフォルトの名無しさんNGNG
>>638は修正してるのか?
0641デフォルトの名無しさんNGNG
こんなところで何を言っても結論なんか出るわけ無いんだから
msにメールでも出したら?
0642デフォルトの名無しさんNGNG
だからWTLはノーサポートなんだって。
自分が修正すべきだと思えば、修正すれ!
0643642NGNG
ちなみに苦情を送る場合は、
ここttp://www.microsoft.com/japan/feedback/default.asp
の製品フィードバックな。
0644デフォルトの名無しさんNGNG
>>642
修正すべきかどうかわからんから質問してんだろゴルァ
つーかフィードバックするならYahooGroupの方がいいんじゃね?
俺は英語自信ないけど。
0645デフォルトの名無しさんNGNG
ここまでの意見で何がわからんのだ?
0646デフォルトの名無しさんNGNG
「WTLがループを抜けないのはバグなのか何か意図があるのか」がわからないんだろ。
ちなみにSDKのメッセージループはpossibly exitであってmustではない。
0647デフォルトの名無しさんNGNG
「GetLastError() でエラーコード見るべき」ってのは?
0648デフォルトの名無しさんNGNG
いや、見た後にどうするかって話だろ
0649デフォルトの名無しさんNGNG
わかんねーけど、とりあえずExitWindowsExしとく?って感じ。
0650デフォルトの名無しさんNGNG
>>649
一つのアプリが-1返しただけでそれかよ( ゚Д゚)
0651デフォルトの名無しさんNGNG
ベストを尽くせ
0652デフォルトの名無しさんNGNG
http://www.microsoft.com/japan/developer/library/vcmfc/_atl_cwindowimpl.3a3a.create.htm
のCWindowImpl::Createのドキュメントって間違ってるよね?
ATL3.0のソースを確認すると本当は引数の数は7つだし、dwStyleのデフォルトは0だった。
ATL7以降のソースではどう?
0653デフォルトの名無しさんNGNG
あ、ごめん。↑のドキュメントは古い奴か・・・
0654デフォルトの名無しさんNGNG
古いドキュメントって残ってたのか・・・
目次のアドレスキボン
0655デフォルトの名無しさんNGNG
IEのツールバーをATLで作成したい者です。
ツールバーには、相手先のページの
読み込み時間を表示させようと思っています。
そこで一つお伺いしたいことがありまして、カキコさせていただきます。

読み込み開始にBeforeNavigate2、読み込み終了にDocumentCompleteを
使うところまでは分かったのですが、JavaScriptのページで、
DocumentCompleteが返ってこないページがありました。
そのために、フレームページ対策で入れている
BeforeNavigate2が呼ばれた回数からDocumentComplete呼ばれた回数を引く
カウンターが狂ってしまいます。

そこで、本当に最初の読み込み開始か、完全に読み込み終了時に
カウンターのリセットしたいのですが、どこにどのように宣言したらいいのでしょうか。


う〜ん、やっぱりソースを見せないと伝わらないかなぁ・・・。駄文スマソ・・・。
0656デフォルトの名無しさんNGNG
ちょっと意味がわかりづらいのだが、
DownloadCompleteだとダメなのか?
0657デフォルトの名無しさんNGNG
>>656
DownloadCompleteも試したけど、やっぱりダメでした・・・。
イベントの呼び出しに、コンストラクタでもあれば苦労しないんだけど・・・。
0658デフォルトの名無しさんNGNG
★☆web tokachi link☆★
0659デフォルトの名無しさんNGNG
atlmisc.hなんか見てると文字に_T(' ')マクロを使ったり使ってなかったりするんだけど
文字には_Tマクロいらないよね?
0660デフォルトの名無しさんNGNG
え?
0661デフォルトの名無しさんNGNG
ペゾルド本に文字にはLをつけなくて良いとあるから。
L'A' でも 'A' でもUnicode下では同じだって。
0662デフォルトの名無しさんNGNG
L'AB' だったら?
0663デフォルトの名無しさんNGNG
>>662
誰がそんな話してんだ
0664662NGNG
>>663
失礼。 ワイド文字定数は最初の文字しか処理しないらしいな。(VC++7.1)
ただし、マルチバイト文字列のときは異なるようだ。
'あ' == 33440
L'あ' == 12354
だった。
0665デフォルトの名無しさんNGNG
だから文字列じゃなくて文字の話だって。つーかatlmisc.hの話だって。
0666デフォルトの名無しさんNGNG
ASCIIなら平気だろ
a(0x61)ならUTF-8やUCS2なら(U+0061)とかにマッピングされるんだから
0667デフォルトの名無しさんNGNG
>>666
それはペゾルドにも書いてあって、そんなこと話してるんじゃなく、
atlmisc.hの、文字に対する_Tマクロはいらねーよなって話だ。
0668デフォルトの名無しさんNGNG
要らないんじゃないの?
メッセージループのことといい、
処理系の実装は完璧でないと気がすまないキチガイが多いな
0669デフォルトの名無しさんNGNG
おいおい完璧に近い方が良いに決まってるだろ。
0670662NGNG
>>655
文字列の話でもなく、文字の話でもなく、「文字定数」の話だろ?
シングルクォートとダブルクォートを見間違えてないか?

ASCII文字が、SBCS/MBCSとWCSで一致されることは、保証されてたっけ?
ま、どっちにしろ、C++言語の話ですな。
WindowsでVC++を使っている限りは、それほど気にしなくて良いというのには同意。
0671デフォルトの名無しさんNGNG
(なんで質問する側も回答する側も全員強気の発言なのに_Tが不要だと断言できる奴が一人もいないんだ…)
0672デフォルトの名無しさんNGNG
>>669
誰かが_Tが不要と断言したとしても、今度は逆に
atlmisc.hだと_Tマクロで定義されてるのには何か意図があるかもしれない
とか言い出すだろ。
んな事、書いた人間にしかわからねーんだよ
最初のレスで食い下がらずに自分で答えを見つければいいだろうが
0673デフォルトの名無しさんNGNG
>>672
>何か意図があるかもしれない とか言い出すだろ。
「あるかもしれない」だから無いことを証明すればいいんだよ。
それが議論てもんだ。
0674デフォルトの名無しさんNGNG
>>673
技術的な根拠が皆無だとしても、
たとえば不要なキャスト指定とか、括弧などのように
つけたことには何らかの意図が存在する可能性がある。
それは書いた人間以外に結論を出すことが不可能なじゃないか?
0675デフォルトの名無しさんNGNG
>>674
それなら技術的根拠が無いことを証明した上で、
「書いた人間が、不要にも関わらずキャスト指定した」という結論だろ。
0676デフォルトの名無しさんNGNG
おまえら朝っぱらから何やってるんだ?
答えは不要。断言。技術的根拠は>>666

で、技術的ではなくコーディングスタイル的なことを言えば、
_Tを使わないなら使わないで統一して欲しい。

このスレは無能な奴ばかりかよ。
0677デフォルトの名無しさんNGNG
技術的ではなくコーディングスタイル的なことを言えば、
_T があったり無かったりするのは気持ち悪いから、
文字列にも文字定数にもすべて使ってほしい。
0678デフォルトの名無しさんNGNG
>>676
void hoge(char);
void hoge(wchar_t);

hoge(_T('A'));

「技術的」ならば、明確に区別すべき。Cではなく、C++なんだから。
「実用上」ならば、>>666 の解釈でかまわない。
0679デフォルトの名無しさんNGNG
>>678
>void hoge(char);
>void hoge(wchar_t);
>
>hoge(_T('A'));

何が言いたいのかわからん。
0680デフォルトの名無しさんNGNG
>>679
後者が呼び出されることを期待していたら
L'A'になっていないばかりに前者が呼び出されるということだろう
0681デフォルトの名無しさんNGNG
>>680
いや、>>676はatlmisc.hに対する回答だろ。
atlmisc.hそんな関数があるのかと。
0682678NGNG
>>681
確かに、atlmisc.h 限定ならそのとおり。
ただ、「文字定数には _T() や L は必要ない」と
解釈され得る流れだったから、釘を刺したまで。
0683デフォルトの名無しさんNGNG
それはそうと何で混在したんだろうね。
別の人が書いたのかな。
0684デフォルトの名無しさんNGNG
('A')ノ
0685デフォルトの名無しさんNGNG
試してないけど、これよさげ。
WTLでインテリセンスを有効に
ttp://www.codeproject.com/useritems/WTLIntellisense.asp
0686デフォルトの名無しさんNGNG
>>685
こんなものリンクしたら、
動作がおかしくなるんじゃね?
0687デフォルトの名無しさんNGNG
本ビルドの時だけ外せばいいだろ
0688デフォルトの名無しさんNGNG
>>685
なんも変わらんぞ。
0689デフォルトの名無しさんNGNG
>>688
自分で作らないとダメみたいだね。
それでもCStringは効かない。
0690sageNGNG
WTL7.0→7.1にしたらビルドが通らなくなった
c:\...\wtl71\include\atlmisc.h(3042) : error C2653: '_CSTRING_NS' : 識別子がクラス名でも名前空間名でもありません。
#if defined(_WTL_USE_CSTRING) || defined(__ATLSTR_H__)
BOOL GetFromList(int nItemID, _CSTRING_NS::CString& strDocName)
{

_CSTRING_NS って何? どうすりゃいいの?
Win2000、VC++6、ATL3.0、WTL7.1
0691680NGNG
sage書く場所間違えた(;´Д`) 鬱だ
0692690NGNG
691です。680は間違い。
0693デフォルトの名無しさんNGNG
>>690
GREPすれば一発で見つかるはずだが・・・
atlapp.hでdefineされているので、
このファイルをincludeしてやればいいのでは?
0694693NGNG
つーか
#include <atlbase.h>
#include <atlapp.h>
この二つはstdafx.hの先頭付近で宣言しておくのが普通だが。
0695690NGNG
>>693-694
ありが�d
includeされてた
リビルドしたら解決した。鬱鬱鬱
0696デフォルトの名無しさんNGNG
WTL講座 第4回 第5回
ttp://homepage1.nifty.com/Roy_/Software/WTL/WTL.htm
0697デフォルトの名無しさんNGNG
つーか>>696はそのページの管理人でしょ?前も自分のページ晒してたよな。
0698デフォルトの名無しさんNGNG
>>696
知ってる事ばっかりだからもうちょっと深い事やって欲しいぜ
0699デフォルトの名無しさんNGNG
これだな。
>>636
他にない?と言いながら実は自分のページを宣伝。
0700デフォルトの名無しさんNGNG
なんか、あまりにもありがちな流れだなおい。
しかも自作自演での煽りか・・・
0701デフォルトの名無しさんNGNG
それを自省ですか。
0702デフォルトの名無しさんNGNG
すんまそん。基本的なことなのですが教えてくださいm(__)m
WTL(ATL)とMFCの両方が存在する意味って何なのでしょうか?
どんなメリット、デメリットがあるのでしょうか?
0703デフォルトの名無しさんNGNG
C と C++ の両方が存在する意味って何なのでしょうか?
0704デフォルトの名無しさんNGNG
くだらないネタここまで
0705デフォルトの名無しさんNGNG
C++の標準ライブラリが片っ端からtemplate化されたからMSもやりたくなったんだよ。
0706デフォルトの名無しさんNGNG
MSはサポートしてねーよ<WTL
0707デフォルトの名無しさん@質問くんNGNG
■質問です。
ATLで、サービスアプリを作りたいんですけど、
ウィザード見ても、あんま分かんないですね。
Run()のGetMessage()あたりが肝だとは思うんですけど・・・
できたら、サービスの簡単なサンプルが欲しいです。
よろしく。
0708デフォルトの名無しさんNGNG
ATLを作ったチームが遊びで作ってみたら評判が良かっただけだろ。>WTL
オフィシャルのドキュメントも無いし。

そういえばTweakUIなんかもノンサポートだしな。
0709デフォルトの名無しさんNGNG
>>707
http://program.station.ez-net.jp/special/vc/atl/service_vc6.asp
0710デフォルトの名無しさんNGNG
もまいら元気ですか!!
教えてくさい!m(__)m

VS2003のVC++でプロジェクトのプロパティに「ATLを使用するかどうか」
を指定するところがあるのですが、従前(VS6.0)はなかったと
思うのですが、これはなんなんですか?

0711デフォルトの名無しさんNGNG
>>710
ATLを使用するかどうかを指定するものです。
0712デフォルトの名無しさんNGNG
>>710
ATLの一部の機能がDLL化されたので、
そのDLLをリンクするかしないかの設定・・・だと思う。
0713デフォルトの名無しさんNGNG
WTLのDONUTを作ったMBさんって何者ですか?
日本人であそこまでやったってスゴイ!!
今はどこで何をしているのでしょうか?
0714デフォルトの名無しさんNGNG
それを知っておまいはどうするつもりだ・・・
0715デフォルトの名無しさんNGNG
WTLの話じゃなくて作者の話かよ
0716デフォルトの名無しさんNGNG
>>1-715

こうやって、話はつれづれに移り行き・・
やがて、話題は加護ちゃんへと移行するのだ。
0717デフォルトの名無しさんNGNG
加護ちゃんって誰?
0718デフォルトの名無しさんNGNG
>>717
風船みたいな子
0719デフォルトの名無しさんNGNG
CFileDialogのGetFolderPathを使うとアサートします。

CFileDialog dlg(TRUE);
if(dlg.DoModal() == IDOK){
  TCHAR szPath[_MAX_PATH];
  dlg.GetFolderPath(szPath, _MAX_PATH); // アサート
}

使い方間違ってますか?
0720デフォルトの名無しさんNGNG
>>719
せっかくアサーションが発生してるなら、その場所のソースを見ればいいのに
0721デフォルトの名無しさんNGNG
ATLASSERT(::IsWindow(m_hWnd));だね
0722デフォルトの名無しさんNGNG
誰かATLとWTLの最新版、Winnyで流してくれない?
0723デフォルトの名無しさんNGNG
タイーホ
0724デフォルトの名無しさんNGNG
WTLは流さんでも
0725デフォルトの名無しさんNGNG
>>723
さっさと流せよ。いつもエロ落としまくってる分際の奴に言われたくねえよ。
0726デフォルトの名無しさんNGNG
通報しますた
0727デフォルトの名無しさんNGNG
嘘発見しますた
0728デフォルトの名無しさんNGNG
↓証拠
0729デフォルトの名無しさんNGNG
ここでMFCもATLもフリーで提供されてるでしょ
http://www.digitalmars.com/
0730デフォルトの名無しさんNGNG
されてねーよ。なんでそんなすぐばれる嘘をつくんだ。
0731デフォルトの名無しさんNGNG
C++BuilderXのフリー版にも、MFC/ATL が付いてきたと思うんだけど。
0732デフォルトの名無しさんNGNG
つか今時PSDKになんでATLぐらい含めないのかね。
0733デフォルトの名無しさんNGNG
>>731
ついてこねーよ。
0734731NGNG
>>733
根拠のない否定はしないように。
C++BuilderXといっしょにインストールされているのを確認した。
ただし、ATLはver.3.0だし、MFCもVC6相当だろう。
0735デフォルトの名無しさんNGNG
MSはATLというかテンプレートライブラリは
コンパイラのバージョンに強く依存してるから、
無償配布に含めても意味がないっていう考えなのかな。
0736デフォルトの名無しさんNGNG
>>719は・・・
0737デフォルトの名無しさんNGNG
>>735
ならPSDKに付ければいいわけで。









PSDKにコンパイラは付いてるよね?
0738デフォルトの名無しさんNGNG
>>734
マジで!?
0739デフォルトの名無しさんNGNG
>>737
ia64用しかついてません
0740デフォルトの名無しさんNGNG
>>736
自己解決しました


















たぶん
0741デフォルトの名無しさんNGNG
ネタ書く前にせめて質問には答えようや
0742デフォルトの名無しさんNGNG
MFC/ATLの他にboostやlokiも付属してるらしいね
http://216.239.53.104/search?q=cache:TU7xd8zJS-oJ:user.ecc.u-tokyo.ac.jp/~rr26303/diary/diary2003b.html+C%2B%2BBuilderX%E3%80%80mfc&hl=ja&lr=lang_ja&ie=UTF-8
0743デフォルトの名無しさんNGNG
MFCはヘッダしかついてないんじゃないの?
0744デフォルトの名無しさんNGNG
>>734
C++BuilderXでWTLは使えますか?

関係ないけどWTL扱ってる日本語のサイト
ttp://home.att.ne.jp/banana/akatsuki/
0745デフォルトの名無しさんNGNG
>>744
734じゃないけど当然使えるだろう。
0746デフォルトの名無しさんNGNG
>>741
とっくに答えは出ていますが
0747デフォルトの名無しさんNGNG
>>746
どこに?
0748デフォルトの名無しさんNGNG
http://home.att.ne.jp/banana/akatsuki/
0749デフォルトの名無しさんNGNG
>>747
>>720-721
0750デフォルトの名無しさんNGNG
>>748
>>744
0751デフォルトの名無しさんNGNG
>>749
だからGetFolderPathはどう使えば良いの?
0752デフォルトの名無しさんNGNG
>>751
ダイアログにメッセージを送ってるんだから、
ダイアログが表示中の場合しか使えないことは明らかだろうが。
ソースを読めない人間がWTLを使おうとすること自体に無理がある。
0753デフォルトの名無しさんNGNG
CFontDialogのGetCurrentFontなんかだと
・ダイアログ表示中
・DoModal後
の二種類の使い方できるけどね。

CFileDialogの場合はダイアログ表示中はGetFilePathを使って、
DoModal後は直接m_szFileNameにアクセスしれってことらしい。
0754デフォルトの名無しさんNGNG
>>751
情けない奴だな
0755セイラNGNG
軟弱者!
0756デフォルトの名無しさんNGNG
WTLでMFCのコントロールを使う方法ってないよね。
その逆はあるけど。
0757デフォルトの名無しさんNGNG
>>756
適当に移植すれば?ソースもあるんだし
0758デフォルトの名無しさんNGNG
コントロール関係はあえてMFCのを使う必要があるの?
0759デフォルトの名無しさんNGNG

http://www.codeproject.com/miscctrl/gridctrl.asp?target=mfc%7Cgrid
のMFC GridをWTLに移植シマスタ。という方っておりますか?

コレをWTLに移植しようとして挫折シマスタ。
0760デフォルトの名無しさんNGNG
>>759
いろいろ試したけど結局自作した
0761デフォルトの名無しさんNGNG
WTLはネットワーク関連のクラスがないのがイマイチ。
CHttpFileとか自作すると結構大変。
0762デフォルトの名無しさんNGNG
そういうのはATLが対応しないのかな。WTLがサポートするのは基本的にGUIだから。
0763デフォルトの名無しさんNGNG
それもそうか。
0764619NGNG
ATL Server に CAtlHttpClient なんてのはあるみたい。
ATLにも、MFCとは異なる面からのネットワークサポートはあるっぽい。
使ったことが無いからよくわかんないけど。
0765デフォルトの名無しさんNGNG
>>760

スバラスィー。使わせてくださいませんか?
0766デフォルトの名無しさんNGNG
ソースネクストの警戒電話8がWTL使ってる
0767デフォルトの名無しさんNGNG
>>766
なんでわかる?
0768デフォルトの名無しさんNGNG
>>767
766じゃないけど
spy++でもつかったんじゃない?
0769デフォルトの名無しさんNGNG
ウィンドウクラス名がWTL:・・・・・・だったてことか
てかなんでまた軽快電話を調べようと思ったんだろう
0770デフォルトの名無しさんNGNG
よりによってネ糞トかよ!
0771デフォルトの名無しさんNGNG
質問させて下さい。
リソースにダイアログ(IDD_DIALOG1)を作成し、List Control(IDC_LIST1)を貼り付けてEditLabelをTrueにします。
そして、
class CTestDlg CDialogImpl<CTestDlg>
{
private:
  CListViewCtrl  m_ListView;
  CEdit      m_Edit;

public:
  enum { IDD = IDD_DIALOG1 }

  BEGIN_MSG_MAP(CAboutDlg)
    MESSAGE_HANDLER(WM_INITDIALOG, OnInitDialog)
      NOTIFY_HANDLER(IDC_LIST1,NM_CLICK,OnClick)
      COMMAND_ID_HANDLER(IDOK, OnCloseCmd)
  END_MSG_MAP()
0772771続きNGNG
  LRESULT OnInitDialog(UINT , WPARAM , LPARAM , BOOL& )
  {
    m_ListView = GetDlgItem(IDC_LIST1);
    m_ListView.AddItem( 1, 0, _T("TEST1.") );
    CenterWindow(GetParent());
    return TRUE;
  }
  LRESULT OnClick(int idCtrl, LPNMHDR pnmh, BOOL& bHandled)
  {
    m_Edit = m_ListView.EditLabel(0);
    return 0;
  }

  LRESULT OnCloseCmd(WORD , WORD wID, HWND , BOOL& )
  { EndDialog(wID); return 0; }
};
を宣言して、TestDlg.DoModal();でダイアログを表示した後、
クリックすると編集モードになるのですが、何か入力すると
DoModal内でアサートが発生してしまいます。

WM_NOTIFYの処理が全くないので、テキストが設定できないとかいうのなら分かりますが
落ちてしまうのは何故なんでしょうか?
0773771続きNGNG
環境を書き忘れてました。
VC++ .NET 2003 STD と WTL 7.1です。
0774デフォルトの名無しさんNGNG
BEGIN_MSG_MAP(CAboutDlg)

CAboutDlgって何よ
0775デフォルトの名無しさんNGNG
>>771-772

COMMAND_ID_HANDLER(IDOK, OnCloseCmd)
を
COMMAND_HANDLER(IDOK, BN_CLICKED, OnCloseCmd)
にしたらどうでしょう ?
0776771NGNG
>>775
おぉ、出来た!
テキスト内容を変更した時にWM_COMMAND::EN_CHANGEが出ているのか・・・
リストコントロールが持っているEditコントロールのIDとIDOKが同じ値だったから
OnCloseCmd()が呼び出されていたのが原因だったんですね。

しかし、テキスト編集に使用されるEditコントロールのIDは変更できないんでしょうか?
なんか、WTLとは関係ないような気がしてきた・・・
0777775NGNG
>>776

ID の変更なら、SetWindowLong でできますが、
リストビューに影響がでるかもしれないですね。

ウィザードが吐いたコードのままですと
ボタンからクリック以外の通知が来たときにも閉じちゃうので、
COMMAND_HANDLER を使った方がいいでしょう。
0778デフォルトの名無しさんNGNG
ATL7.1にてWindowsNTサービスを作成しようとしています。
VS6.0の場合はCServiceModuleのスケルトンがWizard生成
されていたので、このメンバ関数のインプリメントを
をいじるというアプローチにて一通り動作するサービスを
構築できていたのですが、ATL7.1の場合はCAtlServiceModuleT
に大半の実装が移ってしまっています。
これらのメンバの大半はオーバーライドできないため、
インストール時の特殊な操作を追加しようとしてつまづいて
しまいました。

そこで、CAtlServiceModuleTの派生クラスCAtlServiceModuleExT
を定義し、共通的なカスタマイズを加えた上で,
さらにCAtlServiceModuleExTを派生させて実際のサービスに
用いようとしています。
このとき、たとえばOnInstall()をVisual Stdio内の関数
プロパティからオーバーライド可能な様に定義したいのですが、
atlbase.hをいくらみても、個々のメンバがvirtualになっている
わけでもなく、プロパティ→オーバーライドリストに出現する
ように関数定義する差異がわからないのです。

どなたかこの点について解答をお持ちの方いらっしゃいませんか?
0779デフォルトの名無しさんNGNG
>>778
それは、private派生やprotected派生したクラスは
基底側への自動変換が許されていないからだと思われ。
0780デフォルトの名無しさんNGNG
ATL7.1のサービス作成にはバグがあるという噂。
0781デフォルトの名無しさんNGNG
>>780
具体的には?
0782デフォルトの名無しさんNGNG
778です。


>>779
うーん。private派生でもprotected派生でもないんですけどねぇ。
そもそもCAtlServiceModuleT::OnInstall()ですので、ベースクラス
は関係ないとゆーか。
CAtlServiceModuleExT側にOnInstall()の実装丸ごとコピーして
やろうとしてるですよ。それでもVisualStdioは思うように動かない
わけで。

>ATL7.1のサービス作成にはバグがあるという噂。

どこかのコンテンツにあったサービスが「起動」できない
ってやつでしたら割と簡単に対処できましたよ。
スケルトンの中にCOMイニシャライズが書かれてて、
それに失敗するとexitしちゃうので、
スケルトン出力後に最低一個のATLオブジェクト追加すれば
OKです。
0783デフォルトの名無しさんNGNG
788です。追加調査結果を。
もちろんOnInstallは手書きで書けば自前クラス内でいくらでも
オーバーライドできるわけですが、チーム開発の効率を考えて
VS7.xのプロパティからGUIベースでオーバーライドできるような
ベースクラスにしたいな、という希望があったからなのです。
が、操作しているうちにどうやら無理そうな感じがしてきました。

というのも、
プロパティ→オーバーライドの操作時、画面下に個々のヘルプの
様なモノが表示されているわけで、この情報はソース内には
存在しないものです。となれば、ATLライブラリ自体を調整して
再ビルドするとかしない限り、この部分にカスタマイズしたエントリを
表示することはそもそも出来ないのではないかと思いました。

//AFXマクロの類で制御できるかと思ったのですが甘かったようです。
0784デフォルトの名無しさんNGNG
>>781
たぶん
ttp://program.station.ez-net.jp/
ここのコンテンツのどっか。
0785デフォルトの名無しさんNGNG
ttp://program.station.ez-net.jp/
の作者の方はまともにサービス組んだことないんじゃないですかね。

>すると、イベント ID が 0 となっていて、「リモート コンピュータ
>からメッセージを表示するために必要なレジストリ情報または
>メッセージ DLL ファイルがローカル コンピュータにない可能性
>がある」 とのことです。

これなんかは単にEventLog用のメッセージDLLを登録してない
だけですし。COMもあんまり詳しくないみたいですから
信用しないほうがいいかと。
0786デフォルトの名無しさんNGNG
まああんまりネットには出回っていない技術だからね。
趣味グラマにはハードルが高いんでしょ。
0787デフォルトの名無しさんNGNG
ATL/WTL 7.1 Internal 本出てくれないかなー。
0788デフォルトの名無しさんNGNG
質問です。

CHeapPtrクラスを使用する時に、CCRTAllocator(デフォルト)を用いたら、ランタイムが
必要になりますか?
0789デフォルトの名無しさんNGNG
自前でmallocを用意できればいらない。
0790デフォルトの名無しさんNGNG
atlimpl.cppに非CRT版mallocない?
0791デフォルトの名無しさんNGNG
#pragma message("atlinmp.cpp is obsolete. Please remove it from your project.")
0792デフォルトの名無しさんNGNG
ATL7にはatlimpl.cppにあったようなスタートアップルーチンや独自malloc無くなったのか?
0793デフォルトの名無しさんNGNG
atlmincrt.libってのがあるけど。
0794デフォルトの名無しさんNGNG
atlmfc\src\atl\atlmincrt
あたりにスタートアップルーチンや独自mallocが存在するみたいだね。
079569式フリーPGNGNG
CLocalAllocaterかCGlobalAllocaterを使っては?
(参照:atlalloc.h)
0796デフォルトの名無しさんNGNG
IEコンポーネントのスレが落ちちゃったようなので、こちらで質問です。

IEのツールバー(dll形式)を自作しているんですが、
IEの中止ボタンが押されたのを、IEコンポーネントの
イベントのようなもので取得する方法を探しています。

IEコンポーネント自体では、これといったものが見つかりません。
何か良い方法はありますでしょうか。
0797デフォルトの名無しさんNGNG
>>796
これは?
http://www.codeproject.com/wtl/toolband.asp
0798デフォルトの名無しさんNGNG
>>797
イベントの取得は既にできているんですが、
IEの中止ボタンが押された時に出るイベントが、分からなくて困っています。
0799デフォルトの名無しさんNGNG
>>798
HTMLDocumentEvents2::onstop Eventかな?
あと質問はもうちょっと分かりやすくするように。

0800デフォルトの名無しさんNGNG
で、>>798は解決したのか?
0801デフォルトの名無しさんNGNG
質問です。

WTL 7.1 で AppWizard から MDI アプリケーションを作っています。
メニューの「ウインドウ」以下に開いている子ウインドウが列挙されないのですが
これは仕様ですか?
サンプルの MDIDocVw ではきちんと列挙されているのですが…
0802デフォルトの名無しさんNGNG
>>799-800
>>796>>798です。自分で質問しておきながら、
しばらくこのスレを見ていませんでした。すみません・・・。

で>>799を調べてみまして、実装してみました・・・が、どうもイベントが取得できないです・・・。

もうちょい具体的に書きますと、ソースの元として>>797のを使用しています。
その中のinvokeメソッドでイベントを取得しようと試みています。
DISPID_HTMLDOCUMENTEVENTS2_ONSTOPで取得しようとしたのですが・・・。
0803デフォルトの名無しさんNGNG
>>802
ここのソースが参考になるかもしれん。ソース内でDISPID_HTMLDOCUMENTEVENTS2_ONSTOPを検索してみれ。
ttp://www.codeproject.com/atl/popupblocker2.asp
0804デフォルトの名無しさんNGNG
>>803
ありがとうございます。
週末の土日に挑戦してみます。
0805デフォルトの名無しさんNGNG
WTL で作られた商用ソフトってどのくらいあるのかな?
0806デフォルトの名無しさんNGNG
警戒電話。
かなり気合入ってるけど実用性が少なめでした。
0807デフォルトの名無しさんNGNG
まぁ既出だけどね<警戒電話
0808デフォルトの名無しさんNGNG
既出って言っても僕が書いたんだけどね。
0809デフォルトの名無しさんNGNG
うわぁ・・・改めてWTLユーザとこのスレの住人の少なさを感じる。
0810あっちの9NGNG
なんかWTLスレが立っちゃったみたい。
ここが終わったらWTL組みは移動しよう。

WTLお勉強スレッド
http://pc2.2ch.net/test/read.cgi/tech/1078150663/

といってもこのスレが終わるまであと何ヶ月かかるんだろう・・・
0811デフォルトの名無しさんNGNG
過疎スレを二つも作ってどうすんだ?
住人が分散するだけだろうに。
0812デフォルトの名無しさんNGNG
で、801 は解決したのか?
0813805NGNG
>>806
そのソフト知らなかったのでぐぐったら2chのスレが
引っかかったんだが、評判悪いのか?
0814デフォルトの名無しさんNGNG
あの会社の製品はみんな評判悪いだろ
0815805NGNG
>>814
使ったこと無いから評判とか気にしなかった。
使おうとも思わないようなソフト多いし。
0816801NGNG
>>812
自力で解決しました(?)

#define _WTL_MDIWINDOWMENU_TEXT _T("ウィンドウ(&W)")
#include <atlframe.h>

キャプションを日本語化したのが原因でした.
0817デフォルトの名無しさんNGNG
> 600
コンソールでビルドしてない?
0818デフォルトの名無しさんNGNG
>>805
> WTL で作られた商用ソフトってどのくらいあるのかな?

・Microsoft Soft Windows ムービーメーカー
・Sonic MyDVD 5

あたりもWTL使ってますね。
どちらもSDIベースの割とシンプルなアプリなので
俺もWTL使ってみようかと思案中。
0819805NGNG
>>818

情報ありがとう。
MS も使ってるんだ。
0820デフォルトの名無しさんNGNG
http://www.microsoft.com/japan/technet/treeview/default.asp?url=/japan/technet/prodtechnol/winxppro/maintain/winxpsp2.asp
AMD の Athlon64 や Itenium 積んだ WinXPsp2 で ATL アプリが動かなくなったりするんかいな?
0821デフォルトの名無しさんNGNG
なぜ?
0822デフォルトの名無しさんNGNG
サンクとかさ。
0823デフォルトの名無しさんNGNG
なにそれ?
0824デフォルトの名無しさんNGNG
ちゃんと属性変更してるから問題ない
0825デフォルトの名無しさんNGNG
>>824
_stdcallthunk はたんに HeapAlloc された領域に作ってるような・・・
気のせいかもしれないけど。
0826デフォルトの名無しさんNGNG
よかったら Thunk が問題に含まれると思った根拠っていうか
理由って教えてもらえませんか?>>822
0827822NGNG
サンクって、メモリ上に機械語つくって、直接それを実行しているでしょ。
ATL3.x は確かスタック上にコード生成していた気がしたからさ。

でも、ATL7.1 のコード見たら、ヒープ上に命令作成していたんだね。
0828デフォルトの名無しさんNGNG
>>827
スタックに生成してたらウインドウプロシージャとして使えないだろ
0829デフォルトの名無しさんNGNG
ATL3.0 の CWindowImplRoot と、CWndProcThunk のコード読んでみたら?
0830デフォルトの名無しさんNGNG
>>828
WinMainあたりで確保されてたら?

ATL3.xはサンクを単なるメンバとして確保してるからCWindowImpl*がスタック上に
確保されるとサンクもスタック上に来る気がするんだが。
0831826NGNG
>>827

ああ、そういうことだったんですか。
勉強になりました。
レスありがとうございました。
0832デフォルトの名無しさんNGNG
その辺に触れてる本てATLインターナルくらいか
0833デフォルトの名無しさんNGNG
>>832
ソース全部付いてるから、ホントに突っ込んだ解説書は需要が少なそうだよね。
0834デフォルトの名無しさんNGNG
それ言うとMFCだってC標準ライブラリだってソースが付いてくるわけで
0835826NGNG
>>832
ATL インターナル機会があったら読んで見ます。
0836デフォルトの名無しさんNGNG
ATL::Base64Encode()って何ですか?
0837デフォルトの名無しさんNGNG
見たままの意味だと思うが・・・
0838デフォルトの名無しさんNGNG
VS6.0SP6日本語版でたね
0839デフォルトの名無しさんNGNG
ようわからんがテンプレート周りのバグはこれで直るの?
0840デフォルトの名無しさんNGNG
DelphiやC#のタイマーコントロールような非表示のActiveXを作成するにはどうしたら良いのでしょうか?
サンプルコードの在り処だけでもいいですから教えて下さい。
環境はVS C++.net 2003 std です。
0841デフォルトの名無しさんNGNG
ちょっと保守しますよ・・・
0842デフォルトの名無しさんNGNG
ATLでActiveXコントロール作ってるんですけど、プロパティにTrue/Falseのような
ドロップダウンリスト(項目は「Item1/Item2/Item3/Item4/...」等)を付けたいんですけど
どうしたらいいんでしょうか?

・コレクションを作ってプロパティにする。
・ストックプロパティを自作する。

のいずれかだと思うんですが、具体例を探しきれずに困っています。
0843デフォルトの名無しさんNGNG
XPのSP2のニュース記事読んでもファイアウォールのことは書いてるけどATLのことはほとんど触れられてないなぁ
0844デフォルトの名無しさんNGNG
そして>>843のレスも触れられない罠
0845デフォルトの名無しさんNGNG
そして>>844のレスも(ry
0846デフォルトの名無しさんNGNG
MFCと比較したときのメリットととして
どういったことが挙げられますか?
0847デフォルトの名無しさんNGNG
コンパクト
0848デフォルトの名無しさんNGNG
モテる
0849デフォルトの名無しさんNGNG
MFCと比較するならWTL。
0850デフォルトの名無しさんNGNG
コントロールの初期化時にDispEventAdviseを呼んで、破棄される時に
DispEventUnadviseを呼びたくてFinalConstructとFinalReleaseに書いたんで
すけど、DispEventAdviseを呼んじゃうと、DispEventUnadviseを呼ばない限り
FinalReleaseが呼ばれないみたいですね。。。
0851デフォルトの名無しさんNGNG
ATLって結局なんなの?
MFCとどう使い分けるの?
全く使い方知らないんだが
今からでも勉強する価値ありまつか?

質問責めでマヂ申し訳ないんだが、情報が
やたら少ない・・・
0852デフォルトの名無しさんNGNG
>ATLって結局なんなの?
ActiveX 職人が比較的楽にコントロールを作れるようにしたテンプレートライブラリ

>MFCとどう使い分けるの?
MFC は C++ 用の Windows アプリケーション全般で使えるライブラリ。
もちろん、ActiveX コントロールも作れるけど汎用ライブラリなんでランタイム
が大きいなど ActiveX コントロールを作るうえで不都合があったりする。
ATL を使えば再配布ファイルを少なくすることが可能なので現実問題、
MFC で ActiveX コントロールを使ってダウンロードさせることは少ないと思う。

>全く使い方知らないんだが
マニュアルもあるしサンプルもある。入門書もあった。

>今からでも勉強する価値ありまつか?
MS は .NET を推してるので、その考えに乗るなら必要ないだろう。

ATL は MFC に比べて敷居が高いので、必要が無いなら覚える必要は無いんじゃない?
MFC の代わり通常アプリを作れるように ATL を拡張した WTL (Windows Template Library)
というのもある。ただ WTL は MS 内部でも負けたようで MS 的には無視されてるが…
0853デフォルトの名無しさんNGNG
>WTL は MS 内部でも負けたようで

そうだったんだ・・・
0854デフォルトの名無しさんNGNG
>>852
こらこら
WTLは新バージョンしっかりでてますよ。

まあ相変わらず無サポート、ドキュメントなしだけど
0855デフォルトの名無しさんNGNG
>まあ相変わらず無サポート、ドキュメントなしだけど

だから↑のことを指してるんだろ。<内部で負けた
0856デフォルトの名無しさんNGNG
しかしなぜか使いやすかった > WTL
0857デフォルトの名無しさんNGNG
誤解のないように言っておくと、MS内部で負けたってのはつまり、
MSが.NETをメインにしたから今更MFC以外のGUIクラスライブラリを
正式にサポートしようとはしなかったって意味ね。
WTLが使いにくいとかライブラリとして問題があるとかいう理由ではないよ。
技術的というよりマーケティング的に負けたという経緯。
WTLが素敵なライブラリなだけに悲しいね。
0858デフォルトの名無しさんNGNG
今2chで話題のA何とかの中の人のMFC講座!
みんないっちゃだめだよ〜wwww
http://www.geocities.jp/aransk88/contents4.html
0859デフォルトの名無しさんNGNG
>>858
なんですか?これは
0860デフォルトの名無しさんNGNG
そこら中に貼ってるな
0861デフォルトの名無しさんNGNG
おしえてください。

template <class T>
class CUpdateUI : public CUpdateUIBase
{
public:
CUpdateUI()
{
T* pT = static_cast<T*>(this);
pT;

最終行のpT; って何の意味があるの?
0862デフォルトの名無しさんNGNG
最適化で消されないようにするためじゃないの?
0863デフォルトの名無しさんNGNG
>>862
あーいや、実際のコードには続きがあって、pT->ほげほげ()ってメソッド
呼んでるんで、わざわざpT;って書かなくてもオプティマイザに消されるこ
とはない筈です。
0864デフォルトの名無しさんNGNG
>>861
operator void 呼出かな?

gcc version 2.96 20000731 (Red Hat Linux 7.2 2.96-112.7.2) だと
"conversion to void will never use a type conversion" とか
言われてしまった。
0865デフォルトの名無しさんNGNG
>>864
そんなのがあるんですかー
オンドゥルルラギッタンディスカー

ありがとうございます。
そのキーワードで調べてみます。
0866デフォルトの名無しさんNGNG
pMsg;

ってのも見ますよね。
構造体への単なるポインタです。
なんだろこれ。
0867デフォルトの名無しさんNGNG
コピペしたときに、警告を黙らせるためでねーのかな。
(そーゆーコピペ元があるとか)
0868デフォルトの名無しさんNGNG
>>867
どゆこと?
0869デフォルトの名無しさんNGNG
初期化されていますが使われていません
の警告を防ぐのが実際使うときにも消さずに残ってるだけだと思ってるけど
0870デフォルトの名無しさんNGNG
あげとこう。
0871デフォルトの名無しさんNGNG
ATL7.xの本て出るんかな
0872デフォルトの名無しさんNGNG
一応こっちにも貼っておく。
WTL7.5&オープンソース化
http://sourceforge.net/projects/wtl
http://www.itmedia.co.jp/news/articles/0405/13/news016.html
0873デフォルトの名無しさんNGNG
これもね
http://blogs.msdn.com/robmen/archive/2004/05/12/130577.aspx
0874デフォルトの名無しさんNGNG
AppWizardは.NET以降か
0875デフォルトの名無しさんNGNG
WTL7.5のCStringのオペレータの戻り値が
const CString&
から
CString&
に修正されてるんだけど、ATL::CStringではどうなってる?
0876デフォルトの名無しさんNGNG
ATLもオプソ化してくれないかなあ。
そうすればVC++ Toolkitでウハウハ。
0877デフォルトの名無しさんNGNG
>>876
厚かましいぞ
0878デフォルトの名無しさんNGNG
>>875
System.String
0879デフォルトの名無しさんNGNG
>>878
(・∀・)カエレ!!
0880875NGNG
あ、ごめん。OnlineMSDNのCStringT::operator =を見たら
CThisString& operator=(〜);
とか書いてたわ。
0881デフォルトの名無しさんNGNG
個人BlogではWTLオープンソース化が紹介されてたりするが
ほとんど紹介だけで、知名度が上がるほどではなさそうだ・・・・
0882デフォルトの名無しさんNGNG
ATL.NETって出る予定はありますか?
0883デフォルトの名無しさんNGNG
何言ってるの君・・・
0884デフォルトの名無しさんNGNG
>>882
残念ながら、出ないとのこと。
WTL.NETならでる可能性はあるけどな。
0885デフォルトの名無しさんNGNG
WTL.NETて何?
0886デフォルトの名無しさんNGNG
質問でつ。
CComObject<T>::CreateInstanceで作ったインスタンスって
明示的なAddRefとReleaseって必要ですか?
それとも、CComObjectが勝手に面倒見てくれますか?

あと、ブラウザ上で動くActiveXコントロールを作ってるんですが
ブラウザが閉じられたタイミングでデストラクタが走る、と
考えてて正しいですか?
0887デフォルトの名無しさんNGNG
>>886
CComObject は参照カウントの管理をしない。
明示的に AddRef, Release をするか、CComPtr を使え。

ActiveX のほうだが、参照されなくなれば、デストラクタが走るだろ。
タブブラウザとかだとすぐには開放されないかもシレン
破棄されるときに、ログをはくようにして、確認してみたら?

0888886NGNG
>887
サンクス。

冷静に考えると、ブラウザとは関係なく参照カウンタが0になったら解放されて
ブラウザ終了時にReleaseされてなかったらメモリリークするってことか。
なんか超初歩的な質問しちゃってスマソ
0889rNGNG
俺の目的は「ファイルを作って、その作成日時を2004.2.14 17:33:08にする」こと。
#include "stdafx.h"
#include <atltime.h>
int _tmain(int argc, _TCHAR* argv[]) {
    ATL::CTime ct1( 2004, 2, 14, 17, 33, 8 );
    ATL::CFileTime ft1( ct1.GetTime() ), ft2;
    ::WIN32_FIND_DATA fd1;
    ::CreateDirectory( "iida", 0 );
    ::HANDLE h1 = ::CreateFile( "iida\\riho.jpg", GENERIC_WRITE, 0, 0, CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL, 0 );
    ::SetFileTime( h1, &ft1, 0, 0 );
    ::GetFileTime( h1, &ft2, 0, 0 );
    ::CloseHandle( h1 );
    ::HANDLE h2 = ::FindFirstFile( "iida\\riho.jpg", &fd1 );
    ::FindClose( h2 );
    ATLTRACE( "ct1 : %s\n", ct1.Format( "%Y.%m.%d %H:%M:%S" ) );
    ATLTRACE( "ft1 : %s\n", ATL::CTime( ft1.GetTime() ).Format( "%Y.%m.%d %H:%M:%S" ) );
    ATLTRACE( "ft2 : %s\n", ATL::CTime( ft2.GetTime() ).Format( "%Y.%m.%d %H:%M:%S" ) );
    ATLTRACE( "fff : %s\n", ATL::CTime( fd1.ftCreationTime ).Format( "%Y.%m.%d %H:%M:%S" ) );
    return 0;
}
こんなコードをかいて、実行してみました。
0890rNGNG
>>889
あれ?バックスラッシュが全角になってしまた...

んで、実行すると
ct1 : 2004.02.14 17:33:08
ft1 : 2004.02.14 17:33:08
ft2 : 2004.02.14 17:33:08
fff : 1970.01.01 09:00:00
こんなんなる。1970年?なんでだ?!

んで、ファイルのプロパティをみてみると
「作成日時:1601年1月1日、9:01:47」
とかになってる。何だこりゃ?!

WindowsXP Professional SP1 (多分最新)
VC++ .NET 2003 スタンダード、コンソールアプリ、ATL使用。

知りたいのは1.なんでこうなるのか 2.MFCを使わないでファイルのタイムスタンプを設定するにはどうすればいいのか
の二つです。
0891デフォルトの名無しさんNGNG
>>889
CTimeとCFileTimeでは単位?が違うんじゃなかったっけ?
SystemTimeToFileTime使ったら?
0892891NGNG
すまん。俺のレスは忘れてくれ。
0893デフォルトの名無しさんNGNG
>>891-892
いや、それで合っていると思うよ。

int _tmain(int argc, _TCHAR* argv[])
{
  ATL::CTime ct( 2004, 2, 14, 17, 33, 8 );
  SYSTEMTIME st1;
  ATL::CFileTime ft1;
  ct.GetAsSystemTime(st1);
  ::SystemTimeToFileTime(&st1, &ft1);
  ::FileTimeToSystemTime(&ft1, &st1);  // 再取得
  SYSTEMTIME st2;
  ATL::CFileTime ft2( ct.GetTime() );
  ::FileTimeToSystemTime(&ft2, &st2);
  ATLTRACE( "ct : %s\n", ct.Format( "%Y.%m.%d %H:%M:%S" ) );
  ATLTRACE( "st1 : %s\n", ATL::CTime(st1).Format( "%Y.%m.%d %H:%M:%S" ) );
  ATLTRACE( "ft1 : %08x:%08x\n", ft1.dwHighDateTime, ft1.dwLowDateTime );
  ATLTRACE( "st2 : %s\n", ATL::CTime(st2).Format( "%Y.%m.%d %H:%M:%S" ) );
  ATLTRACE( "ft2 : %08x:%08x\n", ft2.dwHighDateTime, ft2.dwLowDateTime );
  return 0;
}

結果は、
ct : 2004.02.14 17:33:08
st1 : 2004.02.14 17:33:08
ft1 : 01c3f320:9c1aa200
st2 : 1970.01.01 09:00:00
ft2 : 00000000:402ddd44
0894rNGNG
>>891-893
なるほど!
そか、GetTimeで得られる者が全然互換性なかったんだな。
戻り値の型も違うんだし、そもそも気づくべきでした...

ありがとう、たすかりました。
0895デフォルトの名無しさんNGNG
CAtlRegExpってマルチバイトだと誤検出しちゃうんだが...なzに
結果: -> 0: "test"
Unicode版なら大丈夫なんだよな。

#include<atlstr.h>
#include<atlrx.h>
int main()
{
const unsigned char reg[] = "({.+}):"; //グループは{}で指定...(泣
const unsigned char target[] = ("test ");//test[全角スペース]

CAtlRegExp<CAtlRECharTraitsMB> reUrl;
REParseError status = reUrl.Parse(reg);
if (REPARSE_ERROR_OK != status){// Unexpected error.
return 0;
}
CAtlREMatchContext<CAtlRECharTraitsMB> mcUrl;
if (!reUrl.Match(target,&mcUrl)){// Unexpected error.
return 0;
}
for (UINT nGroupIndex = 0; nGroupIndex < mcUrl.m_uNumGroups;++nGroupIndex){
const CAtlREMatchContext<CAtlRECharTraitsMB>::RECHAR* szStart = 0;
const CAtlREMatchContext<CAtlRECharTraitsMB>::RECHAR* szEnd = 0;
mcUrl.GetMatch(nGroupIndex, &szStart, &szEnd);
ptrdiff_t nLength = szEnd - szStart;
printf("%d: \"%.*s\"\n", nGroupIndex, nLength, szStart);
}
}
0896デフォルトの名無しさんNGNG
教えてください。
MFCよりATLのCStringのほうが使いやすいと前レスで読んだのですが
MFCのプログラムでATLのそれを使うには具体的にどうすれば(どの
ヘッダを取り込んで、どのライブラリをリンクして...)
いいのでしょうか?
0897デフォルトの名無しさんNGNG
プロジェクトのプロパティを開いて、一番上の項目で「ATLを動的リンクで使用する」を選ぶ。
プログラム中ではATL::を省略しない。
0898デフォルトの名無しさんNGNG
using ATL::CString
でええやん。
0899デフォルトの名無しさんNGNG
>>>897
え?
0900896NGNG
>>897-898
遅れますた。今会社から帰ってきますた。
レスどうもありがとうございます。m(__)m
ところでATLを静的にリンクしてはまずいので
しょうか?
0901デフォルトの名無しさんNGNG
>>900
普通するもんかと
テンプレートライブラリだし
0902デフォルトの名無しさんNGNG
リンクして無くてもATLは使える・・・
0903デフォルトの名無しさんNGNG
勉強しなくてもATLは使えまつか?
0904デフォルトの名無しさんNGNG
なんだかんだで900突破してたんだ
0905デフォルトの名無しさんNGNG
>>903
帰って下さい。あなたにこのスレは合いません。
0906デフォルトの名無しさんNGNG
ATLの本てもう出ないのかな
0907デフォルトの名無しさんNGNG
結局はソースを読むことになるし、
とっかかりはMSDNとウィザードがつくるスケルトンコードで間にあう。
0908デフォルトの名無しさんNGNG
そんなこと言い出したら世の中のプログラミング本はほとんどいらないことになるからナンセンス。
0909デフォルトの名無しさんNGNG
実際いらないと思うぞ
0910デフォルトの名無しさんNGNG
ソースとスケルトンコードで間に合うと思っている人間がなぜここにいるんだ。
0911デフォルトの名無しさんNGNG
無料のVCToolKitでも使えるATLの代わりになるものってない?
0912はじめてNGNG
>>911

APPのコードをライブラリ化。
長文ソース簡略化で作業時間、効率を削減。

基本的なWin32システムを支援します。

最強のACライブラリー
ttp://www.geocities.jp/osoftjp
0913デフォルトの名無しさんNGNG
ほす
0914デフォルトの名無しさんNGNG
VC++2005ではATL8.0になるんだな。
なんかもう無駄に数字だけ上がってる気がしてきた。
0915デフォルトの名無しさんNGNG
つか、なぜにATLなの?
圧倒的にMFCの方がやってる人多いでしょ?
0916デフォルトの名無しさんNGNG
ミーハーだから
0917デフォルトの名無しさんNGNG
多いからどうした。
0918デフォルトの名無しさんNGNG
>>917
複数でプログラム作ったことないでしょ?
仕事でプログラムを作成する場合、一人ですべてを書き上げるなんて
ことはよほど小さな仕事でもない限り、ありえない。
先日納品したシステムは15名で作ったが、そのなかに
C++Builderしかできませ〜んなんて奴がいて、切っちゃおうかな
なんて考えたよ
0919デフォルトの名無しさんNGNG
MFCもできますが。何か?
0920デフォルトの名無しさんNGNG
どこにATLしか使わないなどと書いてんだ?
話の前提がおかしすぎ。
0921デフォルトの名無しさんNGNG
困るねぇ、とんちんかんなこと言い出す奴がいると。
>>918みたいな奴は切っちゃおうかななんて考えたよ。
0922デフォルトの名無しさんNGNG
さすがに2chはdomesticな人が多いですね
0923デフォルトの名無しさんNGNG
夏休みだねぇ
0924デフォルトの名無しさんNGNG
>>923
納品したとか書いてるからあれでも社会人らしいよ。
0925デフォルトの名無しさんNGNG
釣りだったってことにしてあげなよ。
0926デフォルトの名無しさんNGNG
かわいそうな子なんだね
0927デフォルトの名無しさんNGNG
WTLのバージョンがあがったのに話題にもなりませんかそうですか・・・
0928デフォルトの名無しさんNGNG
WTLのスレは別にあるんで
0929デフォルトの名無しさんNGNG
2005BetaにはもうATL8.0付いてるの?
0930デフォルトの名無しさんNGNG
ちょいと聞きたいんだけど
MFCではメッセージハンドラ内で投げられたCException例外は
ハンドラ内でcatchしなくてもフレームワークがcatchしてメッセージBOXを出してくれますよね。
それと同じ様に、ATLでもハンドラから漏れ出た例外をcatchしたいのです。

とりあえず今はBEGIN_MSG_MAPとEND_MSG_MAPをコピペして
try, catchを追加した独自のマクロを使ってますが…
もっとスマートな方法は無いでしょうか?
0931デフォルトの名無しさんNGNG
>>930
template <class T>
class CExceptionCatcher
{
 public:
 static LRESULT CALLBACK WindowProc(
   HWND hWnd,
   UINT uMsg,
   WPARAM wParam,
   LPARAM lParam
 )
 {
  try
  {
   return T::WindowProc(hWnd, uMsg, wParam, lParam);
  }
  catch (...)
  {
   ...;
  }
  return 0L;
 }
};
なんてのを継承するのはどう? WindowProc を持っているクラスを判断してテンプレートパラメータに
しなきゃいけないところがなんか泥臭いけど・・・
0932デフォルトの名無しさんNGNG
>>931
ありがとうございます。
いいかも、と思ったのですがCWindowImplBaseT<>::WindowProcを見てみると
例外のこと考慮されてないっぽいのでなんか危なそうです。
できればProcessWindowMessageから外に例外を出さないようにできないかなと考えて思いつきました。

#define MSG_MAP_TRY try {
#define MSG_MAP_CATCH(type, func) \
} \
catch(const type& e) \
func(e); \
}

BEGIN_MSG_MAP(theClass)
MSG_MAP_TRY
// この間のハンドラで起きた例外をキャッチする
MSG_MAP_CATCH(std::exception, ExceptionFunc)
END_MSG_MAP()
0933デフォルトの名無しさんNGNG
WSHのGetObject 関数みたいに
未登録コンポーネントのインスタンスを作成する方法はありますか?
0934デフォルトの名無しさんNGNG
あげとこう。
0935デフォルトの名無しさんNGNG
MFCもATLも最近始めたばっかりなんだがどう使い分けたら
いいのかサパーリわからん。
0936デフォルトの名無しさんNGNG
ATLで開発するときに、MFCは絶対使わない前提ですが
GDIのAPIなんかをいちいちSTLでラップしてますか?

あ・漏れはめんどくさいからしません。
最近、10年前のWindows API(16ビット)サンプル多数つきの本が
すごく役にたったりしてます。

0937デフォルトの名無しさんNGNG
WTL。
0938デフォルトの名無しさんNGNG
STLでラップって何よ
0939デフォルトの名無しさんNGNG
>>936の文は支離滅裂な感じがする。
0940デフォルトの名無しさんNGNG
>>936
CDC とか使うか?って話?漏れは使ってない。
使う価値がたいして感じられないから。

しかし CHandle なんかは C++ 特有のスコープ外れたら
破棄されるあたりが便利なので使ってる。
0941デフォルトの名無しさんNGNG
いちいちラップとか書いてるから、CDCも知らないんじゃ
0942デフォルトの名無しさんNGNG
DrawTextでストリングクラスを受けたりするかってことじゃないのか
0943デフォルトの名無しさんNGNG
あぁ、STLでラップってstd::stringで受けられるようにするって意味か。
0944デフォルトの名無しさんNGNG
なるほど。でも STL でラップしたい関数(群)ってそんなにあるかな?
文字列はどっちかっていうと CComBSTR 使ってるし・・・
0945デフォルトの名無しさんNGNG
俺もCStringで足りるなぁ。
どうせstring(CStringでもいいけど)を引数に使うメリットったって、
文字数を関数に渡さなくて良いとかその程度だべ?
0946デフォルトの名無しさんNGNG
GUIアプリあまり作らない人間にとってはstd::stringの方が馴染み深いと思う
0947デフォルトの名無しさんNGNG
でもそれだけのためにいちいちラップっていうのも。
俺ならc_strでいいやと。
0948はじめてNGNG
System.Stringでいいやと。
0949デフォルトの名無しさんNGNG
おじさんつまんなーい。
0950デフォルトの名無しさんNGNG
2005のATLリファレンスだけどなんか目新しいものあるか
http://lab.msdn.microsoft.com/library/default.asp?url=/library/en-us/dv_vclib/html/291f38d1-d2de-4687-86a9-99b4fd35706c.asp
0951デフォルトの名無しさんNGNG
951
0952936NGNG
STLでラップって、少々言い方が悪かったです

HDCに関わる操作クラスを自作する。テンプレートクラスとかのSTL
機能も利用して再利用可能なクラスを作る。って事をしたほうが合理的か
どうかって事を聞きたかったのです。

>>940
CDCって、MFCをインクルードしたプロジェクトで有効でしょう?
MFCは使いたくないのでAPIごりごりなわけじゃないですか
やっていて、自分なりの結論としては、とりあかずAPIごりごりが
正解な気がします。これで動作したら後々クラス化できると思うし

0953デフォルトの名無しさんNGNG
> テンプレートクラスとかのSTL 機能
用語の使い方がおかしい。
> CDCって、MFCをインクルードしたプロジェクトで有効でしょう?
なんども言われているが、WTLにすでにある。
0954デフォルトの名無しさんNGNG
>>953
WTLのスレにいってきます
0955デフォルトの名無しさんNGNG
やっぱりただの無知だったのか
0956デフォルトの名無しさんNGNG
>>955
行ってきましたがこれを学習するよりも
API直書きのほうが効率が良いと思いました。
0957デフォルトの名無しさんNGNG
>>956
マテマテ。
WTL くらいは使っても良いと思うぞ。メッセージマップとか。
その辺だけならドキュメントを1時間も読めば使えるだろうから、
「学習する」って程のものでもないし。
0958デフォルトの名無しさんNGNG
皆につっこまれて意地になってるだけだろ。
0959デフォルトの名無しさんNGNG
いえいえ、>>958意地になってなんかないですよ

実装が既に終わりましたので。次回の機会に使わせてもらいます。
0960デフォルトの名無しさんNGNG
ところでVC++6とVC.NETで同じソースをビルドするとして
VC++6(SP6)プロパティページダイアログの動作が怪しいなんて事ありませんか?

.NETビルドのATLはVB6には貼れない
VC++6ビルドのATLは.NET VBに貼れる
互換性についてのドキュメントってどこにあるのでしょうか?
教えて君でスマソ
0961デフォルトの名無しさんNGNG
日本語がめちゃくちゃだな
0962デフォルトの名無しさんNGNG
なんか言うばかりでレアな実装している人はいないんだな
0963デフォルトの名無しさんNGNG
また俺語ですか<レアな実装
0964デフォルトの名無しさんNGNG
レアな実装とは、往々にしてアレな実装である
0965デフォルトの名無しさんNGNG
IWebBrowser2 についてお聞きします。

Navigate 先を about:blank にしメモリ上の HTML を表示する、
という処理は書けたのですが、この HTML 内にある、
相対リンクがどうにも意図どおりに解釈されません。

具体的には
・外部スタイルシートを実行ディレクトリからの
 相対URL指定しても無視される。
・この文書内のアンカーへまともに飛べない。
 #some_where に行こうとすると
 about#some_where なる何も無いページを表示する
と言った症状です。

普通にテンポラリファイルに書き出して、
サクっと読み出すのが吉なんでしょうか?
0966デフォルトの名無しさんNGNG
質問させてください。

ATLの勉強のために、MSDNの ATL チュートリアル を参考にして作っていました。
このチュートリアルで説明しているコントロールに、htmlのparamタグを使って
値を渡せる機能を追加しようとしたんですが、タグに指定した値にはならず
デフォルトの値から変化しませんでした。
どの用にすればこの機能を使うことが出来るでしょうか

調べたところ、IPersistPropertyBagを使えば出来るようになるということで
使ってみたんですが、症状は変わりませんでした。
新規プロジェクトのウィザードで属性のチェックをつけた状態(チュートリアルではチェックを外していました)で、
IPersistPropertyBagを使ったときは上手くいったんですが、その状態ではイベントを追加することが出来ませんでした。
(追加してビルドするとfire_ClickInとfire_ClickOutというメソッドがないというようなエラーが出ます。)

参考にしている ATL チュートリアル
ttp://www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/vccore/html/_atl_ATL_Tutorial.asp
0967デフォルトの名無しさんNGNG
あげとこう。
0968デフォルトの名無しさんNGNG
>>966
IObjectSafetyを実装して、INTERFACESAFE_FOR_UNTRUSTED_CALLER と
INTERFACESAFE_FOR_UNTRUSTED_DATA あたりはサポートした?

あと IPersistPropertyBag は、キミの追加したプロパティの保存と読み込みを
勝手にサポートしてくれたりは「しない」から、ちゃんとBEGIN_PROP_MAPとか
使ってプロパティを登録してあげる必要があるけど、これはやってますか?
0969966NGNG
すいません、自己解決しました

public IPersistStreamInitImpl<CMyCtrl>,
public IPersistPropertyBagImpl<CMyCtrl>
COM_INTERFACE_ENTRY_IMPL(IPersistStreamInit)
COM_INTERFACE_ENTRY_IMPL(IPersistPropertyBag)
COM_INTERFACE_ENTRY_IMPL_IID(IID_IPersist, IPersistPropertyBag)
を追加することで解決することができました。

参考ページ
ttp://www.faqchest.com/msdn/ATL/atl-97/atl-9710/atl97100800_09033.html

お騒がせしました。

>>966
返信ありがとうございます。

>IObjectSafetyを実装して、INTERFACESAFE_FOR_UNTRUSTED_CALLER と
>INTERFACESAFE_FOR_UNTRUSTED_DATA あたりはサポートした?
INTERFACESAFE_FOR_UNTRUSTED_DATAはサポートしていませんでした。
パラメータの安全性が保障されるとの事なので追加したいと思います。

>あと IPersistPropertyBag は、キミの追加したプロパティの保存と読み込みを
>勝手にサポートしてくれたりは「しない」から、ちゃんとBEGIN_PROP_MAPとか
>使ってプロパティを登録してあげる必要があるけど、これはやってますか?
確認したところ、やってありました。
0970966NGNG
>>968
すいません、アンカーミスです
968さんありがとうございます
0971デフォルトの名無しさんNGNG
あげとこう。
0972はじめてNGNG
ATL.NETキタ━━━━(゚∀゚)━━━━ッ!!
ttp://www.atl.net/
0973マイク ◆yrBrqfF1Ew NGNG
ATLはキモイな。
0974デフォルトの名無しさんNGNG
内容がな(ry
0975デフォルトの名無しさんNGNG
内容がなんと水鳥拳
0976デフォルトの名無しさんNGNG
あげとこう。
0977デフォルトの名無しさんNGNG
次スレは?
0978デフォルトの名無しさんNGNG
WTLと統合したよ。

class ATL/WTL : public 2ch<ATL/WTL, Part3>
http://pc5.2ch.net/test/read.cgi/tech/1095185498/
0979デフォルトの名無しさんNGNG
ここまで来るのに2年がかりか
0980デフォルトの名無しさんNGNG
このスレ乙
0981デフォルトの名無しさんNGNG
oti
レス数が950を超えています。1000を超えると書き込みができなくなります。