トップページ⇒tech
132コメント33KB

【C】Windowsのプログラム作るぞ(゚Д゚)ゴルァ!

■ このスレッドは過去ログ倉庫に格納されています
00011NGNG
C言語は3ヵ月勉強したくらいですがなんだかDOSプログラムじゃおもしろくないので
Windowsプログラムの入門書買ってきてしまいますた。
コンパイラはBorlandの無料のやつですはい。
一緒に勉強してくれるひと募集。
0002デフォルトの名無しさんNGNG
がんばれ。選別。

http://www.google.co.jp/search?sourceid=navclient&hl=ja&ie=UTF-8&oe=UTF-8&q=CreateWindow+WndProc+RegisterClass

後、削除依頼よろしく。
0003デフォルトの名無しさんNGNG
正しくは餞別。

最近糞スレ多いな。
0004デフォルトの名無しさん NGNG
/*4get!*/
0005デフォルトの名無しさんNGNG
// 5get!
00061NGNG
MessageBox関数の第4引数を弄ることでいろいろな種類のメッセージボックスを表示することができるのは分かったのですが、
メッセージボックスを表示する時に一緒に表示できるアイコンをオリジナルのものにするにはどうすればよいのでしょうか。
0007デフォルトの名無しさんNGNG
MessageBoxを使わずに自前でメッセージボックスを作る。
00081NGNG
>>7
MessageBox関数では無理という事ですかねぇ?
0009デフォルトの名無しさんNGNG
無理っぽい。
0010デフォルトの名無しさんNGNG
MessageBoxEx()
0011デフォルトの名無しさんNGNG
10!
00121NGNG
>>9
そうですか、ありがとうございます

>>10
ぐぐってみたら発見しますた。
でもいい説明が無いし入門書にも載ってなかったポ。・´(´Д`),`・。

とりあえずMessageBoxは放置で先に進みまぁすっ!
00131NGNG
>>9
そうですか、ありがとうございます

>>10
ぐぐってみたら発見しますた。
でもいい説明が無いし入門書にも載ってなかったポ。・´(´Д`),`・。

とりあえずMessageBoxは放置で先に進みまぁすっ!
00141NGNG
2重投稿スマソ
0015デフォルトの名無しさんNGNG
初心者がコード書きながら勉強するスレをお探しならぜひゲーム製作技術板へ!!
さまざまな数当てゲームからじゃんけんゲームまでさまざまな
体験があなたを待っています!!
00161NGNG
ゲ製作板イラネ
0017デフォルトの名無しさんNGNG
>>16
なんでよ?
00181NGNG
>>17
他力本願大杉
0019デフォルトの名無しさんNGNG
>>1
【独習C】猿55【猿C言語教室 part2】
http://pc2.2ch.net/test/read.cgi/tech/1070778819/
00201NGNG
>>19
DOSメインのようですが?
0021デフォルトの名無しさんNGNG
>>18
そういうおまいも他力本願だと気づいているかな?
0022デフォルトの名無しさんNGNG
>>21
(´∀` )オマエモナー
0023デフォルトの名無しさんNGNG
オレタチ、タリキ ・∀・)人(・∀・)人(・∀・)人(・∀・ ホンガーンズ
00241NGNG
あるサンプル組んだらどっこも間違えていないのに理不尽なエラーが出たYO。
Wndclass.lpfnWndProc = WndProc;
↑っておかしいでつか?

>>22
久々に見て感動した!
00251NGNG
こういうのもあった
Wndclass.cdClsExtra = 0;
Wndclass.cdWndExtra = 0;
0026デフォルトの名無しさんNGNG
>>24
Wndclass.lpfnWndProc =(WNDPROC)WndProc;
WndProcの宣言時にWNDPROC型にしてないとlpfnWndProcの型のWNDPROC型にあわせなければいけない。

Wndclass.cdClsExtra = 0;
Wndclass.cdWndExtra = 0;
通常こうするが、エラー出るのか?
00271NGNG
>>26
Wndclass.lpfnWndProc =(WNDPROC)WndProc;
が邪魔して
Wndclass.cdClsExtra = 0;
Wndclass.cdWndExtra = 0;
までエラーになってしまったのかも。
再度コンパイルしてきます
002826NGNG
おい!
dとb。向きが逆だ。(w
てか俺自身>>26で間違えた。(欝
cbClsExtra
cbWndExtra
じゃろが。
0029デフォルトの名無しさんNGNG
わざわざ人に頼ってプログラミングすることじゃないだろ>>1よ(>>27)
猫でも・・とかWisdomSoftとか見て自力でやらなきゃね。

「こういう所でエラーが出た」とか書くだけって
「こうやったら大丈夫かな、もっとイイ方法キボンヌ」って投稿してるのとあんまり変わらないジャン。

>>28
ワラタ
いちいちキャストしないといけないものなのか?
俺の場合はエラーでないんだけどなぁ・・・・。(BCC32でも
00301NGNG
>>28
言われたとおりしたらできました、ありがとうございます
しかし「どっこも間違えてないのに」とか言った手前・・・・禿しく鬱。。。
00311NGNG
>>29
たしかにぃ、、
更に鬱。。
003226NGNG
>>31
まぁ、sage侵攻で煎っとけば。
一応、俺の監視下に入れとくYO!(whhhhh...
003326NGNG
ヤバ!、揚げてしまった。スマッ!!!
003429NGNG
よーし俺も手伝っちゃうぞ。
2chブラのお気に入りに入れときまっせ。
>>32 アンタがageてどうすんだYO
0035デフォルトの名無しさんNGNG
 
003629NGNG
入れ違いに書き込んじまった。

ttp://y0da.cjb.net/
今日16Edit HEXってい(バイナリエディタ)のコントロールをハケーンしますた。
サンプルについていたプログラムがイイ感じに軽いのでSendToに入れてしまった。
00371NGNG
みなさんありがとうございまふ
0038デフォルトの名無しさんNGNG
>>1
もう終わりか?
0039デフォルトの名無しさんNGNG
じゃあ今からここは16Edit Hex(16編集16進???)スレになりました。
00401NGNG
ところで皆さんはインデントには何を使っているんですか?
自分は半角スペース2個ですが。。
多スレに同じ話題があったらスマソ。
0041デフォルトの名無しさんNGNG
[tab]
0042デフォルトの名無しさんNGNG
半角スペース4個
0043デフォルトの名無しさんNGNG
>>1
あの、3ヶ月間何をしてらしたんで?
いや、正直5日目にしか見えない
004429NGNG
半角スペース4個分のtabつかっとる。
1がネタ振りしないんならこちらから1への宿題を(藁

>>36 のコントロール使ってバイナリエディタ作ってほすぃ。
そんな難しいもんでもないし、あんさん暇そうだしね。
基本的なバイナリエディタの機能、できればMDIで。

> 基本的なバイナリエディタの機能ってのは差分作成でパッチ作成とか
アンドゥなどなど

【C】Windowsのプログラム作るぞ(゚Д゚)ゴルァ!
タイトルが↑なんだから作ってくださいな。
俺は面倒なんであとはヨロ(藁 俺も忙しいのでつ(なら2chくんなYOって感じですが
0045デフォルトの名無しさんNGNG
>>.44
自分でやれよバカ
0046>>1NGNG
てか正直アレだ、ここの住民意見聞くよりも「猫でも〜」
見たほうがわかりやすいぞ
00471NGNG
>>46
このスレ削除依頼だしてきます。
じゃっ
0048デフォルトの名無しさんNGNG
そしてまだある。
0049デフォルトの名無しさんNGNG
よおおおおおおおおおおおおおおおおおおっっっっしゃああああ
2ゲットオオオオオオオオオオオオオオオオオ!!!!
記念age
0050デフォルトの名無しさんNGNG
あhっひょhっひょっひょ
0051デフォルトの名無しさんNGNG
Visual Windows for BC++

http://phys.cool.ne.jp/physjpn/bccwin.htm

まだ使ってないから分からんけど・...・
0052デフォルトの名無しさんNGNG
>>24
Wndclassって変数名長過ぎる
RegisterClass(Ex)に渡したらおしまいなんだから
WNDCLASSならwc WNDCLASSEXならwcexで十分
でもwはやめとけ
理由:↓
0053デフォルトの名無しさんNGNG
#define w WINSTA_ACCESSGLOBALATOMS
0054デフォルトの名無しさんNGNG
 結局その場限りのやる気だけ見せスレ立てて逃亡した>>1であるが。
0055デフォルトの名無しさんNGNG
sage
0056デフォルトの名無しさんNGNG
>>54
そう言えばどこ行ったんだろうな
0057デフォルトの名無しさんNGNG
>>1
あのさぁ〜、WNDCLASSのメンバー変数を間違えるくらいなら

WNDCLASS WC = {
{sizeof(WNDCLASS)},
{・・・以下略}
};

みたいに宣言時に代入すりゃいいのに。C言語を
理解できてれば誰でも思いつくと思うが?
まぁ、桑菜も好き好きっつーから普通にメンバー書いて
代入するやつもいるだろうがな。
0058デフォルトの名無しさんNGNG
>>57
その書き方だとメンバの順番を覚えとかないといけないからね
0059デフォルトの名無しさんNGNG
>>58
一応、猫プロの順番で大丈夫だし、
いざとなればヘッダファイル見ればイイ。
多分>>1のことだヘッダーファイル読む事ぐらいはできるだろ
馬鹿じゃあるまいし
0060デフォルトの名無しさんNGNG
>>59
>多分>>1のことだヘッダーファイル読む事ぐらいはできるだろ
こんなスレ勃てちゃうよーなのが
ヘッダ読んだりするかなぁ??
>馬鹿じゃあるまいし
違うの??
0061デフォルトの名無しさんNGNG
>>58
C99の指示付きの初期化子……。(ついでに複合リテラルも)
http://seclan.dll.jp/c99d/c99d07.htm#dt19991025

問題はBCCもVCも非対応。(だめやんけ)
0062デフォルトの名無しさんNGNG
>>61
おー!こんなの知らんかった。情報サンクス。
俺が使ってるのはgccだから多分大丈夫。
0063デフォルトの名無しさんNGNG
>>61
inline bool for(int i = 0; i < 100; i++)なんかは対応しているだろw
0064デフォルトの名無しさんNGNG
C:\WINDOWS\temp フォルダの中身を空にするツールを作りたいのですが、
何をどうすればいいでしょうか?
C:\WINDOWS\temp フォルダ自体は残して中身(含:サブフォルダ)
だけ掃除したいのです。
ただ、実行する前に、
「すべてのアプリケーションを終了していますか?」
と訊き、[はい] で実行、[いいえ] でキャンセルし、
実行後に、
「クリアしました」
と表示したいのです。
ほとんどの WinXP 環境で使える事が条件です。
初心者ですみませんが、方向性だけでもご教示下さい。
0065デフォルトの名無しさんNGNG
>>64
 努力すればよい。
0066デフォルトの名無しさんNGNG
>>64
用意したツールは?
バッチファイルでも、あんたの要求仕様を満足するものは、
出来てしまうだが。
0067デフォルトの名無しさんNGNG
>>66
>用意したツールは?
何も用意しなくてもできる方法を教えて下さい。

>バッチファイルでも、あなたの要求仕様を満足するものは、出来てしまうだが。
フォルダの中身だけ削除ってバッチでできましたっけ?
0068貧乏紙NGNG
>>C:\WINDOWS\temp フォルダの中身を空にするツールを作りたいのですが、
これって確かOSで保護されてるから無理じゃない。少なくてもAPIうぬぬんでは不可能。
OSの管理範囲外でしなくては無理。たとえばBIOSのイーピーロムだっけ?
それを書き換えるぐらいしないと、、、
0069デフォルトの名無しさんNGNG
>>68
> たとえばBIOSのイーピーロムだっけ?
> それを書き換えるぐらいしないと、、、

ネタはいらんよ。
0070デフォルトの名無しさんNGNG
>>67
>>バッチファイルでも、あなたの要求仕様を満足するものは、出来てしまうだが。
> フォルダの中身だけ削除ってバッチでできましたっけ?

echo y >del c:\windows\temp\*.*
ってことでは、なくて?
0071デフォルトの名無しさんNGNG
Ans = MsgBox ("すべてのアプリケーションを終了していますか?",4+32,"質問")
If Ans = vbYes then
Set FS = CreateObject("Scripting.FileSystemObject")
Set TMP = FS.GetFolder("C:\\Windows\\TEMP")
For Each Obj In TMP.Files
Obj.Delete
Next
For Each Obj In TMP.SubFolders
Obj.Delete
Next
MsgBox "クリアしました"
Else
MsgBox "何もせず終了します"
End If


VBスクリプト。拡張子はvbs。
スレ違いだから、この辺にしとけ。
0072デフォルトの名無しさんNGNG
>>70
なるほど。いけそうですね。

>>71
なるほど。わかりやすいです。(Excel VBAはお手のものなので。)

ちなみに、Cではどうなりますか?
(この回答をきっかけにして、本格的にCの勉強を始めます。)
0073デフォルトの名無しさんNGNG
この回答をきっかけにして、本格的にCの勉強を始めます。
私にCを学ばせる気にさせるために指南好きな人間は答えを書きなさい。
忙しいので早くしてください。
0074デフォルトの名無しさんNGNG
>>73
#include<stdlib.h>
#include<stdio.h>
#define FILENAME "C:\\DELETE.VBS"
int main() {
  FILE *hoge = fopen(FILENAME, "w");
  char *script[] = {
    "Ans = MsgBox (\"すべてのアプリケーションを終了していますか?\",4+32,\"質問\")\n"
    "If Ans = vbYes Then\n"
    "  Set FS = CreateObject(\"Scripting.FileSystemObject\")\n"
    "  Set TMP = FS.GetFolder(\"C:\\Windows\\TEMP\")\n"
    "  For Each Obj In TMP.Files\n"
    "    Obj.Delete\n"
    "  Next\n"
    "  For Each Obj In TMP.SubFolders\n"
    "    Obj.Delete\n"
    "    Next\n"
    "  MsgBox \"クリアしました\"\n"
    "Else"
    "  MsgBox \"何もせず終了します\"\n"
    "End If\n"
  };
  int i;
  for (i = 0; i < sizeof script / sizeof script[0]; i++)
    fputs(hoge, script[i]);
  fclose(hoge);
  system("wscript " FILENAME);
}
007572NGNG
↑何ですか、これ?
0076デフォルトの名無しさんNGNG
>>75
>>71のスクリプトを"C:\\DELETE.VBS"って名前でつくる
Cのプログラムと思われます
0077デフォルトの名無しさんNGNG
名前はC:\DELETE.VBS
007872NGNG
そやから、なんやねんな。
007972 NGNG
アカンわ。
0080デフォルトの名無しさんNGNG
DELTREE C:\WINDOWS\TEMP
MKDIR C:\WINDOWS\TEMP
0081デフォルトの名無しさんNGNG
>>75
コンパイルしてみろ
0082デフォルトの名無しさんNGNG
まともなプログラムを書いたことのある人は、ここにはいないのか?
0083デフォルトの名無しさんNGNG
>>82
まともに相手してもらえるようなスレとも思えません。
0084デフォルトの名無しさんNGNG
お前ら、SHFileOperation()は使わないというポリシーでもあるのですか?
0085デフォルトの名無しさんNGNG
>>84
”お前ら”といったり”ですか?”といったり

君の立場はどこにあるのだね
0086デフォルトの名無しさんNGNG
>>85
同感。頭悪そう。
0087デフォルトの名無しさんNGNG
2ch初心者晒しあげ
0088デフォルトの名無しさんNGNG
>>87
晒されているのは>>84と>>87。
0089デフォルトの名無しさんNGNG
>>85>>88
0090デフォルトの名無しさんNGNG
>>84>>87>>89
0091デフォルトの名無しさんNGNG
          ∧_∧
    ∧_∧  (´<_`  ) >>88が自作自演こいて必死だな
   ( ´_ゝ`) /   ⌒i 
   /   \     | |
  /    / ̄ ̄ ̄ ̄/ |
__(__ニつ/  VIAO / .| .|____
    \/____/ (u ⊃


0092デフォルトの名無しさんNGNG
http://ruitomo.com/~gulab/s.cgi?k=%82%A8%91O%82%E7&o=r
0093デフォルトの名無しさんNGNG

>>88 ダッセー ( ゚∀゚)アハハ八八ノヽノヽノヽノ \ / \ /  \
0094デフォルトの名無しさんNGNG
84は悪あがきしすぎ

余計立場が悪くなってるって気づけ
0095デフォルトの名無しさんNGNG
>>85
何年も前からある“ネタ表現”ですが。
それより、引用符の向きが同じなのが頭悪そう。
0096デフォルトの名無しさんNGNG
「ネタ表現」で逃げ切れるかどうか見ててやるよw
0097デフォルトの名無しさんNGNG
「がいしゅつ」や「漏れ」にも突っ込みそうだ。
0098デフォルトの名無しさんNGNG
2ch初心者、必死だな (激藁嘲笑
0099デフォルトの名無しさんNGNG
何年も前からある“ネタ表現”と言う割には、
お前らをオマイラ、と書かなかったあたり、
95=84=98は知ったかぶりの新参者と見た
0100デフォルトの名無しさんNGNG
やっと100GET出来たヤター!
0101デフォルトの名無しさんNGNG
藻前ら、モティツケ
     /\⌒ヽペタン
   /  /⌒)ノ ペタン
  ∧_∧ \ (( ∧_∧
 (; ´Д`))' ))(・∀・ ;)
 /  ⌒ノ ( ⌒ヽ⊂⌒ヽ
.(O   ノ ) ̄ ̄ ̄()__   )
 )_)_) (;;;;;;;;;;;;;;;;;;;)(_(
0102デフォルトの名無しさんNGNG
     /\⌒ヽペタン
   /  /⌒)ノ ペタン
  ∧_∧ \ (( 
 (; ´Д`)∧_∧  
 /  ⌒ノ(・∀・ ;)⊂⌒ヽ
.(O   ノ ) ̄ ̄ ̄()__   )
 )_)_) (;;;;;;;;;;;;;;;;)(_(
0103デフォルトの名無しさんNGNG
おまいら!
もちつけぇェェェっぇェェェェェッェぇぇっぇぇ!!!!
  ___   ガスッ
 |___ミ      ギビシッ
   .||  ヾ ミ 、      グシャッ
   ∩_∧/ヾヽ        
   | ,| ゚∀゚). .|  |;,      ゲシッ
  / ⌒二⊃=|  |∵.
 .O   ノ %`ー‐'⊂⌒ヽ  ゴショッ
   ) ) ) )~ ̄ ̄()__   )
  ヽ,lヽ) (;;;;;;;;;;;;;;;;;)(_(
0104名無し@沢村NGNG
ちっ、ここはザコが立てたスレか?
Windowsプログラムとは可愛いやっちゃ♪
こっちはメインウィンドウ完成間近だというのによ…♪もうすぐメインウィンドウできるよ〜♪
といってもCとかアセンブラとかでメインウィンドウ組むんじゃないぞ。それじゃまるでザコだ。
こっちは、メインウィンドウがつくれるプログラムつくってるのよ〜♪つまりVisual E++だ。
そうです、みなさんもうすぐVisual E++はメインウィンドウがつくれる本格的なプログラミングソフトに進化します♪
いまやっとVisual E++に補助的にバイナリエディタつかってメインウィンドウつくるのに成功したところ。
補助的にバイナリエディタつかわないで、Visual E++のみでメインウィンドウつくれるよになるには、あと修正個所が1、2個所…
みなさんもうすぐでっせ〜♪
0105名無し@沢村NGNG
ちっ、ここはザコが立てたスレか?
Windowsプログラムとは可愛いやっちゃ♪
こっちはメインウィンドウ完成間近だというのによ…♪もうすぐメインウィンドウできるよ〜♪
といってもCとかアセンブラとかでメインウィンドウ組むんじゃないぞ。それじゃまるでザコだ。
こっちは、メインウィンドウがつくれるプログラムつくってるのよ〜♪つまりVisual E++だ。
そうです、みなさんもうすぐVisual E++はメインウィンドウがつくれる本格的なプログラミングソフトに進化します♪
いまやっとVisual E++に補助的にバイナリエディタつかってメインウィンドウつくるのに成功したところ。
補助的にバイナリエディタつかわないで、Visual E++のみでメインウィンドウつくれるよになるには、あと修正個所が1、2個所…
みなさんもうすぐでっせ〜♪
0106名無し@沢村NGNG
ちっ、ここはザコが立てたスレか?
Windowsプログラムとは可愛いやっちゃ♪
こっちはメインウィンドウ完成間近だというのによ…♪もうすぐメインウィンドウできるよ〜♪
といってもCとかアセンブラとかでメインウィンドウ組むんじゃないぞ。それじゃまるでザコだ。
こっちは、メインウィンドウがつくれるプログラムつくってるのよ〜♪つまりVisual E++だ。
そうです、みなさんもうすぐVisual E++はメインウィンドウがつくれる本格的なプログラミングソフトに進化します♪
いまやっとVisual E++に補助的にバイナリエディタつかってメインウィンドウつくるのに成功したところ。
補助的にバイナリエディタつかわないで、Visual E++のみでメインウィンドウつくれるよになるには、あと修正個所が1、2個所…
みなさんもうすぐでっせ〜♪
0107デフォルトの名無しさんNGNG
>>99
君ね、なんかもう見てらんない
0108デフォルトの名無しさんNGNG
>>107
都合の悪い指摘だから見たくない、の間違いでは? :)
0109デフォルトの名無しさんNGNG
素直に、「ネタ表現とは知りませんでした」と白状しろよ :-P
0110デフォルトの名無しさんNGNG
http://www.geocities.co.jp/SiliconValley/5634/top.html
http://www.geocities.co.jp/SiliconValley/5634/t82DC_0002.html#432
http://www.geocities.co.jp/SiliconValley/5634/t82A0_0008.html#235
http://www.geocities.co.jp/SiliconValley/5634/t82B5_0003.html#287
0111デフォルトの名無しさんNGNG
日本語ができないだけでしょ。
0112デフォルトの名無しさんNGNG
>>111 ?
0113デフォルトの名無しさんNGNG
>>112
111もネタ表現だよ、バーカバーカ!(ぷぷぷ
0114デフォルトの名無しさんNGNG
>>113 ( ゚д゚)ポカーン
0115デフォルトの名無しさんNGNG
このスレ自体が壮大なネタ
を狙ったネタ
0116デフォルトの名無しさんNGNG
うむ。このスレは俺のメモ帳に使わせてもらう
0117デフォルトの名無しさんNGNG
スゴイ止り具合だね。質問スレではないのか?
質問スレなら栄えそうだが。。。
0118デフォルトの名無しさんNGNG
#include<stdio.h>
#include<stdlib.h>
#include<hoshu.h>
#include<math.h>
#include<string.h>
0119& ◆gLxqrLNGmA NGNG
#include<string.h>
0120デフォルトの名無しさんNGNG
☃ฺ
0121デフォルトの名無しさんNGNG
☃
0122デフォルトの名無しさんNGNG
test
0123デフォルトの名無しさんNGNG
test
0124デフォルトの名無しさんNGNG
test
0125デフォルトの名無しさんNGNG
☃ฺ
0126デフォルトの名無しさんNGNG
test
0127デフォルトの名無しさんNGNG
test
0128デフォルトの名無しさんNGNG
test
0129デフォルトの名無しさんNGNG
test
test
0130デフォルトの名無しさんNGNG
test
test
test
0131デフォルトの名無しさんNGNG
C++++
0132デフォルトの名無しさんNGNG
お前の選んだ入門書通りにやってみな
■ このスレッドは過去ログ倉庫に格納されています