ニートです1からプログラミングを教えてくれる [無断転載禁止]©2ch.net

■ このスレッドは過去ログ倉庫に格納されています
1たかし
垢版 |
2015/12/25(金) 18:43:55.48
先生を募集します

先生!!
2016/01/14(木) 21:28:59.98
>>533
いつカウントを更新するかは、自由に決めることができる。
アプリが終了するときか、フォームが閉じたときか、カウンタが更新したときか。
ここではすぐに更新してほしいので、hantei関数が呼ばれた後に
レジストリを更新する。
2016/01/14(木) 21:33:18.31
どうだね? 作れそうかな?
537takasi
垢版 |
2016/01/14(木) 21:33:36.08
>>534
private void Form2_Load(object sender, EventArgs e)
{
var key = Microsoft.Win32.Registry.CurrentUser.OpenSubKey(@"Software\Takashi\MySoftware");
label4.Text = key.GetValue("KACHI").ToString();
label5.Text = key.GetValue("MAKE").ToString();
label6.Text = key.GetValue("AIKO").ToString();
}
で大丈夫ですよね
2016/01/14(木) 21:35:57.02
>>537
try/catchしないならkeyとvalueのnullチェックが必要だよ。
539takasi
垢版 |
2016/01/14(木) 21:36:07.69
レジストリの更新はメソッドを新たに作成してそこでやらせたほうがいいですよね
2016/01/14(木) 21:37:03.59
>>539
そうだね。
2016/01/14(木) 21:45:20.04
\MySoftware
のところは
\JankenGUI
にしておこう。
542takasi
垢版 |
2016/01/14(木) 21:46:11.30
var key = Microsoft.Win32.Registry.CurrentUser.OpenSubKey(@"Software\Takashi\MySoftware");
if (key != null)
{
var value_kachi = key.GetValue("KACHI");
var value_make = key.GetValue("MAKE");
var value_aiko = key.GetValue("AIKO");
if (value_kachi != null) label4.Text = key.GetValue("KACHI").ToString();
if (value_make != null) label5.Text = key.GetValue("MAKE").ToString();
if (value_aiko != null) label6.Text = key.GetValue("AIKO").ToString();

こういうことでしょうか
2016/01/14(木) 21:48:05.12
if (value_kachi != null) label4.Text = key.GetValue("KACHI").ToString();
ちょっと無駄があるな。
if (value_kachi != null) label4.Text = value_kachi.ToString();
こっち。
2016/01/14(木) 21:57:22.37
git add -a
git commit -m "add counters"
git push origin master
2016/01/14(木) 22:05:30.78
どうだね?
何があっても、とにかく陽気に行こうぜ
546takasi
垢版 |
2016/01/14(木) 22:13:32.93
もう少しで動かします
2016/01/14(木) 22:14:28.61
どうした? ん?
2016/01/14(木) 22:21:25.15
ブラインドタッチの特訓と基本情報の取得が必要だな。
1ヶ月以内にブラインドタッチをマスターして、
1年以内に基本情報を取得しなさい。
549takasi
垢版 |
2016/01/14(木) 22:24:31.61
上手くいきません
とりあえず現時点のコードをコミットした方がいいですか
2016/01/14(木) 22:25:37.85
レジストリの更新はカウント加算の後だ。
551takasi
垢版 |
2016/01/14(木) 22:27:44.43
ブラインドタッチ一応できます・・・
実質的な死刑宣告と捉えたほうが良いですか・・・
552takasi
垢版 |
2016/01/14(木) 22:29:36.69
switch (hantei(player_hand, comp_hand))
{
case HanteiKekka.HANTEI_KACHI:
label3.Text = "あなたの勝ちです";
kachi_player.Play();
++kachi_count;
save_key("KACHI");
break;
case HanteiKekka.HANTEI_MAKE:
label3.Text = "あなたの負けです";
make_player.Play();
++make_count;
save_key("MAKE");
break;
case HanteiKekka.HANTEI_AIKO:
label3.Text = "あいこ";
aiko = true;
++aiko_count;
save_key("AIKO");
break;
}
2016/01/14(木) 22:30:23.51
じゃあ、pushしといて。
明日見るから。
554takasi
垢版 |
2016/01/14(木) 22:31:57.33
わかりましたpushしておきます
2016/01/14(木) 22:32:05.26
今日はおやすみ。
556takasi
垢版 |
2016/01/14(木) 22:33:02.13
すみませんでした
おやすみなさい
557takasi
垢版 |
2016/01/14(木) 23:36:49.80
$ git push origin master
remote: Permission to katahiromz/JankenGUI.git denied to takasi-desu.
fatal: unable to access 'https://github.com/katahiromz/JankenGUI/': The requested URL returned error: 403

ぐぬぬ
2016/01/15(金) 00:55:53.21
http://transitive.info/article/git/command/remote/
2016/01/15(金) 01:19:31.01
あ、フォーク忘れてた? ごめんね。
560takasi
垢版 |
2016/01/15(金) 02:12:03.82
んぐぐぐぐぐぐぐ
プスプスプスシューーーーーーーーーーー
561takasi
垢版 |
2016/01/15(金) 02:20:50.29
なぜでしょうpushができません
2016/01/15(金) 07:48:52.11
>>561
自分のリポジトリじゃないからね。
最初にforkすべきだった。
pushしなくていいよ。変更点少ないし。
563takasi
垢版 |
2016/01/15(金) 08:22:44.17
分かりました
動かして見た感じでは問題はなかったです
https://gyazo.com/3d005abe029830ef80e9f69be763228f
https://gyazo.com/567c6437b66c8bd4b84a6a6c8f59096c
https://i.gyazo.com/dfea862fc1e257c9e54c9e28edeb757f.png
2016/01/15(金) 16:39:11.05
いくつか注釈しておこう。
引数がゼロ個の関数を作ることができる。
save_keyは引数のない三つの関数に分けた方がいい。
記録がない場合はゼロ回として扱うべきだ。
異常な表示にならないようにすべての場合の「状態」を管理しないといけない。
2016/01/15(金) 19:39:31.24
JankenGUIにリソースのアイコン(*.ico)を追加せよ。フリー素材で構わない。
可能ならばJankenGUIに署名を行え。
JankenGUIをReleaseビルドせよ。
Inno Setupをダウンロード&インストールせよ。
2016/01/15(金) 19:41:08.11
Inno Setupのウィザードに従ってインストーラのスクリプト(*.iss)を試作せよ。
スクリプト中の絶対パスを相対パスにせよ。
JankenGUIが使っている.net frameworkのバージョンを確認せよ。
次のサイトを参考にインストール時に.net frameworkの有無をチェックするようにせよ。
http://qiita.com/bellx2/items/14ac4e02283d5c1ef12b
2016/01/15(金) 20:09:15.33
今日はインストーラ作成を行う。今回の課題は英語ができないと難しいかも知れないな。
質問が有ったらお気軽に。
568takasi
垢版 |
2016/01/15(金) 20:14:40.64
おはようございます
準備ご始めます
2016/01/15(金) 20:24:28.92
署名は多少時間がかかると思う。今日は後回しでいい。
2016/01/15(金) 20:36:34.17
ローカルリポジトリ情報の隠しフォルダ「.git」を「rm -rf .git」で消す。
「rm -rf」はファイルやフォルダをまるごと消すLinuxのコマンドだ。
GitHubのTakasi-DesuのJankenGUIをSettingsから消して(delete)作り直す。
それからgit init, add, commit, push -uだ。
2016/01/15(金) 20:39:05.60
git remote addも忘れずに。
2016/01/15(金) 21:07:44.34
教員免許を持っていない私が指導するのだから、不充分な点も
あるかもしれないが、御了承頂きたい。
進捗報告を。
573takasi
垢版 |
2016/01/15(金) 21:20:27.37
Inno Setupの使い方を調べている途中です
2016/01/15(金) 21:26:32.48
Releaseビルドしたなら、bin/Releaseフォルダにexeができているだろう。
これをInno Setupのウィザードでプログラムファイルとして指定する。
575takasi
垢版 |
2016/01/15(金) 21:43:42.57
使い方がさっぱりわかりません
exeファイルはできましたがInno Setupのウィザードでプログラムファイルとして指定するのはどうすればよいのでしょうか
2016/01/15(金) 21:44:30.97
わからない点はある?
2016/01/15(金) 21:47:26.33
>>575
Inno Setupは日本語になっているか?
参照ボタン(browse)をクリックして、ファイルの場所を指定する。
578takasi
垢版 |
2016/01/15(金) 21:52:54.29
参照ボタンはどこでしょうか?
開くはスクリプトファイルしか開けないようです
今この画面ですhttps://i.gyazo.com/3a0dffc78162915778d17ec7ea5504a3.png
2016/01/15(金) 21:56:07.64
File→New
2016/01/15(金) 22:07:21.09
英語が読めないなら、日本語化した方がいいんじゃないか?
581takasi
垢版 |
2016/01/15(金) 22:14:29.43
日本語化できますか?
インストールウィザードを日本語化するのしか見つかりませんでしたが
582takasi
垢版 |
2016/01/15(金) 22:21:56.78
先生、今回ばかりは無理かもしれません
使い方が全くわからなくて調べながらやらないといけないので時間が凄いかかると思います・・・
順序立てて教えていただければ分かりやすいですが、それもまた時間かかりそうですし・・・
2016/01/15(金) 22:23:26.45
InnoEditXにしようか?
584takasi
垢版 |
2016/01/15(金) 22:26:31.40
簡単なのであればそちらでお願いします
DLします
2016/01/15(金) 22:36:59.62
今日はこの辺でお開きといたしやしょう。
おやすみでござります。
586takasi
垢版 |
2016/01/15(金) 22:38:58.93
すみませぬ・・・・・・・・・おやすみなさい・・・・・・・・・・・・・・_(:3」∠)_
2016/01/15(金) 23:11:10.08
じゃんけんは意外と作るの面白いよね
がんば
588仕様書無しさん
垢版 |
2016/01/16(土) 15:14:46.12
InnoEditX
http://textexpage.s154.xrea.com/software/
589片山博文MZ ◆T6xkBnTXz7B0
垢版 |
2016/01/16(土) 17:22:50.44
InnoEditXをDL、展開して適当なフォルダに配置する。
InnoEditXのReadMeを読んだ後で、InnoEditXを起動する。
「ツール」→「設定」で、Inno Setupの場所を指定する。
あらかじめJankenGUIにReadMe.txtとLicense.txtを追加しておく。

[Setup]タブをクリック。「基本情報」タブで、アプリの名前を入力
(「たかしのジャンケン」「たかしのジャンケン ver.1.0」)。
インストール先を入力({pf}\Takashi Janken)。
590片山博文MZ ◆T6xkBnTXz7B0
垢版 |
2016/01/16(土) 17:23:50.31
「アンインストーラー」タブをクリック。
「アンインストーラーを作る」をチェック。
表示するアイコンに「{app}\JankenGUI.exe」を指定する。

{pf}は「C:\Program Files」などを表している。
{app}はインストール先のフォルダを表している。

「情報」タブをクリック。「製作者」「説明」「バージョン」を入力。
591片山博文MZ ◆T6xkBnTXz7B0
垢版 |
2016/01/16(土) 17:24:15.92
「フラグ」タブをクリック。
「中断を許可」「UNCパスを許可」「アプリ用ディレクトリを作る」
「情報をレジストリに保存」をチェック。

「ダイアログ」タブをクリック。
「インストールを行いますダイアログを出さない」をチェック。

ここまで、[Setup]タブ。
592片山博文MZ ◆T6xkBnTXz7B0
垢版 |
2016/01/16(土) 17:24:42.42
[Files]タブをクリック、リストを右クリックして「アイテムの追加」。
ソースファイルに「JankenGUI.exe」を選んで指定、
出力先ディレクトリを「{app}」にして、「OK」。
さらに「アイテムの追加」。「ReadMe.txt」を選んで指定、
出力先ディレクトリを「{app}」にして、「OK」。
さらにさらに「アイテムの追加」。「License.txt」を選んで指定、
出力先ディレクトリを「{app}」にして、「OK」。
593片山博文MZ ◆T6xkBnTXz7B0
垢版 |
2016/01/16(土) 17:25:18.48
[Icons]タブをクリック。
このタブはショートカットアイコンの追加に関する設定だ。

リストを右クリックで「アイテムの追加」。
作成先を「{group}\たかしのジャンケン」に、
リンク先を「{app}\JankenGUI.exe」にして、「OK」。

さらに「アイテムの追加」。
作成先を「{commondesktop}\ReadMe.txt」に、
リンク先を「{app}\ReadMe.txt」にして「OK」。

さらにさらに「アイテムの追加」。
作成先を「{commondesktop}\License.txt」に、
リンク先を「{app}\License.txt」にして「OK」。
594片山博文MZ ◆T6xkBnTXz7B0
垢版 |
2016/01/16(土) 17:26:45.27
さらにさらにさらに「アイテムの追加」。
作成先を「{commondesktop}\たかしのジャンケン」に、
リンク先を「{app}\JankenGUI.exe」にして「OK」。

さらにさらにさらにさらに「アイテムの追加」。
作成先を「{group}\アンインストール」に、
リンク先を「{uninstallexe}」にして、「OK」。

{group}は、スタートメニューの項目を表している。
{commondesktop}は、すべてのユーザのデスクトップを表している。
{uninstallexe}は、アンインストールプログラムを表す。

ここまで[Icons]タブ。
名前「JankenGUI.iss」を付けて保存。ビルドしてエラーがなければ
インストーラが作成される。 👀
Rock54: Caution(BBR-MD5:0be15ced7fbdb9fdb4d0ce1929c1b82f)
2016/01/16(土) 19:12:34.29
>>593 訂正。
× 作成先を「{commondesktop}\ReadMe.txt」に、
○ 作成先を「{group}\ReadMe.txt」に、

× 作成先を「{commondesktop}\License.txt」に、
○ 作成先を「{group}\License.txt」に、
2016/01/16(土) 19:51:40.96
たかし書籍化パターンだろこれw
2016/01/16(土) 19:52:21.97
謝辞に片山先生へのお礼が書かれてるend
598takasi
垢版 |
2016/01/16(土) 20:07:07.86
おはようございます
ありがとうございます・・・
始めます
599takasi
垢版 |
2016/01/16(土) 20:45:19.33
無事ビルド完了しました
https://i.gyazo.com/6762f0ece561ac26d495a98a46d14fc7.png
2016/01/16(土) 20:48:10.27
どうでもいいことだろうけど、

>>594になぜ
Rock54: Cautionがついているのだろう

exeかな?
2016/01/16(土) 20:49:17.37
剛田たけしのジャイアンじゃんけん
2016/01/16(土) 20:49:51.11
>>570-571の手順でGitHubにアップしてくれ。
以前のレポジトリは消えても構わない。
603takasi
垢版 |
2016/01/16(土) 20:53:08.37
作成したセットアップファイル?もフォルダに加えるんでしょうか
2016/01/16(土) 20:53:33.06
.issもレポジトリのフォルダに入れて。
setup.exeは.gitignoreで除外して。
2016/01/16(土) 21:12:03.30
修正1.JankenGUI.issをテキストエディタで開いて絶対パスの記述を相対パスに直しなさい。
修正2.使用しているレジストリキーをアンインストール時に削除するようにしなさい。
2016/01/16(土) 21:14:19.67
終わったらInnoEditXで開いてビルド。
インストールしてインストールした項目をテスト、アンインストールを何度か繰り返しなさい。
2016/01/16(土) 21:23:48.25
進捗報告を。
608takasi
垢版 |
2016/01/16(土) 21:36:08.78
今>>605です
2016/01/16(土) 21:39:38.33
絶対パスと相対パスについてはご存じかな?
610takasi
垢版 |
2016/01/16(土) 21:45:31.48
いいえ
2016/01/16(土) 21:50:20.18
現在のフォルダが「C:\Users」であるとき、「C:\Users\takasi\himitsu」という場
所(パス)は相対パス「takasi\himitsu」で参照できる。
「C:\Users\takasi\himitsu」は絶対パスだ。
パスを相対的に指定するか、絶対的に指定するかの違いだ。
612takasi
垢版 |
2016/01/16(土) 21:54:06.18
これを直すんですよね?
Name: "{group}\たかしのジャンケン"; Filename: "{app}\JankenGUI.exe";
Name: "{group}\ReadMe.txt"; Filename: "{app}\ReadMe.txt";
Name: "{group}\License.txt"; Filename: "{app}\License.txt";
Name: "{commondesktop}\たかしのジャンケン"; Filename: "{app}\JankenGUI.exe";
Name: "{group}\アンインストール"; Filename: "{uninstallexe}";
2016/01/16(土) 21:58:08.41
{ }がついたものは直す必要ない。
[Files]の記述はどうなってる?
614takasi
垢版 |
2016/01/16(土) 21:59:43.12
[Files]はありません[Setup]と[Icons]のみです
2016/01/16(土) 22:03:53.38
ファイルがインストールされていない。>>592をやり直して。
616takasi
垢版 |
2016/01/16(土) 22:13:40.06
これで良いでしょうか

[Files]
Source: "JankenGUI\bin\Release\JankenGUI.exe"; DestDir: "{app}";
Source: "JankenGUI\ReadMe.txt"; DestDir: "{app}";
Source: "JankenGUI\License.txt"; DestDir: "{app}";

[Registry]
Root: HKCU; Subkey: "Software\Takashi"; Flags: uninsdeletekeyifempty
Root: HKCU; Subkey: "Software\Takashi\JankenGUI"; Flags: uninsdeletekey
617takasi
垢版 |
2016/01/16(土) 22:17:09.20
[Files]
Source: "bin\Release\JankenGUI.exe"; DestDir: "{app}";
Source: "ReadMe.txt"; DestDir: "{app}";
Source: "License.txt"; DestDir: "{app}";
こうでした
2016/01/16(土) 22:17:41.38
JankenGUI.issは、フォルダJankenGUIの中にあるんだろ? だったら
Source: "License.txt"; DestDir: "{app}";
じゃないかい?
2016/01/16(土) 22:19:04.50
>>617
それでOK。テストに入りなさい。
620takasi
垢版 |
2016/01/16(土) 22:20:47.16
問題なくインストールでき、アンインストール時にレジストリが削除されることを確認しました

_(:3」∠)_
2016/01/16(土) 22:24:11.12
pushしたら今日はここまで。おやすみ。
622takasi
垢版 |
2016/01/16(土) 22:33:30.36
pushしました本日もありがとうございましたおやすみなさい_(:3」∠)_
623takasi
垢版 |
2016/01/16(土) 22:36:16.91
ツールの使い方が全くわからない辛い・・・
2016/01/17(日) 13:09:32.88
JankenGUIのプロパティの「公開」タブをクリックして、マイナー
バージョンを1にし(1.1)、Releaseバージョンをビルドしなさい。
プログラムに変更が有った場合、プログラムをバージョンアップしないと
インストーラがファイルを更新しないことがあるので注意。
JankenGUI.issをInnoEditXで開いて[Setup]タブをクリック。
「デフォルトのスタートメニューグループ名」を「たかしのジャンケン」にしなさい。
2016/01/17(日) 13:15:15.24
[Languages]タブをクリック。リストを右クリックして、名前を「Japanese」にし、言語ファイルで「Languages」→「Japanese.isl」を順に選んで「OK」。
[Setup]タブをクリック。「基本情報」と「情報」のバージョンを1.1にしなさい。
「基本情報」の「出力」の「セットアップファイルの出力時の名前」を
「tjanken-1.1-setup.exe」にしなさい。古いsetup.exeは削除。
.gitignoreで「tjanken-*-setup.exe」を無視するように設定しなさい。
2016/01/17(日) 13:21:21.93
JankenGUIを自由に改良しなさい。1つ改良するたびにgit add, git commitしなさい。
改良に失敗したら「git checkout (ファイル名)」で1つ元に戻しなさい。
2016/01/17(日) 15:28:59.15
次はインストーラなしのパッケージを作ってみよう。
プログラムのインストールができない環境の利用者はインストーラが使えない。
だから、インストーラなしのプログラムもそれなりに需要がある。
2016/01/17(日) 15:32:42.17
次のような内容のバッチファイル「pack-bin.bat」を作れ。

set DIR=tjanken-bin
del /Q /S %DIR%
copy bin\Release\JankenGUI.exe %DIR%
copy ReadMe.txt %DIR%
copy License.txt %DIR%
pause
2016/01/17(日) 15:39:39.09
pack-bin.batをダブルクリックすると、tjanken-binフォルダが作成され、
必要なファイルがコピーされる。
このフォルダを右クリックして「送る」→「圧縮(zip形式)」を選ぶと、
このフォルダが圧縮されたzipファイルtjanken-bin.zipができる。
これの名前を変更し、tjanken-1.1-bin.zipにすると、
インストーラなしパッケージが完成する。
.gitignoreにzipファイルとtjanken-binフォルダを無視するように
「*.zip」「tjanken-bin」を設定しなさい。
2016/01/17(日) 18:24:22.58
たかし半角になっててワロタw
631takasi
垢版 |
2016/01/17(日) 20:15:43.13
おはようございます
21時から始めます
632takasi
垢版 |
2016/01/17(日) 21:36:43.63
>>628でpack-bin.batを作りダブルクリックしましたがフォルダは作られませんでした
代わりにtjanken-binというファイルが出来ました
フォルダのなりぞこないでしょうかこれは
2016/01/17(日) 21:42:09.33
>>632
delとcopyの間にmkdir %DIR%を忘れてた。
できたファイル消してやり直して。
634takasi
垢版 |
2016/01/17(日) 21:47:26.64
>>629まで完了しました
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況