■過去ログ置き場に戻る■ 1- 前250 次250 最新50


[memo] "9999999999_00.html#R20" という感じで、URLの最後に "#RレスNo" を追加すると幸せになれます。

Win32API質問箱 Build18
751 名前:749 :04/05/08 10:24
>>750
ありがとうございました。分かりました。

752 名前:デフォルトの名無しさん :04/05/08 12:22
>>748
GDI+のDLLはアプリと共に配布する事が許可されています。


753 名前:デフォルトの名無しさん :04/05/08 12:26
>>752
VBランタイムと同じ(サイズは違うが)で、やっぱトラブルの元だと思うよ

754 名前:デフォルトの名無しさん :04/05/08 12:51
>>753
そのためのside-by-side(ryって
XP以前のOSじゃほとんど使えないか

755 名前:デフォルトの名無しさん :04/05/08 13:03
> XP以前のOSじゃほとんど使えないか
話にならんほど使えんな

756 名前:デフォルトの名無しさん :04/05/08 13:50
エントリー関数名が「main」だとどうなりますか?

757 名前:デフォルトの名無しさん :04/05/08 13:58
深いレベルの話では、別にどうもならない。
一般的な話なら、コンソールアプリケーション。

758 名前:デフォルトの名無しさん :04/05/08 16:52
>>753
GDI+のdllはCOMじゃないから、exeの横にgdiplus.dllを置いておくだけで事足りる。
だからトラブルはあまり起こらないと思う。

759 名前:デフォルトの名無しさん :04/05/08 17:29
WinMainの第一引数であるHINSTANCEをコールバック関数で得たく、
AfxGetInstanceHandleという関数を見つけました。
これは引数が無いみたいですが、
HWNDを渡さなくても大丈夫なんでしょうか。
また、別の関数で得るのなら、それを教えてください。

760 名前:デフォルトの名無しさん :04/05/08 17:32
>>759
大丈夫です

761 名前:デフォルトの名無しさん :04/05/08 17:35
>>759
MFCじゃないのかそれは
自プロセスのHINSTANCEしか返らないからHWND渡さなくても大丈夫

762 名前:759 :04/05/08 17:36
>>760
TextOutとかGetDCとかほとんど全ての関数の引数にHWNDが必要なのに
なぜこれは大丈夫なのでしょうか(っておかしいですが)。

763 名前:759 :04/05/08 17:38
>>761
MFCじゃないです。
そのコールバック内から呼び出すから大丈夫という事ですか。

764 名前:デフォルトの名無しさん :04/05/08 17:43
全てのAPIにHWNDが必要だった場合を考えてみよう。

765 名前:デフォルトの名無しさん :04/05/08 17:46
>>762
TextOutを復習しよう

766 名前:デフォルトの名無しさん :04/05/08 17:52
>>763
おぉ、Win32でもほんとにあった、同じ名前なんだな
まぁこれで他プロセスのHINSTANCE取れたらとんでもないことになりそうだと思うが

767 名前:759 :04/05/08 17:54
すいません。そもそもSDKでは以下のエラーが出て無理なようです。
afx.h(15) : fatal error C1189: #error :
MFC requires C++ compilation (use a .cpp suffix)
グローバル変数か、関数にstaticで保存しとく、とかにします。

>>765
すいません、HDCです。

お答えいただいた方、ありがとうございました。

768 名前:デフォルトの名無しさん :04/05/08 18:02
GetModuleHandle(NULL)でいいじゃん

769 名前:759 :04/05/08 18:04
インスタンスだけでなく、リソース、アプリケーション名も
同じようなエラーが出ます。

>>766
というと自分の考え方はあながち間違っていなかったんですかね。
SDKにはない特殊なソースが隠れていてそれでHWNDを判断するみたいな。
ウィンアプリはだいたいwindows.hで全て出来るけど、
afxwin.hと別のヘッダーを利用している所からも特殊なんでしょう。

770 名前:759 :04/05/08 18:06
>>768
ありがとうございます。調べてみます。

771 名前:デフォルトの名無しさん :04/05/08 18:09
 質問で申し訳ありません。

開発言語は「Visual Basic 6.0」です。
OSは「WindowsXP Personal Edition」です。
「RasDial」でRASの接続を行い、
「RasHangUp」でRASの切断を行う処理を行っております。
プログラム起動をして初回の接続は問題無く動作し、
切断する事も出来ます。
ですが、続けて同じRASに接続しようとした場合
エラーコード「668」(接続を終了しました。)
が返されてしまい、接続する事が出来ません。
「Windows98 Second Edition」では正常に動作しておりました。
この現象について何かご存知の方はいらっしゃいますでしょうか?

772 名前:デフォルトの名無しさん :04/05/08 18:54
ドライブはGetFileAttributesで取得すると
属性はFILE_ATTRIBUTE_DIRECTORYなんですか?
Windows2000以外でも同じですか?

773 名前:デフォルトの名無しさん :04/05/08 21:32
WindowsXP Personal Editionってなんだよ(w

774 名前:デフォルトの名無しさん :04/05/08 21:36
Officeと混ざったんだろうな。

775 名前:デフォルトの名無しさん :04/05/08 21:37
ググって見ろ。
5件もヒットするぞ。(藁

776 名前:デフォルトの名無しさん :04/05/08 21:43
HOMEでした。すいません。

777 名前:デフォルトの名無しさん :04/05/09 01:24
>>775
ワロタ

778 名前:デフォルトの名無しさん :04/05/09 01:29
関係ないが、Office XP Home Editionというのも

779 名前:デフォルトの名無しさん :04/05/09 07:18
>>759
GetWindowLong()じゃだめなの?
hInstance = (HINSTANCE)GetWindowLong(hwnd, GWL_HINSTANCE);
みたいにすれば得られるけど。

780 名前:デフォルトの名無しさん :04/05/09 07:37
どこかにWinのバージョンごとに
入っているフォントと初期フォントを
紹介したサイトはありませんか?

781 名前:780 :04/05/09 09:50
知りたい理由というのは、
フォントを利用したツールを作ろうと思っていて、
ユーザーに独自のフォントを使わせたくないんで。
…スレ違いだったかな?

782 名前:デフォルトの名無しさん :04/05/09 10:27
>>781
擦違い

783 名前:デフォルトの名無しさん :04/05/09 18:19
以下のプログラムはビットマップを表示するものです。
http://do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/readres.cgi?bo=lounge&vi=999294620&res=149

タイプ1が1セルずつ表示するバージョンで、
タイプ2が表示する内容を別の所に記憶しておき最後に一度で表示させようと
した物です。タイプ2の方が表示されないので正しいやり方を教えてください。
なお、ビットマップが添付されてますのでソースと同じフォルダに置いて下さい。

784 名前:783 :04/05/09 18:20
質問なので上げさせてください。

785 名前:デフォルトの名無しさん :04/05/09 18:22
ageさせてあげますが答えてはあげません

786 名前:デフォルトの名無しさん :04/05/09 18:24
>>783
ビットマップがない。>>539と同じ問題。

787 名前:デフォルトの名無しさん :04/05/09 18:24
>>783
スレ違い。

788 名前:783 :04/05/09 18:27
>>786
>>539周辺を読んでみます。

>>787
誘導してください。

789 名前:783 :04/05/09 18:37
>>786
こんな感じでやってみたのですがダメでした。
もう少しヒントをください。

SelectObject(hDCBitmap, hBitmap);
for(x=0; x<20; x++)
for(y=0; y<20; y++)
{
BitBlt(hDCBack, x*16, y*16, 16, 16, hDCBitmap, 0, 0, SRCCOPY);
//Sleep(1);
}
DeleteObject(hBitmap);

SelectObject(hDC, hDCBack);
BitBlt(hDC, 0, 0, 320, 320, hDCBack, 0, 0, SRCCOPY);
DeleteObject(hDCBack);

790 名前:デフォルトの名無しさん :04/05/09 20:45
LoadImageの使い方おかしくないか?

791 名前:デフォルトの名無しさん :04/05/09 21:17
だから、hDCBack が 320x320 の大きさのビットマップを
SelectObject() してないと、hDCBitmap から hDCBack に blt すると
きに描画先が足りないっしょ?


792 名前:デフォルトの名無しさん :04/05/09 23:46
>>783
HDC hDCBitmapに対応するHBITMAPはhBitmap。
同じように、HDC hDCBackに対応するHBITMAPを設ける必要があるよ。

791が言っているのは、
HBITMAP hBmpBack=CreateCompatibleBitmap(hDCBack,320,320);
SelectObject(hDCBack, hBmpBack);
が必要だってこと。


793 名前:783 :04/05/10 12:25
ありがとうございます。

>>792
黒に白い線が入った感じで表示されてしまいます。どこがいけないのでしょう。
http://do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/readres.cgi?bo=lounge&vi=999294620&res=150

後、同じような事をやっているプログラムを見つけたのですが、
それでも同じような感じで表示されます。
http://www3.omn.ne.jp/~renas/Win32/Win32_08.html

794 名前:デフォルトの名無しさん :04/05/10 12:57
>>793
コンパチビットマップを設定する順序が無茶苦茶だと思われ。

795 名前:デフォルトの名無しさん :04/05/10 13:17
>>794も原因の一つだが、
CreateCompatibleBitmapで指定するHDCは大元のHDCを指定する必要がある。
MSDNのCreateCompatibleBitmapの解説をじっくり読みましょう

796 名前:783 :04/05/10 13:18
>>794
ありがとうございます。順番をいろいろ変えて実験してみます。

797 名前:783 :04/05/10 13:20
>>795
ありがとうございます。
大元のにしたら、まだ正しくは表示されませんが色が付きました。

798 名前:783 :04/05/10 13:41
表示できました。ありがとうございました。
http://do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/readres.cgi?bo=lounge&vi=999294620&res=151

799 名前:デフォルトの名無しさん :04/05/10 16:39
一定時間放置されたらダイアログを終了させたいと思っています。

このダイアログにはIEコンポーネットが貼ってあるので、できれば
システム全体かダイアログ全体のイベントとして処理したいのですが
普通はどのように実装するものなのでしょうか?

対象はWinCE(HPC2000)ですが、基本は同じだろうと思って
ここに書きました。

よろしくお願いします。

800 名前:デフォルトの名無しさん :04/05/10 20:50
>>799
WM_TIMER

801 名前:デフォルトの名無しさん :04/05/11 00:07
>>799
何を放置か知らないけど、>>800さんの意見+放置対象を監視すると桶。

802 名前:デフォルトの名無しさん :04/05/11 00:21
リストボックスのどれが選択されているのかを判定するのって
X = (int)SendDlgItemMessage (hDlg, IDC_LIST, LB_GETCURSEL, 0, 0);
であってます?
どれ選んでも0が代入されちゃうんですけど・・・

803 名前:デフォルトの名無しさん :04/05/11 00:21
 

804 名前:デフォルトの名無しさん :04/05/11 00:25
winsockつかってUDPでチャット作ったのですが、
同じマシン内でサーバとクライアント立ち上げたときは反応しますが
違うマシン同士では反応しません。
IPとかポートはちゃんとしています。
原因はUDPつかってるからでしょうか。
よろしくお願いします。

805 名前:デフォルトの名無しさん :04/05/11 00:31
http://support.microsoft.com/default.aspx?scid=kb;JA;74586

806 名前:デフォルトの名無しさん :04/05/11 00:41
>>804
ポートってTCPのポートだったら笑えるな。
そもそもチャットにUDP使うこと自体がおかしい。
UDPは転送も、順番も保証がない。
それとネットワークプログラミングスレで聞け。

807 名前:804 :04/05/11 01:08
すれ違いでした。すみませんでした。


808 名前:デフォルトの名無しさん :04/05/11 03:54
リストビューを表示中にその内容を書き換えたく、以下のようにしているのですが、

void Update() {
  ListView_DeleteAllItems(m_hLV);
  for (...) {
    LV_ITEM lvItem;
    ...
    ListView_InsertItem(m_hLV, &lvItem);
    ...
  }
}

DeleteAllItemsをしたときにスクロールバーが戻ってしまいます。

スクロールバーが戻らないように表示内容だけ更新する方法はないでしょうか。

809 名前:808 :04/05/11 03:55
すいませんsageてしまいました

810 名前:デフォルトの名無しさん :04/05/11 04:07
>>808
変更のあったアイテムだけ書き換えるんじゃだめなの?

あとは、大量のアイテムを追加したりするときのために
描画を停止させる方法があった気がするけど、
スタイルだったっけなぁ・・・?


811 名前:808 :04/05/11 04:37
>変更のあったアイテムだけ書き換えるんじゃだめなの?

DeleteAllしないでInsertすると項目がどんどん追加されてしまうし、
どうしたら変更のあったアイテムだけ書き換えることができるでしょう?


812 名前:デフォルトの名無しさん :04/05/11 04:50
ListView_SetItem

813 名前:デフォルトの名無しさん :04/05/11 04:53
ListView_SetItem、ListView_SetItemText
お好きな方をどうぞ。

前から疑問に思っていたのだけど、質問するときにスレを上げるのって何か意味があるの?
ローカルルールなら仕方ないと思うんだけど、たまにムカっとくるんだが。


814 名前:デフォルトの名無しさん :04/05/11 04:58
>>813
2ちゃんブラウザ使ってるとそう思うときもあるけど、
IEとかネスケ使ってる場合、ageてくれないと見つけづらいからね。
記事が目に付かないと答えがもらえる可能性も低くなるし。

最近は見ないけど、質問するときはageとけっていってる人もいた。

815 名前:デフォルトの名無しさん :04/05/11 05:37
スレをsageる方にこそ意味があるのかと

816 名前:デフォルトの名無しさん :04/05/11 05:48
さらしあぐぇ

817 名前:デフォルトの名無しさん :04/05/11 05:53
>>813
>ローカルルールなら仕方ないと思うんだけど、たまにムカっとくるんだが。

ほう。どうしてムカつくのかね?

818 名前:デフォルトの名無しさん :04/05/11 06:20
>>815
私もちょっと思う。

けど、sage

819 名前:デフォルトの名無しさん :04/05/11 06:41
>>815>>818
仮にも技術板なんだし、
質問やニュース系がageで、普通の雑談はsageにしたほうが
利便性高い気がしなくもないけど。
普段からageてると、質問が埋もれるし。

820 名前:デフォルトの名無しさん :04/05/11 06:49
age書き込み=荒らしだと信じ込んでいる人は困る。

821 名前:デフォルトの名無しさん :04/05/11 07:16
だれもそんな事は言ってない。

822 名前:デフォルトの名無しさん :04/05/11 08:02
>>821
2ch中にたくさんいるだろうが。

823 名前:デフォルトの名無しさん :04/05/11 08:03
2ch中なんて見て回る余裕内

824 名前:デフォルトの名無しさん :04/05/11 08:26
いや、つーかスレと関係ない話題はyosoでやってくれんか。

825 名前:デフォルトの名無しさん :04/05/11 10:29
そうだそうだ

826 名前:デフォルトの名無しさん :04/05/11 11:57
飲むソーダ

827 名前:デフォルトの名無しさん :04/05/11 12:49
>>824
yoso送り

828 名前:デフォルトの名無しさん :04/05/11 12:59
このスレは見てる人多いんだからageて目立たせなくても教えてくれる人は居るかと。
それでもageるのは質問スレの慣習かな。

829 名前:デフォルトの名無しさん :04/05/11 13:07
なんかage=悪って洗脳されてるやつがいるな。

830 名前:デフォルトの名無しさん :04/05/11 13:10
「デフォルト=悪」ということらしいねw

831 名前:デフォルトの名無しさん :04/05/11 13:27
でも、age進行のスレで関係ない質問が紛れ込んだことはあった。
プログラム板だからどれも同じと思ったらしいが。

832 名前:デフォルトの名無しさん :04/05/11 13:37
>>830
漏れのブラウザでは、sageがデフォルトなんでつが・・・

833 名前:デフォルトの名無しさん :04/05/11 13:43
2chのデフォルトっつー意味だって事ぐらい分かるだろ。

834 名前:デフォルトの名無しさん :04/05/11 13:48
技術系板では2chブラウザを使って当然、それらのデフォルトのsageで投稿して当然だと思うけど?

835 名前:デフォルトの名無しさん :04/05/11 13:57
脳が涌いているようでつね。

836 名前:デフォルトの名無しさん :04/05/11 13:58
使ってるソフトウェアのデフォルト設定だから、ってのは思考停止だと
思うぞ。

ところで、8bpp 以下の DIB のパレットの扱いがよくわからん…。どっ
かにいい解説はないもんだろうか。



837 名前:デフォルトの名無しさん :04/05/11 16:00
とりあえずPetzold本の下巻

838 名前:デフォルトの名無しさん :04/05/11 16:13
ttp://www.kk.iij4u.or.jp/~kondo/bmp/

839 名前:デフォルトの名無しさん :04/05/11 16:58
2chだろうがブラウザだろうが「デフォルトだから」ってのは頭悪そう

840 名前:836 :04/05/11 17:20
>>836
あーいや、BMPのファイルフォーマットは理解してるんです。

CreateDIBSection() で DIB_PAL_COLORS したときにどんなパレットが
HBITMAP の中に記録されているの? とか、GetObject() で DIBSECTION
が取れるけど、DIBSECTION にパレット情報が含まれないのはなんで?
とか、GetDIBColorTable() に HDC が必要なのはなんで? とか。



841 名前:デフォルトの名無しさん :04/05/11 17:54
>>840
パレットはビットマップじゃなくてデバイスコンテキストの属性だから。

842 名前:836 :04/05/11 18:05
DIB_RGB_COLORS で CreateDIBSection() するときはパレットの情報も
渡してるよね? そのときに渡したパレットの情報は HBITMAP の中には
保持されてないってこと?



843 名前:デフォルトの名無しさん :04/05/11 18:25
>>842
そうですよ。
っていうか841に書いたように「パレット」はデバイスコンテキストの属性なんだってば。

844 名前:843 :04/05/11 18:36
ん、なんか自信無くなってきたぞ・・・

845 名前:デフォルトの名無しさん :04/05/11 18:39
いや、パレットの情報なんか渡されないし。
CreateDIBSectionとかで指定するのは、ビット列がどんな色情報を
持っているかだけで、その後のパレットとは関係ない。

846 名前:836 :04/05/11 19:53
SetDIBits() や GetDIBits() ではとくに疑問はないんです。

>>845
CreateDIBSection() ではピクセルのデータは入力しないから、その説
明だと bmiColors の情報は全く何にも使われないことになっちゃいま
すよ。
MSDN の説明を読む限りでは、DIB_PAL_COLORS でも DIB_RGB_COLORS で
も bmiColors のテーブルには意味があるはず。


847 名前:デフォルトの名無しさん :04/05/11 20:41
あー、もうウザいから、君の理解している「パレットの定義」を書いてくれ。


848 名前:836 :04/05/11 22:57
パレットちうのは、ピクセルデータから RGB 値に変換するテーブルのことさー。

DIBSection な HBITMAP の場合、
・CreateDIBSection() で DIB_RGB_COLORS のときに bmiColors に入って
いるもの
・CreateDIBSection() で DIB_PAL_COLORS のときに HDC が SelectPalette()
してるHPALETTE と bmiColors に入っている WORD 配列
・その HBITMAP を SelectObject() した HDC が SelectPalette() してる HPALETTE
・GetDIBColorTable() と SetDIBColorTable() で出し入れできるもの
これらの関係はなにさ? ということ。


849 名前:デフォルトの名無しさん :04/05/11 23:32
>>847答えられなくなったからキレた。

850 名前:843 :04/05/12 13:31
>>848
bmiColors にある clut が意味を持つのは、StretchDIBits や SetDIBits などで使うときだけ。
CreateDIBSection で得られた HBITMAP は、旧来の GDI 的には旧来の HBITMAP としてしか
扱われないので、HBITMAP を用いる場面では SelectPalette 等する必要がある。

>・CreateDIBSection() で DIB_RGB_COLORS のときに bmiColors に入っているもの
>・GetDIBColorTable() と SetDIBColorTable() で出し入れできるもの
この2つは同じ化も知れない。

あとは全て相互に無関係。
まぁ普通はプログラマが意識して一致させるだろうけど。

851 名前:デフォルトの名無しさん :04/05/12 13:52
>>849に同意w
それはさておき、本題を書きましょうか。

まず、少し混同しているようだが、パレットとカラーテーブルは別物。
CreateDIBSectionで作られるHBITMAPの中にあるのはカラーテーブル。
CreatePaletteなどで作るHPALETTEがパレット。

CreateDIBSectionのiUsageはそのカラーテーブルをどう作るかを指定してるだけ。
GetDIBColorTableなどでいじってるのも、関数の名前どおりカラーテーブル。

実際画面に表示する時には、このHPALETTE内のパレットと、DIBSection内の
カラーテーブルとをカラーマッチングして表示してたと思う。

852 名前:デフォルトの名無しさん :04/05/12 15:14
VBからの呼出ですがよろしくお願いします。

ImmGetConversionListを使ってIMEでの変換候補を取得しようとしています。方法は
ttp://www.mitene.or.jp/~sugisita/vb6_ime.html
の「IMEの変換候補の取得」をそのまま流用させて頂いてます。

ところがたとえば平仮名の”あ”について変換候補を取得すると
亞、亜の2つしか取得できません。メモ帳で”あ”を変換すると私の環境では
亜、亜、ア、あ、阿、ぁ、蛙、唖、ァ、吾の10個の候補が出てきます。

どうやったら10個全て取得できるのか教えてください、よろしくお願いします。

853 名前:名無し@沢村 :04/05/12 16:00
おまいらよ、いまだにビットマップの表示ごときで議論してるのか?
ビットマップの表示ごときで議論することが何かあるのか?
おまいらに、幼稚園児の称号を与えてもいいか?

854 名前:デフォルトの名無しさん :04/05/12 16:04
つまらんアセンブラ解説サイトなんか作ってないでもっと実用的なモノやれよ。
PE解析に役立つアセンブラ、とかさ。

855 名前:デフォルトの名無しさん :04/05/12 17:12
(ノ∀`)アチャー

856 名前:デフォルトの名無しさん :04/05/12 20:07
嘘を嘘と(ry

857 名前:デフォルトの名無しさん :04/05/12 21:10
つまり本物だろうと騙りだろうとネタだろうと嘘だろうと

   沢 村 に レ ス す ん な


858 名前:デフォルトの名無しさん :04/05/13 01:34
>>857
お前に指図はされない

859 名前:デフォルトの名無しさん :04/05/13 01:55
俺にも指図はされない

860 名前:デフォルトの名無しさん :04/05/13 07:46
俺は指図しない

861 名前:デフォルトの名無しさん :04/05/13 09:52
指定フォルダの中にフォルダがあるかどうかをみるって
FindFirstFileで調べないとダメ?もっと簡単なAPIってある?
教えてエロエロな人

862 名前:デフォルトの名無しさん :04/05/13 10:36
おまえに指図される

863 名前:デフォルトの名無しさん :04/05/13 10:47
俺にも指図してよ

864 名前:デフォルトの名無しさん :04/05/13 11:44
指図してください、ご主人様。

ところで、
>>861
FindFirstFile とかでぐるぐるするぐらいしか思い浮かばないわ。
じゅうぶん簡単な方法だと思うの。


865 名前:デフォルトの名無しさん :04/05/13 12:10
名前わかってるなら、ぐるぐるする必要は無いだろ。

866 名前:デフォルトの名無しさん :04/05/13 12:19
>>864
だよなぁ
>>865
ちげえって、指定フォルダん中にさらにフォルダあるかどうかってきいてんあああああああああああああああああばかあああああああああ

867 名前:デフォルトの名無しさん :04/05/13 12:26
サブフォルダがあるかどうかはシェルAPIを使って
SFGAO_HASSUBFOLDER
のビット見ればいいだろ。

868 名前:デフォルトの名無しさん :04/05/13 12:31
複数行描画、クリッピング機能、DT_EDITCONTROLを使いたくてDrawTextを使ってるんですが、
この関数は連続して文字を書きたいときに、カレントポジションを更新してくれないので
代わりになるような関数とかってありますか?

もしくはDT_EDITCONTROLでやってる計算方法とかわかれば関数を自作してみますけど・・・
DT_CALCRECTじゃ矩形しかとれないんですよね?


#「FindFirstFile とかでぐるぐるする」って表現、なんかかわいいw


869 名前:デフォルトの名無しさん :04/05/13 14:00
>>867
お、そんな便利なものがあったのか、と思ったら、COM かあ。


870 名前:デフォルトの名無しさん :04/05/13 14:04
>>869
COMかどうかなんか気にする必要はないぞ。
普通にヘッダインクルードしてライブラリリンクすれば使える。
そもそもAPIなんかほとんどDLLなんだし。何が問題?

871 名前:デフォルトの名無しさん :04/05/13 14:19
参照カウントとかQueryInterfaceにアレルギーがあるんじゃないの?

872 名前:デフォルトの名無しさん :04/05/13 14:54
そこでATLですよ
しかし生APIとは言えなくなる罠

873 名前:デフォルトの名無しさん :04/05/13 15:01
ATLの方が厄介でしょ。
相手先の環境によっちゃ、DLL配らなきゃいけないし。

874 名前:デフォルトの名無しさん :04/05/13 15:07
COM でやるんなら、FindFirstぐるぐるでも手間かわらないんじゃ?


875 名前:デフォルトの名無しさん :04/05/13 15:17
>>867
髪!!
さんくす

876 名前:デフォルトの名無しさん :04/05/13 16:43
>>868
TEXTMETRIC使ってこねこねじゃダメかしら?

877 名前:868 :04/05/13 17:19
文字列A="あいうえおかきくけこ\nさしすせそ";
文字列B="ぱぴぷぺぽ";

だとすると、

あいうえおかきくけこ
さしすせそぱぴぷぺぽ

のように表示させたいんですよね。


>>876
自分もTEXTMETRICとかでこねこねしたいんですけど、
DT_EDITCONTROL、つまりエディットコントロールの表示方法に合わせたいので
エディットコントロールがどうやって座標計算してるのかが分からないので・・・

でも、レスありがとうございます。
今まで相手にされてなかったので(´・ω・`)してまスた。


878 名前:デフォルトの名無しさん :04/05/13 17:54
>>873
なんでスタティックリンクしないの?

879 名前:デフォルトの名無しさん :04/05/13 18:49
>>877
毎回全部描く。

880 名前:デフォルトの名無しさん :04/05/13 20:23
Win32APIでJPEGの表示ってサポートされていないんですか?

したらどうやってC/C++でJpegを表示するのだ。
VBでいうピクチャーボックスみたいなコントロールあるんですか?


881 名前:デフォルトの名無しさん :04/05/13 20:26
お魚は最初から切り身になっているのではありません

882 名前:デフォルトの名無しさん :04/05/13 20:31
なんかJPEG,PNGの質問って定期的にでるな。

883 名前:デフォルトの名無しさん :04/05/13 20:33
>>880
表示できます。頑張って探して下さい。

884 名前:デフォルトの名無しさん :04/05/13 20:42
ネタとしか思えんよな

885 名前:デフォルトの名無しさん :04/05/13 21:17
実は質問してるのは全部同一人物で、忘れるたびに聞きにきている。

886 名前:名無し@沢村 :04/05/13 21:28
>>880
JPEGを扱うWin32APIはないよ。
だがJPEGをビットマップに変換してやれば簡単に表示できるよ。

887 名前:880 :04/05/13 21:40
ネタでした。
多々こういう質問があることも知っている。
できないのくらい知っているわ
なんでい、お前らは。
いたすぎるんだよ、発言が。
夜まわりしているような老人の脳みそしかないんだな?藁

888 名前:デフォルトの名無しさん :04/05/13 21:43
縦横に文章作るって大変だな。

889 名前:デフォルトの名無しさん :04/05/13 21:44
BI_JPEG と BI_PNG が混乱を招いてるような気も。


890 名前:デフォルトの名無しさん :04/05/13 21:46
タ々きんたま、か。

891 名前:名無し@沢村 :04/05/13 21:51
みなみなさまがた〜教えてくださらんか〜みなみなさまがた〜♪
リッチエディットでキーワードを色づけするにはどうしたらいいの?
FindTextで選択状態にして色づけ→それを繰り返す、ってのはナシで頼むよ。
みなみなさまがた〜教えてくださらんか?

892 名前:デフォルトの名無しさん :04/05/13 23:26
IME2000のユーザ辞書に登録されている単語(?)を取得して、
IME2002及びIME2003に登録したいんですが、どーやれば良いんでしょう?
ググってみても...なーも出て来ないし..._| ̄|○

『IMEの辞書登録から抽出して、それから登録』ってのは無しの方向で...
Imm〜関数で出来るんですかね?

誰か教えてくだされ<(_ _)>

893 名前:デフォルトの名無しさん :04/05/14 00:11
>>891
write RTF by your self.

>>861

it's most easy way.

894 名前:名無し@沢村 :04/05/14 01:31
>>886
OleLoadPicture() ♪

895 名前:デフォルトの名無しさん :04/05/14 04:39
>>877
lstrcat()つかう

896 名前:デフォルトの名無しさん :04/05/14 06:18
>>894
それはWin32APIじゃなくてOLEだっての

897 名前:デフォルトの名無しさん :04/05/14 09:18
>>896
屁理屈言ってんじゃねーよ。

898 名前:デフォルトの名無しさん :04/05/14 11:27
>>897
それが屁理屈ならDirectShowを薦めてもいいのか?

899 名前:デフォルトの名無しさん :04/05/14 11:44
>>898
本当に屁理屈ばかり言う奴だな。
DirextShowとは性格が違うだろ。
OleLoadPictureはWin32 SDKに標準で入ってるから、Win32APIでいいのさ。

900 名前:デフォルトの名無しさん :04/05/14 11:58
>>899
んだね。
WindowsOSに標準で入ってるし。

901 名前:デフォルトの名無しさん :04/05/14 15:23
流れぶった切ってすまんが、
自分のIPアドレスを取得するAPIってありますかな?
あったらおしえてくだされ。

902 名前:デフォルトの名無しさん :04/05/14 16:02
GetIpAddrTable

903 名前:デフォルトの名無しさん :04/05/14 16:27
>>899,900
どういう性格をしたAPIならいいの?
DirectShowが屁理屈なのは分かってるけど、
それでもWin95(OSR2以降だったか)にも標準で入ってたはずだし、
DirectX SDKを入れなくても利用できる。
かたや、OleLoadPictureだってWin32sじゃあ動かない。

テキトーな感覚でOleLoadPictureはよし、
DShowはダメみたいに切り分けてるのが納得いかないだけだ。


904 名前:デフォルトの名無しさん :04/05/14 16:47
>かたや、OleLoadPictureだってWin32sじゃあ動かない。
必死すぎ

905 名前:デフォルトの名無しさん :04/05/14 16:55
おいおまいら、必死杉はレバノン杉に次いで伐採による絶滅が危惧されているものなので
もっとやさしく扱ってやらないとグリーンピースがRMSと一緒に縦笛吹きながら攻めてきますよ。

906 名前:デフォルトの名無しさん :04/05/14 16:59
Win32sはつらいな。せめてNT3.5とかさ。

ttp://www02.so-net.ne.jp/~okuda/tech/oleaut32/
によるとデフォ状態のWin95OSR2ぐらいではoleaut32には含まれず
olepro32に入ってるもののようだから、非常に標準的なWin32 API
であるとは言い難いのかもしれない。

907 名前:デフォルトの名無しさん :04/05/14 17:21
TAとTAを接続してデータをやり取りをするソフトを
作成しようと思い、とりあえず、ハイパーターミナル同士を
接続したのですが、文字を打っても相手側に表示されません。

なにかプロトコルなどがあるのかとおもいますが、ソフト作成
時に使用するDLL、APIなどがあれば教えていただきたいのですが
よろしくお願いします。

908 名前:デフォルトの名無しさん :04/05/14 17:26
的はずれ

909 名前:デフォルトの名無しさん :04/05/14 17:28
>>902
d

910 名前:デフォルトの名無しさん :04/05/14 18:51
>>907
PC-TA-TA-PCと言う状態?
だったら、電話線ぶった切ってクロスにして、
片方で「ATD」もう片方で「ATA」コマンドを送れば繋がらない?
アナログモデムはその方法で繋がったと思うけど。

911 名前:デフォルトの名無しさん :04/05/14 18:54
>>904
言い返せなくなると、必ず必死だなって言うよなw

だけど、明確な線引きも出来ないくせに、根拠も示さず
自分は正しいお前は正しくないって言うのはどうかしてるよ。

912 名前:デフォルトの名無しさん :04/05/14 19:01
>>910
「ATD」「ATA」で繋がってはいるのですが(CONNECT状態)
その後、アナログモデムの場合は文字を送れるのですが、
TAだと送れないという状況です。

913 名前:デフォルトの名無しさん :04/05/14 19:06
>>911
Win32sはぶっちゃけありえない

914 名前:デフォルトの名無しさん :04/05/14 19:24
>>911
そんじゃDirectXやMFCなどは専用スレがあるんで
ここではスレ違いという線引きでお願いします。

915 名前:デフォルトの名無しさん :04/05/14 19:34
>>912
あのねー、TAの通信はモデムとは違うよ。
デフォルトはたぶん同期通信だよ。
シリアルポートとの間で同期-非同期PPP変換をやってくれる。
これが確かV.120。

非同期モードにしないとモデムのように無手順でデータをやり取りすることは出来ない。
こっちはV.110だと思った。
懐かしい話だな。


916 名前:デフォルトの名無しさん :04/05/14 20:01
>>915
どもです。
同期でやるにはHDLC手順でやり取りしないと
いけないのかな・・・

なんかわけわかんないからやめよう・・・

917 名前:デフォルトの名無しさん :04/05/14 20:16
DialogにMenuを追加したいのですがどうすればいいのですか?
おせーて

918 名前:デフォルトの名無しさん :04/05/14 20:32
>>914
COMスレもありますよ。

919 名前:デフォルトの名無しさん :04/05/14 20:41
>>917
リソースエディタでメニューを作成。
ダイアログのプロパティを開き、
「メニュー」に作成したメニューのIDを選択。



920 名前:デフォルトの名無しさん :04/05/14 20:50
数当てのゲーム?っぽいの作ってるんですけど
乱数を表示する方法がわかりません。
どうすれば・・・


921 名前:デフォルトの名無しさん :04/05/14 20:59
>>919
なるほどこんなに簡単な作り方だったんですね。
分からないから..rcをテキストで開いて自分で書いてました。
今度からは上のやりかたしてみます。

922 名前:デフォルトの名無しさん :04/05/14 21:12
>>920
MessageBox("乱数")

923 名前:デフォルトの名無しさん :04/05/14 21:14
ワラタ

924 名前:デフォルトの名無しさん :04/05/14 21:32
今、BMPファイル全体のRGB値の平均を出すプログラムを書いてるんですが、
BMPファイル(24bit)で、行が変わるところに0x00が二つ入ってるものと入ってないものがあって困ってます。
二つの違いはなんなのでしょうか?どなたか教えて下さいまし。m(__)m

925 名前:デフォルトの名無しさん :04/05/14 21:34
>>924
一行のバイト数は4の倍数

926 名前:デフォルトの名無しさん :04/05/14 22:06
>>922
Σ(゚д`*;)アッ,アハァ?

927 名前:デフォルトの名無しさん :04/05/14 22:30
>>924
1ラインのサイズ(byte)は4の倍数でなければならないから
横サイズと色深度によっては末尾に余計な物がつくことがある。

928 名前:924 :04/05/14 23:08
>>925,927
ありがとうございました。そういう仕組みだったんですね〜

929 名前:デフォルトの名無しさん :04/05/15 00:13
>>920
とりあえずWin32APIというよりもお使いの処理系の標準ライブラリに
乱数を返す関数くらい入っていると思われ。。。
VisualC++ならrandとかVBならRndとか。


930 名前:デフォルトの名無しさん :04/05/15 01:36
>>903
常識的に考えたらWindows SDKの中に入ってるやつだろ。
http://www.microsoft.com/msdownload/platformsdk/sdkupdate/

よって
OleLoadPictureは○
DirectXは×
ついでにGDI+は○

931 名前:デフォルトの名無しさん :04/05/15 03:21
こんばんは
今で話題に上げっている内容とは違った質問なってしまいます.
FindFirstFile関数、FindNextFile関数を使って "D:\"以下(サブフォルダ含む)のテキスト
ファイル(*.txt)を全検索しています。
通常両関数が返す構造体 【WIN32_FIND_DATA】の中の変数 「cFileName」にはフルパス名では
ファイル名のみが返ってくると思います.

そこで、
FindFirstFile関数で取得したファイルハンドル等を使用してファイルのパス名(フォルダ名)
を簡単に取得する方法は何かないでしょうか?

ウィンドウ関連だったら
ウィンドハンドルから該当の実行ファイル名、ウィンドウテキストやウィンドウクラスを取得
する事が出来るのですが...。

どなたかご存知でしたらよろしくお願いします。
VB使っています。

932 名前:デフォルトの名無しさん :04/05/15 03:26
>FindFirstFile関数で取得したファイルハンドル
は?

933 名前:デフォルトの名無しさん :04/05/15 03:40
>>931
MSDNを何万回も読み直した方がいいよ

934 名前:デフォルトの名無しさん :04/05/15 03:44
>>931
フォルダ名だったら最初からわかってるじゃねーか

935 名前:デフォルトの名無しさん :04/05/15 03:48
すみません。
場違いな質問内容だったみたいなので出直しておきます。


936 名前:デフォルトの名無しさん :04/05/15 03:58
フォルダパスわたしてファイルみつけてそのファイルのあるフォルダパスは?

とんち?一休さーん!

937 名前:デフォルトの名無しさん :04/05/15 04:11
>>936さん
すみません。
未熟なものでイメージが全然湧かないです。
具体的な実コーディング方法または記載されているサイト等があれば教えて下さい。


938 名前:デフォルトの名無しさん :04/05/15 04:50
>>937
なあ、一セットの FindFirstFile/FindNextFile
でサブフォルダまで一気に検索してくれると思ってない?


939 名前:デフォルトの名無しさん :04/05/15 08:07
ttp://www.sm.rim.or.jp/~shishido/subdir.html
俺はここのを参考にした。

940 名前:デフォルトの名無しさん :04/05/15 08:14
>>937
好きなところ見てくれ
http://www.google.co.jp/search?q=FindFirstFile&ie=UTF-8&hl=ja&lr=lang_ja

941 名前:デフォルトの名無しさん :04/05/15 08:48
system("find dir -type d");

942 名前:デフォルトの名無しさん :04/05/15 10:45
どうもありがとうござします。
ご参考にさせて頂きます。

943 名前:デフォルトの名無しさん :04/05/15 10:51
>>942
よく見ると、不思議な敬語だね。

944 名前:デフォルトの名無しさん :04/05/15 11:58
参考にするのは自分自身、あげちゃいけないね。

945 名前:デフォルトの名無しさん :04/05/15 13:06
ご質問させてください!

946 名前:デフォルトの名無しさん :04/05/15 13:20
ご丁重に断ります!

947 名前:デフォルトの名無しさん :04/05/15 13:35
>>945
ずいぶん偉そうですね。

948 名前:デフォルトの名無しさん :04/05/15 13:43
PostMessageが失敗したときってどうすりゃいいの

949 名前:デフォルトの名無しさん :04/05/15 14:08
あきらめろ

950 名前:949 :04/05/15 14:09
誤爆スマソ

951 名前:デフォルトの名無しさん :04/05/15 14:28
質問です。
WM_CREATEメッセージのところで、
CreateWindowを用いてボタンを作ったんですが
WM_PAINTメッセージが来たところで一度BeginPaintしないと
表示されません。
また、ボタンをオーナードローで書いてみようと思い、
WM_DRAWITEMメッセージにブレイクポイントを仕掛けても
止まらないんですが、これって何がダメなんでしょうか。
教えて、エロイ人!

952 名前:951 :04/05/15 15:20
すんません・・・
激しく自己解決しました・・・・・・


953 名前:デフォルトの名無しさん :04/05/15 18:26
dword型とは?

954 名前:デフォルトの名無しさん :04/05/15 18:32
>>953
謎掛けですか?

955 名前:デフォルトの名無しさん :04/05/15 18:33
Byte型とは?
Word型とは?
DWord型とは?
QWord型とは?
TByte型とは?

956 名前:デフォルトの名無しさん :04/05/15 18:35
>>955
それらは見たことがあります。

957 名前:デフォルトの名無しさん :04/05/15 18:36
俺だって見たことがある。

958 名前:デフォルトの名無しさん :04/05/15 18:38
男とはなんぞや…

959 名前:デフォルトの名無しさん :04/05/15 18:50
ダブルワード型変数によくdwHogeって名前付いてるけど、
バイト型変数には何つけるの?byHogeとか?

960 名前:デフォルトの名無しさん :04/05/15 18:54
http://masafumi-t.cool.ne.jp/ready3.htm

961 名前:デフォルトの名無しさん :04/05/15 19:01
なるほど、変換ミスを放置するような香具師にはハンガリアン記法も必要だと言うことですね。

962 名前:デフォルトの名無しさん :04/05/15 19:37
リソースからBMP表示できるようになったんだけど、
2種類以上のBMPが表示できまへん。
教えてかっこいい人


963 名前:デフォルトの名無しさん :04/05/15 19:46
MessageBox等のOKやキャンセル等のプッシュボタンを
旧来のではなくてXP風のマウスのポインタを合わせるとボタンの周囲がオレンジで
ふちどられるようにするには通常のMessageBox()では実現可能なのでしょうか?

964 名前:デフォルトの名無しさん :04/05/15 22:28
ファイルをバイナリモードで開く方法を教えて下さい

965 名前:デフォルトの名無しさん :04/05/15 22:31
fopen("filename","b");

966 名前:デフォルトの名無しさん :04/05/15 23:12
>>965
いくらなんでもそれはないだろう……

967 名前:デフォルトの名無しさん :04/05/15 23:40
SDKでfopenは互換性があるのですか?

968 名前:デフォルトの名無しさん :04/05/15 23:43
>>964
Windowsには「バイナリモード」などというものは存在しません。
フツーにCreateFileで開いてください。

テキストストリームの行区切りが\nであると定めているのは、あくまで
「C言語の」仕様に過ぎない。それに合わせるために、MS-DOSだのWindowsだの
MacだののCのランタイムでは、わざわざテキストモードだのバイナリモード
なんてのを用意して、改行を\n一文字に見せてるワケ。


969 名前:デフォルトの名無しさん :04/05/15 23:49
\r\n・・・Win
\n・・・Unix
\r・・・Mac
だっけ?
元々印刷の時に復帰、改行の問題があったんだよ。
改行だけでよかったのが復帰がないと間に合わないってだけで作られた過去の遺産。


970 名前:デフォルトの名無しさん :04/05/15 23:58
>>969
OSの改行の扱いの違いと、言語仕様の違いはまた別の話だな。
Cがテキストストリームをタイプライタ式で行区切りを\nと定めてるのは、
単にUNIXがそうだから、と言ってしまえばそれまでだが、
むしろ昔の固定長レコードのデータセットが主流だった計算機への反逆じゃ
ないんかと。FORTRANとかCOBOLとかの入出力仕様はモロにその頃のアレだよね。
そういう時代では、そういう腐った入出力レイヤを抽象化・単純化して
扱いたいという発想は極めて自然なものだったんだろうと思う。
後は、計算機で扱う主要なデータがテキストであったとか、むしろテキストに
したかったとか。

971 名前:デフォルトの名無しさん :04/05/16 00:03
他にも過去のしがらみに縛られてるのがたくさんあるからな。
多少互換性無視してでも断ち切ってもらいたいよ。

972 名前:デフォルトの名無しさん :04/05/16 00:13
>>967
言ってる意味がよくわからんが
いわゆるSDKスタイルで書いてる、WinMain()ではじまるような
ウィンドウアプリケーションでfopen()を使えるんですか?という
意味なら、勿論使えるよ。ただし、Cランタイムをリンクすれば、
という条件つきだが、まあ普通のコンパイラなら何もしなければ
デフォでリンクする。

ただし、あなたが書こうとしてるのがDLLやインプロセスCOMサーバ
の類なら、使えないことはないけど、いろいろ問題があるからlibcに
依存するのはなるべく避けたほうがいい。

973 名前:デフォルトの名無しさん :04/05/16 00:16
>>972
というか、ここはCスレじゃないからそもそも使えない可能性が・・・

974 名前:デフォルトの名無しさん :04/05/16 01:21
>>964
Open "FileName" For Binary As #1


975 名前:963 :04/05/16 01:34
すいません自己解決いたしました_| ̄|○

976 名前:デフォルトの名無しさん :04/05/16 08:19
>>972
ということはWinアプリケーションは
stdioのようなCライブラリもランタイム結合なんですか?
それとも実行ファイルの段階でCライブラリは静的結合されているんですか

977 名前:デフォルトの名無しさん :04/05/16 08:43
>>976
そんなもん処理系次第。VC++なんかはどちらも選べる。

978 名前:デフォルトの名無しさん :04/05/16 08:48
>>977
レスありがとうございます。
ということは
実行ファイル+DLL(Cランタイムライブラリ・WINAPI)
実行ファイル(Cライブラリ)+DLL(WINAPI)
のどちらになるか、またはオプションになるかは
処理系依存ということですね

979 名前:デフォルトの名無しさん :04/05/16 09:00
>>978
「Cランタイム」つーときの「ランタイム」は、別にDLLとは関係のない
概念で、ちょと意味が違う。
言語サポートのために実行時に呼ばれるライブラリ関数群という程度の意味で、
DLLとして実装されてるかスタティックリンクライブラリとして実装されてる
かは問題ではない。

980 名前:デフォルトの名無しさん :04/05/16 09:13
>>979
2chの教えてレスで
ここまで丁寧にレスをもらったのは始めてです
すっきりしました!

981 名前:デフォルトの名無しさん :04/05/16 10:49
またまた質問です
コンパイラはMingwなんですが、MingwがリンクするCランタイムライブラリは
msvcrtとlibcのどちらなんでしょうか?

982 名前:981 :04/05/16 10:50
すいませんMingwがリンクするじゃなくて
MingwでコンパイルしたWinアプリがの間違いでした

983 名前:981 :04/05/16 10:55
自分で行ってて訳分からないや・・orz
つまり、動的にリンクするライブラリが
コンパイラ付属のlibcとmsvcrtの2つあるのが、なんか?なんです。。。

984 名前:デフォルトの名無しさん :04/05/16 10:58
Mingwで作成したバイナリをDependency Walkerで見れば一目瞭然。

985 名前:デフォルトの名無しさん :04/05/16 11:25
処理系依存な質問ですが
Mingwは独自LIBCをいつ使うんですか?
静的リンクの時ですか

986 名前:デフォルトの名無しさん :04/05/16 11:35
処理系依存だと分かってるなら該当スレで聞け阿呆

987 名前: ◆Manna2uCLg :04/05/16 12:55
こっそり次スレ立て......

988 名前: ◆Manna2uCLg :04/05/16 13:11
……規制中だったょ…
だれかよろしこ…

ちなみに、当方 plala でつ…

989 名前:デフォルトの名無しさん :04/05/16 13:38
MinGW は常に msvcrt をダイナミックリンクで使う。
スタティックリンクはできない。独自 libc を持つ予定は
いまのところない。


990 名前:デフォルトの名無しさん :04/05/16 13:46
>>989
gooooooooooooooooooood job!!!!!!!!!!!!

991 名前:デフォルトの名無しさん :04/05/16 15:59
>>989
オプションで crt, VC6, VC7 の DLL にも切りかえれるけどな。

992 名前:デフォルトの名無しさん :04/05/16 16:39
>>955
byte型は分かります
dbyteはdouble byte型ですよね?
dwordはdouble wordで
word型とはナンですか?

993 名前:デフォルトの名無しさん :04/05/16 16:48
>>992
(゚Д゚≡゚Д゚) dbyteはどこからキタ

word は byte 2ヶ

994 名前:デフォルトの名無しさん :04/05/16 17:12
#define DBYTE WORD



995 名前:デフォルトの名無しさん :04/05/16 17:22
case sensitiveな言語の話をしているときに混乱するようなこと書くなよな。

996 名前:デフォルトの名無しさん :04/05/16 17:24
>>993
dbyteなんて書いてありませんでした
有難うございます

997 名前:デフォルトの名無しさん :04/05/16 17:46
DWORD = unsigned long
desuka?

998 名前:デフォルトの名無しさん :04/05/16 17:47
環境依存

999 名前:デフォルトの名無しさん :04/05/16 17:56
Win32API質問箱 Build19
http://pc5.2ch.net/test/read.cgi/tech/1084697545/

1000 名前:デフォルトの名無しさん :04/05/16 17:58
↓1001


■過去ログ置き場に戻る■ 1- 前250 次250 最新50
DAT2HTML 0.33f Converted.