■過去ログ置き場に戻る■
1-
前250
次250
最新50
[memo]
"9999999999_00.html#R20"
という感じで、URLの最後に "#R
レスNo
" を追加すると幸せになれます。
Win32API質問箱 Build14
751
名前:
デフォルトの名無しさん
:03/11/14 22:00
「言語はC言語です。」
752
名前:
デフォルトの名無しさん
:03/11/14 22:01
mciSendString()でmidiファイルを演奏中にsndPlaySound()でwavを鳴らそうとしても鳴りません。
どのようにすればmidiを演奏したままwavを鳴らせるでしょうか?
753
名前:
730
:03/11/14 22:07
成功か失敗かは兎も角、事例を知っているからこそ書いたわけだが。
そうか、失敗したのか(謎
754
名前:
デフォルトの名無しさん
:03/11/14 22:10
マルチスレッドで、ソケット通信してるスレッドが一つあります。
そのスレッドがWSACleaupする前に、呼び出し元を終了させちゃマズイんでしょうか?
それとも自動的にDLLを開放してくれるんでしょうか?
(DLLの初期化と開放ってのも良くわかってないんですが……)
755
名前:
747
:03/11/14 22:17
全くお前らつかえねー奴らだな。
自己解決したよ。でも教えない。
所詮POSIX互換なんだから
Cでも使えるやつがあるだろ。
これだからwinなんて嫌なんだ。
756
名前:
デフォルトの名無しさん
:03/11/14 22:18
まぁ、CでBeginThreadを使おうとしていないことを祈ってやろう。
757
名前:
デフォルトの名無しさん
:03/11/14 22:51
CreateThreadと勘違いしてない?
758
名前:
745
:03/11/14 23:37
>>746
ありがとう。EnumProcessesを調べてみます。
何もしていないときは、スクリーンセーバを表示させておいて、
デジタル入力とか通信で計測開始されたら、
スクリーンセーバを消去しようと思っていたわけで。
759
名前:
デフォルトの名無しさん
:03/11/14 23:47
>>757
ワロタ
760
名前:
デフォルトの名無しさん
:03/11/15 00:23
初心者のためのwinsockの勉強サイト教えてください。
winsock2が使えるようなところがいいです。
761
名前:
デフォルトの名無しさん
:03/11/15 00:28
>>760
店頭で本を立ち読みしてよいものを選らべ
といいたいけど、
>>760
が何処までできるか知らないし。
762
名前:
747
:03/11/15 00:28
>まぁ、CでBeginThreadを使おうとしていないことを祈ってやろう。
しょうがないな。このスレにいる知ったか厨に教えてやるよ。
_beginthread
感謝しな。
763
名前:
デフォルトの名無しさん
:03/11/15 00:33
>>761
ネットワークとかp2pとか使う側としての知識はいくらかありますが、
どう動いているのかほとんど分からない状態です。
サーバーとクライアントで何かやり取りするんですよね?知ってるのはそこまで。
764
名前:
デフォルトの名無しさん
:03/11/15 00:37
>>763
漏れよりはありそうだ。
C言語入門サイト>Win32API入門サイト>Winsock2とどんどん減ってるから探しにくいね
765
名前:
761
:03/11/15 00:54
>>764
もしかしてwinsockより主流なライブラリとかあるんですかね?
winsockも名前を知ってるだけなんですが・・・
766
名前:
デフォルトの名無しさん
:03/11/15 01:00
>>765
誤解を与えたならごめん。
windowsでのネットワークライブラリはwinsockが一番でかいと思うよ。
んで、漏れはWin32APIが解らなかったから Winsock2 のソースを見て諦めた香具師です
winsock2 入門でぐぐってみた?
767
名前:
デフォルトの名無しさん
:03/11/15 01:01
winsock は Win32Api とは違うのかな?とも思ってみた
768
名前:
デフォルトの名無しさん
:03/11/15 01:05
WinSock2.0プログラミング。
769
名前:
デフォルトの名無しさん
:03/11/15 01:06
>>768
本ではなくサイトを聞いてるんだよ。
ちなみに漏れはソレを読んでWIN32APIが解らずリタイヤ
770
名前:
デフォルトの名無しさん
:03/11/15 01:10
>>769
http://www.kt.rim.or.jp/~ksk/wskfaq-ja/
771
名前:
デフォルトの名無しさん
:03/11/15 01:12
おぉすごい
・・・
って思ったらところどころ英語じゃん
大事なところは英語・・・アーゴの法則か?
772
名前:
デフォルトの名無しさん
:03/11/15 01:15
つか、本はダメとか英語はダメとか本当に勉強する気あんのか
773
名前:
デフォルトの名無しさん
:03/11/15 01:16
>>772
漏れはサイト教えてっていった人とは別の人だよ
in 771
774
名前:
デフォルトの名無しさん
:03/11/15 01:18
元質問者がすでにいないんじゃ?だったらやめるべ。
775
名前:
761
:03/11/15 01:19
>>766
うーむ、やっぱり主流なんですか。ググると本がいっぱい出るんですがあんましお金がないです。
>>770
ありがとうございます。
776
名前:
デフォルトの名無しさん
:03/11/15 03:10
例えばtxtファイルをCreateFileで開こうとして
ERROR_SHARING_VIOLATIONがでて開けなかったとき
誰が共有ロックしているか、ユーザ名やコンピュータ名を調べることはできるのでしょうか?
Excelなんかだと誰がロックしているか表示されますが特殊?
777
名前:
デフォルトの名無しさん
:03/11/15 03:32
>>776
特殊はありえない
ファイルにファイル情報があるわけだから、そこから取り出してるんだと思う
と、勝手な想像すまそ
778
名前:
776
:03/11/15 03:42
>>777
レスどうもです。
そう思うんですが、それがみあたらないんですよ(TT
ファイル情報取得系のAPIを探してみたんですが・・・
で、Excelはファイル開いたときにファイル自身に情報保存したりしてるのかなぁ
なんて考えてたもので。
あ〜あ、ファイルそのまま開かずにロックファイルでも作って開くアプリ
作るしかないかなぁ・・・
仕事忘れてもう寝ます(泣
779
名前:
デフォルトの名無しさん
:03/11/15 03:44
>>778
なるほど、ファイルに個人情報を組み込むって手かぁ・・・
M$とか企業アプリならやりそうですね・・・
でもユーザーが違って開けないって言うのは、ファイルシステムの概念ではないですよね?
780
名前:
デフォルトの名無しさん
:03/11/15 03:51
Excelはファイル開いた時に隠しファイル作ってますよ
781
名前:
デフォルトの名無しさん
:03/11/15 04:41
ファイルを開いているのはプロセスなわけだが。
782
名前:
デフォルトの名無しさん
:03/11/15 07:29
これのことでしょ?
ttp://www.atmarkit.co.jp/fwin2k/win2ktips/083opened_net_file/083opened_net_file.html
どうAPIを使えば実現できるのかはわからないけど、そういうツールはあった。
ttp://www.dr-hoiby.com/WhoLockMe/index.html
783
名前:
デフォルトの名無しさん
:03/11/15 07:36
>>782
上の記事を見た限り
CreateHandleだっけ?(ファイル操作まだやってないので。
アレの引数で指定すれば共有して開けないね
784
名前:
デフォルトの名無しさん
:03/11/15 08:33
>>782
そのファイルを開いているプロセスがローカルなのかリモートなのか
判断して処理を切り替えてやらんといかん分けだな。。。
そんなもんウイソの標準のコマンドかツールで用意していてホスイぞ。
つか、漏れが知らないだけ?
785
名前:
デフォルトの名無しさん
:03/11/15 08:56
>>745
ttp://pc2.2ch.net/tech/kako/1056/10560/1056033645.html
の233あたりから読みたまえ。
786
名前:
745
:03/11/15 10:23
>>785
レスありがとう。
スクリーンセーバ設定を無効にしたりとか、
スクリーンセーバを表示させないのではなく、
スクリーンセーバが表示されていたら、消去したいのだが。
SystemParametersInfo(SPI_GETSCREENSAVERRUNNING)
keybd_event(VK_SHIFT)
か
MessageBox を使って、スクリーンセーバーの設定を切ってくださいとユーザーに頼む
が使えそうな気がするので、これで試してみます。
"WindowsScreenSaverClass"クラスのスクリーンセーバだったら、
9X, 2000の場合、
FindWindow("WindowsScreenSaverClass")
NT4の場合、
OpenDesktop("screen-saver")
と思っていたわけで、
XPでは特別な方法があるのではと思い質問しました。
787
名前:
デフォルトの名無しさん
:03/11/15 14:22
>>776
Wordの場合だと、隠しファイルが作られて
その中にユーザ名が書き込まれている。
Excelでもたぶん同様。
その隠しファイルからユーザ名を拾ってくればいいのでは?
788
名前:
デフォルトの名無しさん
:03/11/15 16:40
ウインドウラップライブラリを作ろうと思っています。
Java風にActionListenerを実装して各オブジェクトでイベントを受けとるようにするか、
それともメッセージが来たら自分の仮想関数を呼び出すようにするか迷っています。
どっちがいいでしょうか?
789
名前:
776
:03/11/15 17:12
>>780
>>787
情報どうもです。
やはりそうでしたか、ちなみにどこに隠しファイル作っているかご存じでしょうか?
>>782
TIPSの方は知ってたんですが、全員に管理者権限渡すわけにもいかず・・・
ツールはまさにこれか!!と思ったのですが残念ながらだめでした。
ロックしていることはわかるのですがそれが誰かはわからないようです。
クライアントでサーバのxlsをロック。
クライアント側でツールを使ってチェック
Domain User ともに自分自身を示す。
サーバ側でツールを使ってチェック
Domain=NT AUTHORITY
User=SYSTEM
となってしまい、ほかのPCからでは誰がロックしているかわからない状態です。
現状ファイルオープン時にロックファイルを作りそれをチェックするような
ツールを作るしかなさそうです・・・
790
名前:
デフォルトの名無しさん
:03/11/15 17:29
>>788
先ず第1にATL/WTLを使うことを考える。
それがダメなら.NETのように、先ず自分の仮想メソッドを呼び出し、そのメソッド内でリスナーにイベントを飛ばす。
>>789
同じフォルダに無いか?俺はよく見かけるが。
791
名前:
788
:03/11/15 17:36
>>790
なるほど。両方とは思いつきませんでした。どうもありがとうございました。
792
名前:
デフォルトの名無しさん
:03/11/15 19:27
MSDNのWindows Shell Namespaceの説明を読んでいるんですが、
PIDLというのは{0x00,0x00}でターミネートするってことは中身Unicode
ってことですよね。
これはWin9x,NT系のどちらでも同じですか?
793
名前:
デフォルトの名無しさん
:03/11/15 19:34
ちょっと質問させてください。
自プログラムからファイルをドラッグ&ドロップしたときに、
自プログラムがドロップ先のフォルダを知るのはどのようにすればよいでしょうか?(SDKで)
何故このようなことがしたいのかと言うと、
ある暗号化されたファイルをドラッグ&ドロップで移動したら、
復号化してドロップ先に出力するようにしたいんです。
794
名前:
デフォルトの名無しさん
:03/11/15 19:37
>>792
> PIDLというのは{0x00,0x00}でターミネートするってことは中身Unicodeってことですよね。
飛躍しすぎ。
>>793
ドロップ先のフォルダを知る事は出来ない(なにせドロップ先がエクスプローラのフォルダビューであるかどうかすら分からないのだから)
どこかに複合化して、それをドラッグしたことにすれば良い。
795
名前:
デフォルトの名無しさん
:03/11/15 19:37
>>784
> そんなもんウイソの標準のコマンドかツールで用意していてホスイぞ。
> つか、漏れが知らないだけ?
うん。あんたが知らないだけ。
796
名前:
793
:03/11/15 19:44
>>794
そうですか…。
OLEとか使えばなんとかなるのかもしれないと思っていたのですが、残念です。
WinZIPとかWinRARとかみたいにしたかったんですが、
あれもいったんどこかに一時的に展開してるっぽいですね。
そのわりにどのドライブに展開しても速度が変わらないような気がするのですが…。
797
名前:
デフォルトの名無しさん
:03/11/15 20:22
VC6でGDIリークまたはリソースリークを検出する関数ってありますか??
crtdbg.hにはそういう記述はみあたらなかったので。
798
名前:
デフォルトの名無しさん
:03/11/15 20:39
>>797
いや、君の調べが足りない。
ctrdbgをもっと解析しる。
799
名前:
デフォルトの名無しさん
:03/11/15 20:51
>>794
すると、PIDLの中身ってどういうものが格納されているのでしょう。
800
名前:
デフォルトの名無しさん
:03/11/15 21:00
>>799
PIDLで検索してでないの?
うにこーどは0xffefだったはず
801
名前:
デフォルトの名無しさん
:03/11/15 22:13
shlobj.hにSHGetFolderLocation()が無いのですが、
これは古すぎですか?
802
名前:
べ
:03/11/15 22:14
質問! 2重起動防止で
HANDLE hMutex;
hMutex = CreateMutex(NULL, TRUE, "UniqueName");
if(!hMutex)
return FALSE;
if(GetLastError() == ERROR_ALREADY_EXISTS) {
return FALSE;
}
が正しくて
HANDLE hMutex;
hMutex = OpenMutex(MUTEX_ALL_ACCESS, FALSE, "UniqueName");
if(hMutex)
return FALSE;
CreateMutex(NULL, TRUE, "UniqueName");
これは理論的に誤りとあるんですが、
下のは何所に割り込める余地があるのか教えてください!
803
名前:
デフォルトの名無しさん
:03/11/15 22:20
>>802
openが失敗してcreateする間
804
名前:
デフォルトの名無しさん
:03/11/15 22:22
>>802
プロセス1が、OpenMutex() して CreateMutex() する前に、プロセス2が割り込んで OpenMutex() したら両方のプロセスの OpenMutex() が失敗するから、両方とも起動してしまう。
基本だと思うが...。
805
名前:
べ
:03/11/15 22:24
ああ、そおゆうことか。
806
名前:
デフォルトの名無しさん
:03/11/15 22:36
CreateMutexを使った2重起動の防止と
FindWindowでやった2重起動の防止、どっちが推奨なんでしょうか?
807
名前:
デフォルトの名無しさん
:03/11/15 22:47
>>789
WhoLockMe はロックしてるユーザIDが出てるが。。。
808
名前:
デフォルトの名無しさん
:03/11/15 22:52
>>806
CreateMutex だと思う。
FindWindows だと両方とも2重起動だと思って終了する可能性があるような気がする。
809
名前:
デフォルトの名無しさん
:03/11/15 22:58
>>808
逆じゃねぇのか?
FindWindowsで確認してからウィンドウ作るまで時間がかかる。
810
名前:
デフォルトの名無しさん
:03/11/15 23:02
>>809
逆かも知れん。(つーか、作り方次第。)
まあ、結局ウィンドの作成と FindWindow でチェックする間の隙間があるから、ダメってことだ。
811
名前:
807
:03/11/15 23:12
他のPCからオープンされているとSystemプロセスのユーザIDが表示されるのね・・・
812
名前:
797
:03/11/15 23:16
>798
僕の環境に"ctrdbg"はなかったです。
gdiで検索しても出ないし、resouceでも出ませんでした。
ヒントでも良いのでご存知ありませんか?
813
名前:
デフォルトの名無しさん
:03/11/15 23:23
>>808-810
レスありがとうございます。言われて自作の手持ちツールを
連打して起動したら見事に複数起動してくれました。
全部作り直します・・・。
814
名前:
デフォルトの名無しさん
:03/11/15 23:35
複数起動すると何かマズイことが起こるツールなんか?
複数起動しても問題無いツールなら、複数起動できる方が便利だが。
815
名前:
801
:03/11/15 23:41
馬鹿なこと言ってたらすみません。
プロトタイプ宣言を手書きしてみたところ、当然のようにリンクエラーになりました。
Systemフォルダのshell32.dllの中には確かにSHGetFolderLocation
というシンボルがあります。しかしVC98/Libのshell32.libの中を検索すると
こっちにはシンボルがありません。
.libの方を更新しなければならないと思うのですが、どうすればいいのでしょう?
使っているVC++が大昔(3年近く前)に購入したパッケージなのですが、
サービスパックをインストールしてみても変化ないのです。
816
名前:
デフォルトの名無しさん
:03/11/15 23:45
>>815
・付属のツールでインポートライブラリを作る(VC++もってないからやり方はしらん、BCBはimplibでできる)
・最新のPlatformSDKからインポートライブラリを持ってくる(最新のヘッダも入ってるのでこっちをおすすめ)
817
名前:
デフォルトの名無しさん
:03/11/15 23:45
キーワードはPlatformSDK
…でいいんだったかなw
818
名前:
801
:03/11/15 23:59
>>816
,817
ありがとうございます。
現在ダウンロード中です。
ツールの方はドキュメント見ないとわかりませんが、
MinGWのimpdef.exeみたいなもんでしょうか。
819
名前:
デフォルトの名無しさん
:03/11/16 01:11
>>814
ゴミレスやめろ
820
名前:
デフォルトの名無しさん
:03/11/16 01:21
下記のように矩形を設定してから DrawText しても、文字列が半角英数がひたすら連続するものだと右端で折り返してくれずにそのままどこまでも逝ってしまいます(DT_NOCLIPつけて確認しました)
。
これを何とか、指定した幅に収まるようにできないでしょうか。高さはDT_CALCRECTして再設定してあげればいいんですが、幅は固定じゃなきゃいけない仕様なのでとても困り果てています。
// *** 下のソースだと折り返してくれません ***//
RECT r;
SetRect(&r, 0, 0, 50, 50);
TCHAR c[] = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa";
DrawText(hdc, c, lstrlen(c), &r, DT_LEFT | DT_WORDBREAK);
821
名前:
デフォルトの名無しさん
:03/11/16 02:12
>>797
前にこのスレで同じ質問したけど、なかなか難しいっぽい。
9xで動く、それ用のツールがある模様。
結局タスクマネージャでGDIオブジェクト数とか観察して、「んー増えてるなー。
リークしてるなー?」って感じで検出してるけどね(;´Д`)
>>819
DT_EDITCONTROL?
822
名前:
820
:03/11/16 02:30
>>821
ありがとう、それで無事できました。
見おとしてたー
823
名前:
デフォルトの名無しさん
:03/11/16 04:41
>>819
ゴミレスかな?
824
名前:
デフォルトの名無しさん
:03/11/16 07:55
>>823
ゴミレスだろ。
825
名前:
デフォルトの名無しさん
:03/11/16 11:25
>>824
いや、ゴミスレだろ。
826
名前:
デフォルトの名無しさん
:03/11/16 11:26
>>825
いや、ゴミ板だろ。
827
名前:
デフォルトの名無しさん
:03/11/16 11:31
ゴミサイト
828
名前:
デフォルトの名無しさん
:03/11/16 11:34
ゴミネット
829
名前:
デフォルトの名無しさん
:03/11/16 11:36
ここは、ファミレスではありませんよー。
830
名前:
デフォルトの名無しさん
:03/11/16 11:42
ファンレス
831
名前:
デフォルトの名無しさん
:03/11/16 11:46
ダイアログボックスだけのプログラム作ろうと思ってます。
ウィンドウクラス定義したダイアログボックスだけのプログラムです。
だけどリソースで定義した PUSHBUTTON(アイコンボタン) にアイコンをロードするときに
WM_CREATEで拾うと PUSHBUTTON が定義されていないせいか、アイコンをセットできません。
このボタンを押すと自身にアイコンセットのメッセージを送る用に作るとうまく行きました。
あと、通常のウィンドウで CreateWindow でボタンを作ってそのボタンにアイコンセットのメッセージを送ってもうまく行きました。
でも、作りたいのは
〔ダイアログボックスをリソースで定義〕〔ウィンドウクラスをプログラムで登録〕コレを利用してプログラムを起動したときにボタンにアイコンをセットするプログラムが作りたいのですが
どのようにすれば解決するでしょうか?ヨロシクお願いします
832
名前:
デフォルトの名無しさん
:03/11/16 12:09
WM_INIT_DIALOG(だっけ?)
833
名前:
デフォルトの名無しさん
:03/11/16 12:16
>>832
独自のウィンドウプロシージャ・ウィンドウクラスを使用しているせいか WM_INITDIALOG が送られてきません><;
(今メッセージボックスが出るか確認しました。
ちなみにウィンドウクラスは
winc.style = CS_HREDRAW | CS_VREDRAW; // サイズ変更されたら再描画
winc.lpfnWndProc = WndProc; // ウィンドウプロシージャアドレス
winc.cbClsExtra = 0;
winc.cbWndExtra = DLGWINDOWEXTRA; //ダイアログアプリケーション必須です
winc.hInstance = hInstance; // hInstance
winc.hIcon = LoadIcon(hInstance , AppName); // アイコン
winc.hCursor = LoadCursor(NULL , IDC_ARROW); // カーソル
winc.hbrBackground = (HBRUSH) (COLOR_BTNFACE + 1); // 背景
winc.lpszMenuName = NULL; // めミューなし
winc.lpszClassName = AppName; // クラス名
です
834
名前:
デフォルトの名無しさん
:03/11/16 12:21
お手上げでしょうか?つдT
835
名前:
814
:03/11/16 12:29
>>819
そうか・・・
正直スマンカッタ
カチャ
;y=ー( ゚д゚)・∵. ターン
\/| y |)
836
名前:
デフォルトの名無しさん
:03/11/16 12:30
解決法も見つからず・・・かといって知識があれば質問してないしどしよ
837
名前:
デフォルトの名無しさん
:03/11/16 12:30
下げるからダメなのか!?age
838
名前:
デフォルトの名無しさん
:03/11/16 12:56
寝てるのかなぁ?・・・
やすみ〜
839
名前:
デフォルトの名無しさん
:03/11/16 13:03
出来ました。
ウィンドウクラスを使わないでやったら動きました。そーす汚してすみませんでした
840
名前:
デフォルトの名無しさん
:03/11/16 17:15
DrawTextで DT_NOFULLWIDTHCHARBREAK を描画オプションで指定すると、
「'DT_NOFULLWIDTHCHARBREAK' : 定義されていない識別子です。」と言われてコンパイルできません。
↓にはちゃんと書いてあるんですが。
http://www.microsoft.com/japan/developer/library/jpgdipf/_win32_drawtext.htm
必要なヘッダとかあるんでしょうか?
Win2k + VC++6.0sp5 で開発してます。
841
名前:
デフォルトの名無しさん
:03/11/16 17:17
>>840
Windows98/200以上専用です。
適切なOSバージョン定数を定義してください。
842
名前:
デフォルトの名無しさん
:03/11/16 17:23
>>841
2kって言ってるよ
843
名前:
デフォルトの名無しさん
:03/11/16 17:24
>>842
「定数を定義してください」
844
名前:
デフォルトの名無しさん
:03/11/16 17:24
DT_WORDBREAKを入れろと書いてある
845
名前:
デフォルトの名無しさん
:03/11/16 17:25
定義しろなら必要なヘッダが読み込まれてない。
846
名前:
840
:03/11/16 17:36
ありがとうございます。書き方が悪くてすみません。
環境は Windows 2000 で VisualC++ の SP5 です。
DT_WORDBREAK も一緒に指定してあげてますが、こちらは問題ないです。
必要なヘッダファイルが何なのか、ご存知なら教えていただけませんか?
847
名前:
デフォルトの名無しさん
:03/11/16 17:38
もしかして
>>817
と同じパターンか
848
名前:
デフォルトの名無しさん
:03/11/16 17:42
>>846
>ヘッダー:Winuser.h で宣言、Windows.h をインクルード
>インポートライブラリ:User32.lib を使用
この辺は大丈夫?
849
名前:
デフォルトの名無しさん
:03/11/16 17:47
そうだね、たぶん817と同じパターンだとおもうよ。
includeディレクトリをgrepしてみたけど、PlatformSDKの方に
しか定義されてなかった。
850
名前:
840 == 846
:03/11/16 17:49
>>847
, 847
ありがとうございます。
Winuser.h, Windows.h どっちも include してますが相変わらずです。
User32.lib もリンカに設定されています。
とりあえず
http://msdn.microsoft.com/archive/default.asp?url=/archive/en-us/dx8_vb/directx_vb/graphics_enum_d3dxvb_9dcy.asp
にあった定数「 DT_NOFULLWIDTHCHARBREAK = 524288 (&H80000) 」を無理やりはめてみました。
でも効果あるのかないのかよくわからない・・・
851
名前:
デフォルトの名無しさん
:03/11/16 17:57
>>850
いや、最新のPlatformSDKインストールしろよ
852
名前:
797
:03/11/16 18:06
>821
情報Thx!
今一番危惧していることは、HDCがはじめから持ってるHBITMAPのリークです。
デバッグしたアプリを閉じてもリソースが起動前よりも減るばっかりでかなり恐ろしい感じです。
何か安心する方法が無いかもうちょっと探してみます。
853
名前:
840 == 846 == 850
:03/11/16 18:28
>>849
, 851
ありがとう、今やっとダウンロード終わってインストールしました。
無事できたよう!(´∀`)
854
名前:
デフォルトの名無しさん
:03/11/16 18:31
>>852
http://msdn.microsoft.com/msdnmag/issues/01/03/leaks/default.aspx
855
名前:
デフォルトの名無しさん
:03/11/16 22:07
ちょいと質問。
3つの数値をCOLORREF型にしてくれるマクロがRGB。
じゃあ、逆にCOLORREFの値を3つにわけてくれるマクロって無いの?
856
名前:
デフォルトの名無しさん
:03/11/16 22:10
RGBマクロの説明のとこに書いてるだろ。
857
名前:
デフォルトの名無しさん
:03/11/16 22:12
>>855
COLORREFの説明のとこに書いてるだろ。ボケ。
858
名前:
デフォルトの名無しさん
:03/11/16 22:19
>>831
WM_SHOWWINDOWは?
859
名前:
デフォルトの名無しさん
:03/11/16 22:22
>>858
プログラムが終了するんですよね。
ちなみに今は
winmain()
{
Dialogbox(hInst,"TestDialog",0,(DLGPROC)WndProc);
return 0;
}
にて動いています。
で動かなかった理由はリソース定義部のダイアログボックスで
CLASS "〜"
を入れていたからでした。(この時はもうウィンドウクラスを消してしまった頃です
860
名前:
855
:03/11/16 22:24
失礼つかまつりました。
861
名前:
デフォルトの名無しさん
:03/11/16 22:26
>>860
わかってよかったね
862
名前:
デフォルトの名無しさん
:03/11/16 22:27
ところで、存在がわからないものについてはどう質問すればいいのかなぁ?
いつも質問の内容は普通にわかるだろ見たいなのがあるけどさぁ・・・
自分も解らないものばかりで、質問したらシカトとかいやだし。
存在するかどうかわからない関数についてはどういうふうに質問すればいいのでしょうか?
863
名前:
デフォルトの名無しさん
:03/11/16 22:48
欲しい機能を「人にわかるように」説明するしかあるまい。
864
名前:
デフォルトの名無しさん
:03/11/16 22:48
こんなことできないかな〜
865
名前:
デフォルトの名無しさん
:03/11/16 22:49
目的志向で聞く
当然ながら凄まじい煽りの嵐を呼ぶことになるが
そこでくじける人は有料のサポートを買いなさい
866
名前:
デフォルトの名無しさん
:03/11/16 22:50
>>863
ソレがもし atoi とかでも?そういう人なら嬉しいんだけど。人間違うから叩かれるよねぇ?・・・
867
名前:
デフォルトの名無しさん
:03/11/16 22:56
まずは「Win32PAIに含まれるような物かどうか」くらい考えることはして欲しいもんだが。
868
名前:
デフォルトの名無しさん
:03/11/16 23:06
>>867
たとえ悪くてすみませんでした。
ところで
>>831
見たいな質問は許されますか?
869
名前:
デフォルトの名無しさん
:03/11/16 23:19
>>855
COLORREF自体が単なるDWORDなので、
union{
COLORREF colorref;
R,G,B:BYTE;
}
こんな共用体を使えばわざわざ変換する必要もなくなる。
870
名前:
デフォルトの名無しさん
:03/11/17 00:21
>>867
狙ってないだろうが、激しくワラタ
871
名前:
デフォルトの名無しさん
:03/11/17 00:33
>>869
アラインをバイト単位にするオプション忘れんなよ。
872
名前:
デフォルトの名無しさん
:03/11/17 00:59
普通のGDI APIで GradientFill() 使わずに、長方形をグラデーションで
塗りつぶします。
少なくとも CreatePen() をたくさん呼び出す場合よりは ExtTextOut() の方が
速かったんだけど、それより速い方法ってあり?
873
名前:
デフォルトの名無しさん
:03/11/17 01:05
DDSURFACEDESCとかのDESCってなんて訳してます?
記述子?なんかしっくりこない。
874
名前:
デフォルトの名無しさん
:03/11/17 09:44
>>869
GetRValue、GetGValue、GetBValueを使おうぜ。
875
名前:
デフォルトの名無しさん
:03/11/17 09:47
それってダサくない?
876
名前:
デフォルトの名無しさん
:03/11/17 14:36
rebarとかに乗せずに普通にツールバーを作ると
メニューやキャプションの間に境界ができますよね?
確かあの境界を作らないようにする方法があったと思うのですが思い出せません
どなたかご存知ありませんか?
877
名前:
876
:03/11/17 14:41
ageます
878
名前:
デフォルトの名無しさん
:03/11/17 18:39
>>875
なら自分でマクロつくれ
いちいち無駄なことに反応すな
879
名前:
デフォルトの名無しさん
:03/11/17 19:52
お、釣れた釣れた
880
名前:
デフォルトの名無しさん
:03/11/17 20:16
根拠の薄い煽り、放置不能、、釣りと称した言い訳
881
名前:
デフォルトの名無しさん
:03/11/17 20:18
質問する人は取とってほしいね
882
名前:
デフォルトの名無しさん
:03/11/17 21:04
モーダルダイアログでアイドル処理するにはどうすればいいですか?
883
名前:
デフォルトの名無しさん
:03/11/17 21:30
>>882
DialogBox()の中でメッセージループいじってるので不可能
884
名前:
デフォルトの名無しさん
:03/11/17 21:47
アイドル処理というのは、メッセージを受けなかったりスリープ状態ということでしょうか?・・・無知ですみません><;
885
名前:
デフォルトの名無しさん
:03/11/17 22:23
>>884
みなさ〜ん、ぼくを煽ってくださ〜い!
↑
という、まさに今のおまいのような状態を言う
886
名前:
デフォルトの名無しさん
:03/11/17 22:27
タイトルの分かっているウインドウを最大化/もとのウインドウサイズに戻すプログラムを組んでいます。
まず、最大化させようと、次のようなプログラムを書き、動作しました。
HWND hwnd;
UINT msg;
WPARAM wparam;
LPARAM lparam;
/* ウィンドのタイトルを得る */
hwnd = FindWindow(NULL, "ウィンドウのタイトル");
/* 最大化メッセージを送る */
msg = WM_SYSCOMMAND;
wparam = SC_MAXIMIZE;
PostMessage(hwnd, msg, wparam, lparam);
もとのサイズに戻すには、wparam = SC_RESTOREとすればよいと考えています。
ここから、質問なのですが、ウインドウが現在、最大化されているかを調べる方法ってどうやるんでしょう?
識者の方、よろしくお願いします。
887
名前:
デフォルトの名無しさん
:03/11/17 22:28
IsZoomed
888
名前:
886
:03/11/17 22:30
>887
すばやい反応ありがとうございます。なるほど、そのままの名前のAPIですね(^^;;
889
名前:
デフォルトの名無しさん
:03/11/17 23:19
MFCのダイアログでアイドルハンドラ無かったっけ。
890
名前:
デフォルトの名無しさん
:03/11/17 23:24
MFCのあれはモーダルではない。
MFC製とOS謹製のモーダルだと動作が違うらしいけど
詳しいことは知らない。
891
名前:
デフォルトの名無しさん
:03/11/18 00:04
>>889
MFC のは擬似モーダルだね。
まさに、アイドルメッセージを処理するために
擬似にしているような気がするが。
ソースを追って見たら?
892
名前:
デフォルトの名無しさん
:03/11/18 00:13
RunModalLoop()なるものを回してた。んでアイドルメッセージWM_KICKIDLEを送る機会を与えてた。
893
名前:
860
:03/11/18 00:24
結局、こういうマクロにしときますた。
#define COLORREFTORGB(c,r,g,b) r=(BYTE)c;g=(BYTE)(c
>>8
);b=(BYTE)(b
>>16
);
でも共用体のほうが美しいと思った。
みなさんレスどもでした。
894
名前:
デフォルトの名無しさん
:03/11/18 00:34
>>893
if(なんたら)
COLORREFTORGB(c,r,g,b);
なんてことすると…(・∀・)
895
名前:
デフォルトの名無しさん
:03/11/18 00:40
>>893
#define COLORREFTORGB(c,r,g,b) (r=(BYTE)c,g=(BYTE)(c
>>8
),b=(BYTE)(b
>>16
))
ところで質問なんですが
MFCのフローティングツールバーとか、
フロート中はWS_POPUPスタイルを持っているんですが
親ウインドウのタイトルバーも青いまま=ウインドウがアクティブな状態
になってますよね、これってどうやってるんですか?
WM_NCACTIVATEで親ウインドウにフォーカスを移すようにしてみると
ポップアップに乗っけたコントロールが動かなくなるのですが。
896
名前:
デフォルトの名無しさん
:03/11/18 01:40
VCのSDKでダイアログベースのプログラムつくってるんすけど
GetOpenFileNameで拾ってきたファイルネームをダイアログの
EDITボックスに入れたいんです。
この場合どこをいぢればいいんでしょうか?
897
名前:
デフォルトの名無しさん
:03/11/18 01:43
>>896
はWin32APIの入門書のコントロールの章を読むべきだね
ちなみに
SetWindowText (HWND,LPSTR)だった希ガス
898
名前:
896
:03/11/18 02:00
>897
すいません、事故解決しました
SetDlgItemText
であっさりうまくいきました
申し訳ないっす
899
名前:
デフォルトの名無しさん
:03/11/18 02:02
>>886
そうやって直接メッセージを送るのは好かんな。
ShowWindowあたりを使った方がスマートかと。
900
名前:
デフォルトの名無しさん
:03/11/18 02:03
>>898
の中の人の
>>898
SendMessageのが好きだけど、なんでPostMessage?
901
名前:
デフォルトの名無しさん
:03/11/18 02:03
>>900
間違い・・・・
>>886
向けです><;
902
名前:
886
:03/11/18 02:35
886です。
プログラム中のコメント、間違っていました。
「ウインドゥのタイトルを得る」→「タイトルからウインドウハンドルを得る」
>>899
確かにスマートですね。
ShowWindow(hwnd, SW_MAXIMIZE); で最大化できました。
>>900-901
メッセージを送る側のプログラムは、最大化メッセージを送った後、即終了します。
メッセージを送った後はプログラム間の同期は不要なので、PostMessage()にしました。
つたない質問&プログラムにレスつけてくださって、感謝です。
903
名前:
デフォルトの名無しさん
:03/11/18 03:26
長くてすいません。
class SETMP3{
public:
HWND hwnd;
static OPENFILENAME ofn = {0};
static TCHAR *strFile[MAX_PATH];
static TCHAR *strCustom[256] = TEXT("Before files\0*.*\0\0");
static TCHAR *strMove;MAX_PATH] = TEXT("C:/backup/test.dat");
public:
〜〜〜〜
}
んで、メンバ関数から参照とかしてるんですが
main.obj : error LNK2001: 外部シンボル ""public: static char * SETMP3::strFile" (?strFile@SETMP3@@2PADA)" は未解決です
とでてしまいます。
これっていったいどうやればいいのでしょうか?
いままでだましだましやってたんですけど、しっかりわかっときたいんです
おねがいします。
あと上のソースで
static OPENFILENAME ofn = {0};
の部分で初期化できないかんじで、引っかかるんですが、Winmain関数に直に書くと
なぜか通ります
classの中でこの手の構造体の初期化って出来ないんですか?
コンストラクタで
ofn={0};
でもダメでした。
904
名前:
デフォルトの名無しさん
:03/11/18 03:32
char *str[128]とかやめた方がよくない?
strはTCHARのポインタのポインタが128個て意味?
*strCustom[256] = TEXT("Before files\0*.*\0\0"); の代入ができるの?
strMove;MAX_PATH]
は開始が無いのに ] 閉じをしてる
905
名前:
デフォルトの名無しさん
:03/11/18 03:33
C++やったこと無いけど public: は二つもハイって平気なの?
連レススマソ
906
名前:
903
:03/11/18 03:37
うげ、貼り付けたソースが手直し中のごちゃごちゃのでした
static OPENFILENAME ofn = {0};
static TCHAR strFile[MAX_PATH];
static TCHAR strCustom[256] = TEXT("Before files\0*.*\0\0");
static TCHAR strMove[MAX_PATH] = TEXT("C:/backup/test.dat");
こんな感じです。
このコードだと初期化が出来ないようなエラーがでて
初期化の部分試しに引っこ抜いてみたら、外部参照エラーでて
staticも取ってみたら変なメモリ読もうとして強制終了してしまいます
907
名前:
デフォルトの名無しさん
:03/11/18 03:48
クラス内で初期化は コンストラクタ でしか無理じゃないの?
908
名前:
903
:03/11/18 03:50
コンストラクタで初期化しようとしても
ofn={0};
strCustom = TEXT("Before files\0*.*\0\0");
strMove = TEXT("C:/backup/test.dat");
とコンストラクタにかいたら
: error C2059: 構文エラー : '{'
: error C2143: 構文エラー : ';' が '{' の前に必要です。
: error C2143: 構文エラー : ';' が '}' の前に必要です。
: error C2440: '=' : 'char [19]' から 'char [256]' に変換することはできません。(新しい動作 ; ヘルプを参照)
この変換が可能なコンテキストはありません。
: error C2440: '=' : 'char [19]' から 'char [260]' に変換することはできません。(新しい動作 ; ヘルプを参照)
この変換が可能なコンテキストはありません。
てな感じでエラーがでてしまうんです。
class使わないで直に書けば動くのですが、なんとかclassを使いたいと
思ってまして……
909
名前:
デフォルトの名無しさん
:03/11/18 03:51
>>906
というかそれC++の質問。初期化と代入も混同してるようだからCからやり直しかな。
910
名前:
デフォルトの名無しさん
:03/11/18 03:52
>>908
それ初期化じゃなくて代入。
911
名前:
903
:03/11/18 03:56
わかりました、出直してきます......_| ̄|○
912
名前:
デフォルトの名無しさん
:03/11/18 04:01
// SETMP3.h
class SETMP3{
public:
SETMP3();
static OPENFILENAME ofn;
static TCHAR strFile[MAX_PATH];
static TCHAR strCostom[256];
static TCHAR strMove[MAX_PATH];
};
// SETMP3.cpp
OPENFILENAME SETMP3::ofn = {0};
TCHAR SETMP3::strFile[MAX_PATH];
TCHAR SETMP3::strCostom[256] = _T("Before files\0*.*\0\0");
TCHAR SETMP3::strMove[MAX_PATH] = _T("C:\\backup\\test.dat");
913
名前:
デフォルトの名無しさん
:03/11/18 04:06
変数の初期化以外では配列の代入はできません
wstrcpy (strCustom, TEXT("Before files\0*.*\0\0")) としてみましょう
914
名前:
912
:03/11/18 04:07
コンストラクタの SETMP3(); は消して。
915
名前:
デフォルトの名無しさん
:03/11/18 04:13
横槍の質問。
よく見る
"Before files\0*.*\0\0"を
"Before files\0*.*\0"と書くのはダメ?
916
名前:
デフォルトの名無しさん
:03/11/18 04:17
903は答えを見ずに逝ったか・・・
917
名前:
デフォルトの名無しさん
:03/11/18 04:19
>>915
え〜とね・・・もともとは
"nnn\0*.*\0xxx\0*.*\0\0"見たいな感じで複数の文字列を格納しているんだと思うよ。
でその複文字列の終了が"\0\0"だと思う。
918
名前:
903
:03/11/18 04:22
>912
やってみたのですが
error C2655: 'ofn' : 現在のスコープ内で識別子が再宣言あるいは再定義されています。
が4つ、それぞれの変数で、でてしまいます。
どこがダメなのか考え中です。
>913
ありがとうございます、かなり初歩的なところも解ってないみたいです……
あかんわ……
919
名前:
デフォルトの名無しさん
:03/11/18 04:24
>>918
>>912
のように.hファイルと.cppファイルに分けて書いたか?
920
名前:
デフォルトの名無しさん
:03/11/18 04:29
"OPENFILENAME構造体"とか"OPENFILENAME"とかで検索汁
921
名前:
903
:03/11/18 04:29
>919
はい、分けて書いています。
922
名前:
デフォルトの名無しさん
:03/11/18 04:31
>>921
書いてる場所は?グローバルで書いてる?
923
名前:
デフォルトの名無しさん
:03/11/18 04:34
SETMP3.cpp の4つの変数ってば、SETMP3.cppの
最上位で定義しないとイケマセンですねん。
関数の中に入れちゃダメよん。
924
名前:
デフォルトの名無しさん
:03/11/18 04:37
さっきから質問者じゃないageてる人、的外れなことばかり書いてます・・・
925
名前:
903
:03/11/18 04:39
>922
すいません、グローバルで書いてませんでした(;´Д`)
とりあえずこの問題は解決したっぽいです
作ってる物自体は、微妙に動きませんが−−;
みなさま、こんな遅くなのにありがとうございました。
926
名前:
デフォルトの名無しさん
:03/11/18 05:28
>>917
\0\0と書かなくても最後は勝手に\0がつくんだから
\0だけでいいんじゃねーのってことじゃねーの?
927
名前:
デフォルトの名無しさん
:03/11/18 05:59
・・・よく考えたらそうだね
>>926
今は使う機会ないから今度やってみるね。
928
名前:
デフォルトの名無しさん
:03/11/18 06:12
>>913
"Before files"までしかコピーされないと思う
929
名前:
デフォルトの名無しさん
:03/11/18 06:14
>>928
どうすればいいんだろ^^;
930
名前:
デフォルトの名無しさん
:03/11/18 08:57
memcpy(strCustom, "Before files\0*.*\0\0", sizeof("Before files\0*.*\0\0"));
ならいけそうな気がするけど。
931
名前:
デフォルトの名無しさん
:03/11/18 09:15
memcpy(strCustom, "Before files\0*.*\0\0", sizeof(TEXT ("Before files\0*.*\0\0")));
かなぁ?
932
名前:
デフォルトの名無しさん
:03/11/18 09:47
>>895
の質問は誰も答えられないのね…。
漏れも、その問題は苦労した。
メッセージをフロート中のウィンドウと
親ウィンドウの間で複雑に操作する事によって解決した。
単純な解決方法はWM_NCPAINT等で自分でタイトルバーを再描画する。
どっちにしても、Windowsの各バージョンで試行錯誤しないといけないし
将来に渡って、挙動が同じになる可能性も低い。
ここ(2ch)で、この手の質問に答えられる人って少ないんじゃない?
933
名前:
デフォルトの名無しさん
:03/11/18 09:55
>>932
プロとか教授とかは忙しいんじゃないの?
934
名前:
デフォルトの名無しさん
:03/11/18 11:41
いつまでもスレ違いのC++講座を続けるバカがいるスレはここです。
935
名前:
デフォルトの名無しさん
:03/11/18 11:56
>>934
マトモに断言してる奴初めて見たよ(藁
>>934
は責任を取って次スレを立てましょう
936
名前:
デフォルトの名無しさん
:03/11/18 11:58
WM_ENTERIDLEとかあったような>アイドル処理
937
名前:
デフォルトの名無しさん
:03/11/18 14:23
>>932
フローティングツールバーなら、
単に WS_EX_WOOLWINDOW だかなんだかなんじゃないの?
938
名前:
デフォルトの名無しさん
:03/11/18 14:29
ウールウィンドウ
939
名前:
932じゃないけど
:03/11/18 15:06
>>937
当然、それも指定するんだけど、Windowsの仕様上(なのかな?)
結局アクティブなウィンドウは1つに指定されるみたいで、それ以外は
非アクティブな状態になるからだめ。
で、最終的にはWM_NCACTIVATE(だっけ?)あたりで自前の処理を
追加しないといけなくなる。
漏れもこの問題で一晩ネットの海をさまよった記憶が・・・。
まぁ、どんな問題も、同じような問題に引っかかる人はいるもんだから
調べればいずれ出てくるんだよな。
940
名前:
デフォルトの名無しさん
:03/11/18 15:51
MFCがやってるなら、MFCのソースを見る手もあるけど。
941
名前:
デフォルトの名無しさん
:03/11/18 16:19
>>936
それってダイアログのアイドル処理に使える?
それ捕まえてみたけど、メニューを表示したときのMSGF_MENUしか飛んでこないような。
942
名前:
デフォルトの名無しさん
:03/11/18 16:27
>>939
MFCの
int CMiniDockFrameWnd::OnMouseActivate(CWnd* pDesktopWnd, UINT nHitTest, UINT message)
{
if (nHitTest >= HTSIZEFIRST && nHitTest <= HTSIZELAST) // resizing
return MA_NOACTIVATE;
return CMiniFrameWnd::OnMouseActivate(pDesktopWnd, nHitTest, message);
}
これは違うのか?
943
名前:
WMP
:03/11/18 17:08
MP3の入っているファイルからランダムで選んで再生させるほうほう教えてください。
944
名前:
デフォルトの名無しさん
:03/11/18 17:36
>>941
親を見てくれ。
945
名前:
939
:03/11/18 17:43
>>942
悪い。MFCのことはぜんぜん知らん。
けどMFCにはフローティングウィンドウ用のクラスがあったんじゃ?
それのことかな?
とりあえず、上で言っているのはSDKのみでの実装方法なんだけど。
946
名前:
デフォルトの名無しさん
:03/11/18 17:48
>>945
MiniDockFrameWnd(フロートウインドウのフレーム)
で特別操作しているメッセージがWM_MOUSEACTIVATEだけだから
それでMA_NOACTIVATEを返せば目的が達成できるんじゃないか?
947
名前:
932
:03/11/18 19:21
>>946
本当にそんなに簡単にできるのか?…ちょっと試してみた。↓
LRESULT CALLBACK ToolFrameWndProc( HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam ) {
int nHitTest = LOWORD( lParam );
switch( uMsg ) {
case WM_MOUSEACTIVATE:
if( nHitTest >= HTSIZEFIRST && nHitTest <= HTSIZELAST )
return MA_NOACTIVATE;
return DefWindowProc( hMainFrameWnd, uMsg, wParam, lParam );
}
return DefWindowProc( hWnd, uMsg, wParam, lParam );
}
全然、駄目だった。漏れもMFCは何も知らんが、内部で特別な事してるんじゃないの?
それとも、漏れの↑のソースが間違ってるのか?
948
名前:
デフォルトの名無しさん
:03/11/18 20:52
MFC話禁止
949
名前:
デフォルトの名無しさん
:03/11/18 20:55
はぁ?
950
名前:
デフォルトの名無しさん
:03/11/18 21:00
ひぃ!
■ VisualC++(MFC限定)相談室 MFC9.dll■
http://pc2.2ch.net/test/read.cgi/tech/1062098350/
951
名前:
デフォルトの名無しさん
:03/11/18 21:03
MSUで初日に習うこと:
「アクティブである」≠「フォーカスを持っている」
「例えば、MDIの親ウインドウ」
952
名前:
デフォルトの名無しさん
:03/11/18 21:30
>>951
MFCを主体とした話ではないからこっちでいいだろうが。
953
名前:
デフォルトの名無しさん
:03/11/18 21:39
Win32API話禁止
954
名前:
932
:03/11/18 22:01
…ってか、話してるのはMFCだと簡単だけどAPIだと、どーやるんだ?
という話だから、おもいっきりコッチの話だと思うんだけど
>>947
のソースも、MFC使ってないし…。
955
名前:
デフォルトの名無しさん
:03/11/19 03:26
>>895
俺もむかしハマった。
case WM_NCACTIVATE:
return DefWindowProc(hWnd, WM_NCACTIVATE, TRUE, 0);
親ウインドウとフローティングウインドウでこのようにすれば、タイトルバーは見た目、
アクティブなままだよ。これはMFCのやりかた。
もっともこれだけだと、ほかのアプリに切り替わったときに破綻するから、上のTRUE/FALSEを上手に
タイミング良く制御する必要がある。
956
名前:
903
:03/11/19 15:54
レジストリから値を読みたいのですが
グローバルで
char lin_inst[256];
として
reg(){
HKEY hKey;
DWORD dwPosition;
DWORD dwType = REG_SZ;
DWORD dwByte = 32;
RegCreateKeyEx(HKEY_LOCAL_MACHINE,
"Software\\XXXX\\YYYY",
0,
"",
REG_OPTION_NON_VOLATILE,KEY_ALL_ACCESS,
NULL,
&hKey,
&dwPosition);
RegQueryValueEx(hKey,
"ExecutePath",
NULL,
&dwType,
(BYTE *)lin_inst,
&dwByte);
RegCloseKey(hKey);
}
でlin_instにHKEY_LOCAL_MACHINE\\Software\\XXXX\\YYYY"のExecutePath
の値を入れたいのですが、コレだと値が入ってくれないのです
どこが悪いのか教えていただけないでしょうか
957
名前:
956
:03/11/19 16:01
すいません、自己解決しました
XXX\\YYYのところ、大文字と小文字勘違いしてた……
残りレス少ないのにすいません
958
名前:
デフォルトの名無しさん
:03/11/19 16:24
WritePrivateProfileStringってあるけど、これって文字列にするのがアレなんで
WritePrivateProfileIntとかって数値を書くAPIってありませんか?
959
名前:
デフォルトの名無しさん
:03/11/19 16:29
ありません。
960
名前:
デフォルトの名無しさん
:03/11/19 16:45
やっぱないですかないですかうんこですねありがとうございますうんこさんほんとどうもです
961
名前:
デフォルトの名無しさん
:03/11/19 16:49
>>960
くだらない質問した責任をとって次スレ立てなさい
962
名前:
デフォルトの名無しさん
:03/11/19 17:01
>>961
('д`)えーそんなぁ〜
つか、立てるのいいけど
>>2
いこうの点プレはおね〜
963
名前:
デフォルトの名無しさん
:03/11/19 17:03
あ、ごめん・・
このホストではしばらくスレ立てれないって何かでた(´・ω・`)
964
名前:
デフォルトの名無しさん
:03/11/19 17:31
MSDN LibraryがUnavailableになって利用できないんだけど、どう?
IE6SP1だとUnavailable
Firebirdだと日本語が文字化け
調べたいときはgoogleしかない?
965
名前:
デフォルトの名無しさん
:03/11/19 17:44
ん? 使えるみたいだけど、ここのことじゃなくて?
ttp://www.microsoft.com/japan/msdn/library/default.asp
966
名前:
デフォルトの名無しさん
:03/11/19 19:05
ダイアルアップ接続の接続時間を取得する方法を教えてください。
開発環境はbcc 5.5.1、WindowsNT4.0/98です。
967
名前:
デフォルトの名無しさん
:03/11/19 19:32
コンソールアプリのラッパーを作成してるのですが、
コンソール画面の出力文字列を取得する方法はありますでしょうか?
spyで覗けなくて手詰まりになってしまいました。
win2000、VC6で開発しています。
968
名前:
デフォルトの名無しさん
:03/11/19 19:35
>>965
マジですか?
左のツリーがUnavailableになって利用できないです。
969
名前:
デフォルトの名無しさん
:03/11/19 19:39
>>967
パイプで繋げ
970
名前:
デフォルトの名無しさん
:03/11/19 19:43
>>968
W2K、XPの二台で試したけど、大丈夫だよ。
971
名前:
デフォルトの名無しさん
:03/11/19 19:51
>>970
そうですか、ありがとうございました。
ttp://www.xxxx.nu/upload/upload/msdn.jpg
うちではこんな感じで表示されないんです
ページフィルタ・串は通してないんですけど。
なんでだろ
972
名前:
デフォルトの名無しさん
:03/11/19 19:58
>>971
セキュリティーレベルが高になってない?
973
名前:
デフォルトの名無しさん
:03/11/19 20:00
>>972
その辺は問題ないです。
普段はカスタムで、最低にしても試してみましたし。
ただ、他の人は正常に見えていると言うことで
もうこのスレからは逸脱しているので
ここから先はもういいです、ありがとうございました。
974
名前:
966
:03/11/19 22:17
ちょっと調べたところ、
・自前で繋いで監視orファイルかレジストリに接続時間を記録して
後でそれから逆算
・システムログを読んで直近のリモートアクセスの内容が接続
だったらその記録時刻から逆算(当然NTのみ?)
という2つの方法があるっぽく、2番目のにしようと思ったのですが
もっとスマートな方法はあるでしょうか。
975
名前:
デフォルトの名無しさん
:03/11/19 22:31
Ras関係のAPIで取得できるんじゃないの?
976
名前:
デフォルトの名無しさん
:03/11/19 23:35
>>966
Windows 2000 以降なら、RasGetConnectionStatistics() で RAS_STATS 構造体の
dwConnectDuration フィールドにミリ秒単位で接続時間が得られる。
977
名前:
デフォルトの名無しさん
:03/11/19 23:43
現在の自分のアプリの通信速度を取得する方法ってある?
978
名前:
デフォルトの名無しさん
:03/11/20 00:05
受信バイト/時間ではかれば?
979
名前:
デフォルトの名無しさん
:03/11/20 01:03
time.hのtime_t time(time_t *)と同じ動きなAPIってありますか?
980
名前:
デフォルトの名無しさん
:03/11/20 01:12
全く同じ働きをするようなAPIは存在しません。
GetSystemTimeあたりが似たようなAPIでしょうか。
981
名前:
デフォルトの名無しさん
:03/11/20 01:42
>>980
やっぱりGetSystemTimeで得られたSYSTEMTIME構造体のメンバを
全部適当にかけたり足したりして総経過秒に直すんですか?
982
名前:
デフォルトの名無しさん
:03/11/20 01:47
VCのCRTはそうしてますよ。
983
名前:
デフォルトの名無しさん
:03/11/20 02:11
>>982
なるほど。ありがとうございました。
984
名前:
デフォルトの名無しさん
:03/11/20 02:48
>>973
MSDNインストールしてナイトだめなんじゃないの?
985
名前:
デフォルトの名無しさん
:03/11/20 21:06
TCHARやLPTSTRの「T」ってもしかしてTransportableのT?
986
名前:
デフォルトの名無しさん
:03/11/20 21:31
TEXTのT
987
名前:
デフォルトの名無しさん
:03/11/20 21:36
TarachanのT
988
名前:
985
:03/11/20 22:34
>>986-987
そうだったんですか。初めて知りました。
989
名前:
デフォルトの名無しさん
:03/11/20 23:00
>>979
GetSystemTime()
↓
SystemTimeToFileTime()
↓
FileTime型からtime_t型へ変換
990
名前:
デフォルトの名無しさん
:03/11/20 23:15
>>979
2038年問題には気を付けろよ
991
名前:
デフォルトの名無しさん
:03/11/20 23:37
そろそろ次スレかな。
992
名前:
デフォルトの名無しさん
:03/11/20 23:38
74歳か。。。 たぶん俺の出る幕じゃなくなってるな
993
名前:
デフォルトの名無しさん
:03/11/20 23:48
順調に立つか分からないので、次スレ立ててくるな。
994
名前:
デフォルトの名無しさん
:03/11/21 00:10
Win32API質問箱 Build15
http://pc2.2ch.net/test/read.cgi/tech/1069339866/
995
名前:
デフォルトの名無しさん
:03/11/21 00:54
FILETIME -> time_t の変換は、両者の開始日時と
カウント単位が、全然違うことに気をつけましょう。
996
名前:
デフォルトの名無しさん
:03/11/21 05:48
>>992
いや、未だ定年していないし、年金は90歳からだ。。
997
名前:
デフォルトの名無しさん
:03/11/21 12:32
未来人キタ━━━━━━(゚∀゚)━━━━━━ !!
998
名前:
デフォルトの名無しさん
:03/11/21 13:14
は?
999
名前:
デフォルトの名無しさん
:03/11/21 13:16
↓1000オメ
1000
名前:
デフォルトの名無しさん
:03/11/21 13:16
↓1001オメ
■過去ログ置き場に戻る■
1-
前250
次250
最新50
DAT2HTML
0.33f Converted.