トップページ⇒tech
1001コメント320KB

C#, C♯, C#相談室 Part75

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん2012/09/06(木) 23:11:33.73
前スレ
C#, C♯, C#相談室 Part74
http://toro.2ch.net/test/read.cgi/tech/1342241550/

Visual Studio 2010 Express
http://www.microsoft.com/japan/msdn/vstudio/express/default.aspx

Visual Studio 2012 Express
http://www.microsoft.com/visualstudio/11/ja-jp/products/express
01531502012/09/13(木) 22:02:28.70
>>151
アンカー間違えました
0154デフォルトの名無しさん2012/09/13(木) 22:06:42.37
>>152
varの代わりにDateTimeと書くだけ。他は2.0基準。
たかが2行だけだろ。
0155デフォルトの名無しさん2012/09/13(木) 22:07:16.29
StringBuilderに入れてInsert
Substringで繋ぐ
お好きな方をどうぞ

どっちも小奇麗ではない
小奇麗な方法がよければ青い鳥を探して言語を変えよう
ここにはありませんのだ
0156デフォルトの名無しさん2012/09/13(木) 22:09:06.78
手間ってどういうこっちゃ
ヘルパメソッドにでもすればいいだろ
毎回コピペとかすんなよ?
0157デフォルトの名無しさん2012/09/13(木) 22:12:04.27
>>151で手間とか言ってたら一体何ができるというのか
01581502012/09/13(木) 22:25:13.01
皆さんありがとうございました
0159デフォルトの名無しさん2012/09/13(木) 22:25:28.91
スライスができる言語ならもう少しマシには書けるかもな
ま、ないものねだりという奴だな

汚いインターフェースが嫌なら自分でラッパーを書けと
リーダブルコードには書いてあったな
0160デフォルトの名無しさん2012/09/13(木) 22:58:33.33
こうか

"|" + "20120913".Insert(6, "-").Insert(4, "-") + "|"
01611502012/09/13(木) 23:18:31.68
ありがとうございます
誰が書いてもすっきりと書けないなら、とりあえず安心です
0162デフォルトの名無しさん2012/09/14(金) 00:02:30.15
DataTable.Columns.Add("カラム名")として、データ型を省いた場合、その列にはObject型みたいな感じでなんでもはいるのですか?
0163デフォルトの名無しさん2012/09/14(金) 03:21:34.09
>>162
ここに質問するよりMSDNでも見て自分で調べた方が早いだろうに
http://msdn.microsoft.com/ja-jp/library/52xzw8tf
既定では、新しい列の DataType は文字列になります。
0164デフォルトの名無しさん2012/09/15(土) 00:26:57.74
プロパティと列挙対の違いというか、メリット・デメリットってなんなんでしょうか。
今のプロジェクトで別クラスに定義した
Enumをprotected EnumDefine.hoge
と宣言して使ったり
protected EnumDefine.hoge { get, set };
としたり
private string _hoge = string.empty;
public string hoge
{
get { return hoge; }
set { hoge = value; }
}
としたりしてます
でもどれも画面遷移や情報を保持する為だけでどうせ継承やoverrideするならprotectedなメンバ変数でいいじゃんめんどくさい・・・と思ったりします
0165デフォルトの名無しさん2012/09/15(土) 00:31:46.45
意味が分からない
プロパティ…メンバの一種
列挙体…型の一種
全く次元の違うものなんだけど何がどう同じだと思うの?
0166デフォルトの名無しさん2012/09/15(土) 01:02:19.90
大域的に共有する定数だから外部宣言するんであって
ローカルで使うものなんかどうしようが誰も止めねえよ勝手にしろ

プロジェクトが個人のものでないなら頑張って説得しろ
お前が神になれ
0167デフォルトの名無しさん2012/09/15(土) 01:14:24.25
僕が・・・新世界の神に?
0168デフォルトの名無しさん2012/09/15(土) 02:11:29.15
たとえば、客に1ライセンス1,000円でソフトを出したとします。
1台インストールごとに1,000円とします。

しかし、経費を浮かす為に悪意のある客が
コピーしてこっそり2台目にインストールをするのを未然に防ぎたいと
考えていますが、何か良いアイデアはありますか?

0169デフォルトの名無しさん2012/09/15(土) 02:13:12.79
呪いとか
0170デフォルトの名無しさん2012/09/15(土) 02:20:01.18
サーバー側で同時接続数制限とかでいいだろ
0171デフォルトの名無しさん2012/09/15(土) 02:36:54.25
>>168
PC固有情報を獲得して配布元に送りライセンスキーを生成しておく。
ライセンスキーを販売すればよい。
ここで問題はPC固有情報だが、Cドライブのボリュームシリアル番号かNICのデフォルトMAC番号が妥当だろう。後者の取得方法は知らないが。
0172デフォルトの名無しさん2012/09/15(土) 02:56:08.11
竹島問題で韓流スターが消える?

 韓国の李明博(イミョンバク)大統領が竹島に上陸して以降、日韓関係が悪化しています。この影響は政治だけでなく、
エンターテインメント業界にも響いています。K−POP旋風はブームの域を超え、一ジャンルとして定着しつつ
ありましたが、ここに来て“韓流はずし”の流れが起きているのです。

芸能界への影響、ジワジワと
 李大統領が竹島に上陸したのが8月10日。その直後にはロンドン五輪の男子サッカー
3位決定戦で、試合後に韓国選手が「独島は我々の領土」というボードを掲げる事件を起こしました。その後、同14日
には李大統領が天皇陛下に謝罪を要求する発言をしたことで、一気に対立構造が鮮明になりました。

 エンタメ界で具体的にアクションが起きたのは、BS放送の2局が放送していた韓国のドラマを延期したのが最初です。
これは出演していた韓流スター、ソン・イルグクが竹島を目指す水泳リレーに参加したのが理由でした。それ以外にも、
ジワジワと影響は出ています。

 K−POP歌手が出演したある音楽番組には「なぜ韓国人を出すんだ」という苦情が数百件寄せられたそうですし、
大手レコード会社は新たなK−POP歌手の日本デビュー発表を予定していたのですが、それも無期限延期になったと
聞きます。さらに、韓国人スターが出演するCMは軒並み放送が控えられています。

 ある芸能関係者は「事態はかなり深刻です。民放ではすでに、CMの関係から韓国人を出演させない動きが起きています。
いまの状況が続けば、コンサートも今後は開きづらくなるでしょう」と話していました。昨年は東方神起、KARA、
少女時代の3組が出場した年末のNHK紅白歌合戦から、K−POP勢が消える可能性もあります。

http://www.yomiuri.co.jp/otona/people/artiste/20120912-OYT8T00726.htm?from=osusume
0173デフォルトの名無しさん2012/09/15(土) 03:33:21.56
>>170
それだとてっとりばやく出来そうですね。

>>171
ありがとうございます。
チャレンジしてみます。

なんとしても不正使用を防止したいです。
0174デフォルトの名無しさん2012/09/15(土) 10:49:55.61
て
0175デフォルトの名無しさん2012/09/15(土) 15:07:19.07
privateなデータメンバxに対する値の設定と取得以外になんの作用も持たないpublicなプロパティーって、
データメンバxをpublicにするのと何が違うの?
0176デフォルトの名無しさん2012/09/15(土) 15:13:16.42
後からロジックを含めようとした場合のコストが違う
0177デフォルトの名無しさん2012/09/15(土) 15:17:26.49
シリアライズとかプロパティグリッドとか扱いが違うものいっぱいだよ。
0178デフォルトの名無しさん2012/09/15(土) 15:19:53.73
>>175
後から「やっぱりgetだけでsetは無しにしよう」って変更が楽チン♪
0179デフォルトの名無しさん2012/09/15(土) 15:23:44.21
てか、publicフィールドってあまり意味ないと思う。
参照渡しができるくらいかな。
プロパティのほうが便利でわかりやすいし。
0180デフォルトの名無しさん2012/09/15(土) 15:25:54.50
だから俺は基本protectedフィールドとpublicプロパティばかり書く癖が
ついちゃったよ。こういう変な癖仕事でやるとまずいんだろうけど。
0181デフォルトの名無しさん2012/09/15(土) 16:02:09.65
Kdrive上にソースコードをおいて

自宅と職場で作業出来る様にしてるんだけど
これって不味いかな?


何が心配かというとセキュリティー的にどうかな?
パスワードは20文字以上設定してるわけではあるんだけど。
0182デフォルトの名無しさん2012/09/15(土) 16:14:03.75
まず就業規則の情報管理規定がどうなってるか調べるのが先だ
このスレはその後で利用してくれ

願わくば次がないことを祈るばかりだ
0183デフォルトの名無しさん2012/09/15(土) 16:18:59.76
アプリを100回だけ使用可能にする

場合にその数値を管理するとしたら
レジストリが常套手段ですかね?

逆アセンブルされたらレジストリの名前がばれてしまって
一発ですけど、エンドユーザでそこまでする人はまずいないかと思ってますが。
0184デフォルトの名無しさん2012/09/15(土) 16:21:21.70
個人で出来ることなんてせいぜいレジストリが関の山で高が知れてる
が正解
0185デフォルトの名無しさん2012/09/15(土) 16:28:28.81
レジストリの相当深部に
キー名と値を設定してやるか。

逆アセンブルされたら
さすがに諦めるしかないね。
0186デフォルトの名無しさん2012/09/15(土) 16:33:50.39
世の中にはProcessMonitorって便利なものがあって…
0187デフォルトの名無しさん2012/09/15(土) 16:36:46.83
>>183
単純な起動失敗はマジヤバイ一発でライセンス条件分岐箇所が割れて回避パッチを当てられる
不正使用ダイアログメッセージを問答無用で出すのも同様でダイアログメッセージやダイアログ表示処理あたりから即ライセンス条件分岐箇所を絞り込まれる見込み
というわけで解読の手間を増やすのにもいろいろ工夫があるYO
0188デフォルトの名無しさん2012/09/15(土) 16:46:34.14
>>187
ライセンスチェックメソッドを1つ用意して
処理の要所要所で逐一判定するようにします。

あと、質問なんですけど
たとえば自分で

aaa.exe というバイナリを作成したとして
それにパッチをあてる、
というのは具体的にはどういう手順で作成するのでしょうか?

参考サイトがあれば教えて下さい。
不正使用を防止するためには、自ら不正使用をするための
知識を身に着ける必要があると感じたためです。
0189デフォルトの名無しさん2012/09/15(土) 17:11:23.55
>>188
スレチ。
0190デフォルトの名無しさん2012/09/15(土) 17:15:43.33
>>183
起動するたびにインターネットに接続して、サーバー側で回数保持するとか。
0191デフォルトの名無しさん2012/09/15(土) 17:21:45.45
>>190
クライアント側の改ざんで回避可能
0192デフォルトの名無しさん2012/09/15(土) 17:23:39.20
>>190
それいい手だね。

>>191
どうやって改ざんする?
0193デフォルトの名無しさん2012/09/15(土) 17:24:14.64
一部のビジネスロジックをサーバ側に移行
0194デフォルトの名無しさん2012/09/15(土) 17:25:52.43
>>192
クラックの初歩だ
NOPで埋めてEAXにTRUE入れるだけ
0195デフォルトの名無しさん2012/09/15(土) 17:31:11.72
何かしらの処理はしないと偽装サーバー使われるだけだな
0196デフォルトの名無しさん2012/09/15(土) 17:35:01.00
C#ってほんとパッケージ向きではないよね。
重要な部分をネイティブで書くのはどう?
0197デフォルトの名無しさん2012/09/15(土) 17:38:22.00
頒布時に公開鍵と秘密鍵を生成して公開鍵を配布。
また、頒布毎に異なる ID も渡しておく。
頒布時に渡した ID をサーバーに登録しておく。

クライアント起動毎に公開鍵で暗号化した ID をサーバーに送信。
サーバーは秘密鍵で復号化して ID が正しいか確認。
+ 複合不可 ⇒ NG
+ ID が未登録 ⇒ NG
+ 起動回数が 100回以上 ⇒ NG
サーバーは該当 ID の起動回数を一つ増やして、起動許可を秘密鍵で暗号化してクライアントに返信。
クライアントは返信された起動許可情報を公開鍵で復号化して正しく復号化できれば、
アプリケーションを起動。

どう改竄すれば回避できるの?
チェックして部分をすっ飛ばすとか言うのはなしとして。
0198デフォルトの名無しさん2012/09/15(土) 17:40:53.95
本当にそれしかやってないなら1回だけ本当のサーバーと認証して
それ以降は偽装サーバーからトークン返して終わり
毎回違うトークン返さないと駄目
0199デフォルトの名無しさん2012/09/15(土) 17:42:12.16
>>197
なんか凄い本格的だね。
0200デフォルトの名無しさん2012/09/15(土) 17:42:46.41
>チェックして部分をすっ飛ばすとか言うのはなしとして。

基本的に一番多い攻撃はチェック部分すっ飛ばす攻撃だと思うんだが
そこ避けたら議論する意味もあんまなくね
0201デフォルトの名無しさん2012/09/15(土) 17:47:53.79
つか、前にもあたけど
弥生会計ですら逆アセンブルして
ソースコード筒抜けなんだけどやっぱ.NETでパッケージ開発はダメなのかねぇ。

潤沢な資金を背景に開発されたソフトにも
かかわらずソースコード筒抜けって。

exeを加工すれば決算書インチキできるんじゃね?

C++で開発せにゃならんか。
0202デフォルトの名無しさん2012/09/15(土) 17:52:27.26
>>198
確かにそうだな、忘れてた。
クライアントから、起動日時でも付加して送るようにしよう。

>>200
いや、レジストリよりも改竄しにくいと言いたいだけ。
そういう攻撃について議論したいなら、止めやしないけど。
0203デフォルトの名無しさん2012/09/15(土) 17:55:36.75
そもそもだが
偽装してまでソフトを使える様にするやつっているのか?

犯罪だろーが!!
0204デフォルトの名無しさん2012/09/15(土) 17:57:18.48
>>201
ビジネスソフトはあまりそういうところは気にしてないよ。
そもそもソフト自体よりも、保守で儲けるビジネスだから。

あと決算書なんてソフト改造しなくてもいくらでもインチキできるよ。
0205デフォルトの名無しさん2012/09/15(土) 18:31:27.06
>>204
なるほどね。

ソフトに細工した方が何かあったときに
ソフトのバグとでっちあげることができていいかなぁーなんて思ったのだw
0206デフォルトの名無しさん2012/09/15(土) 18:31:46.50
システムデバッガ対策とカーネルデバッガ対策を入れておけば
クラックを生業とする人たちであってもかなり嫌がらせられると聞いた
そのように聞いただけなのでどうするのかは知らん
0207デフォルトの名無しさん2012/09/15(土) 18:55:47.39
クラックを生業

↑
こいつらの仕事は何なのさ?
0208デフォルトの名無しさん2012/09/15(土) 18:57:04.26
>>202
>クライアントから、起動日時でも付加して送るようにしよう。

よくよく考えたら、クライアントよりサーバーから返す方に付加しないとダメだわ。

>>205
メーカーもバカじゃないから、バグとかでっち上げられたら総力を挙げて調べるだろ。
細工とかわかったら賠償もんだぞ。
大抵のライセンス条項に改竄禁止の項目あるし。
0209デフォルトの名無しさん2012/09/15(土) 19:04:33.32
>>207
生業って言ってんだからそれが生業だろうよ
自己言及的だが
0210デフォルトの名無しさん2012/09/15(土) 19:27:02.76
>>209
どっから金がはいんねん。
0211デフォルトの名無しさん2012/09/15(土) 19:38:36.53
>>201
うちの会社では.NETでパッケージ商品作ってるよ
お客さんはwindowsを使うので精一杯で、そんな所まで頭回ってないみたいよ

よっぽど有名なソフトじゃない限りは、誰もリバースエンジニアリングなんてしない
0212デフォルトの名無しさん2012/09/15(土) 19:44:15.26
>>211
お客さんの会社の中にもシステム部があるわけでしょ?
そいつらにこっそりやられない?

まぁー、忙しいだろうからそーいうことする暇自体無い可能性も高いけどね。
0213デフォルトの名無しさん2012/09/15(土) 19:45:13.96
.NETってビルドツール普及してないよね
何をするにしてもM$が強力なツールを提供しているっていうのもあるけど、
選択肢が多いJavaが少しうらやましい
0214デフォルトの名無しさん2012/09/15(土) 19:51:42.16
>>212
>まぁー、忙しいだろうからそーいうことする暇自体無い可能性も高いけどね。
うん、この答えに反論の余地がないよね
0215デフォルトの名無しさん2012/09/15(土) 20:08:49.71
社内でんなことやるよりも社外に任せたほうがコストも安いんだろうな
次期システムを自社製に切り替え、そのベースに使うっていうような
盗人はいないと思いたい
0216デフォルトの名無しさん2012/09/15(土) 20:23:49.84
うちはやってますぜ
他社製品の分解、チップ解析・ファームのリバースエンジニアリング
0217デフォルトの名無しさん2012/09/15(土) 20:27:32.69
相手の会社より競合の心配した方がいいよな
完全に相手を間違えてる
0218デフォルトの名無しさん2012/09/15(土) 20:49:12.79
MSBuildもAntも好きじゃねえ
XMLは手書きするもんじゃない
0219デフォルトの名無しさん2012/09/15(土) 21:09:44.65
MSBuildは手書きするもんじゃないからともかく
NAntってMonoにも捨てられるしもう存在価値がないんだから
せめて手書きフレンドリーにしろよ
0220デフォルトの名無しさん2012/09/15(土) 21:13:08.49
>>216
反社会的集団乙
0221デフォルトの名無しさん2012/09/15(土) 21:19:40.66
やらない理由がないでしょう?
こっちは許諾なんか締結した覚えがないのだからね
0222デフォルトの名無しさん2012/09/15(土) 21:27:07.82
殺さないと誓約書は書いていないから
って殺人を犯す基地外と同じなのが >>221
0223デフォルトの名無しさん2012/09/15(土) 21:32:03.89
中韓の思想か?
0224デフォルトの名無しさん2012/09/15(土) 21:39:23.15
勝つための思想です
負け犬君
0225デフォルトの名無しさん2012/09/15(土) 21:47:32.98
>>208
>大抵のライセンス条項に改竄禁止の項目あるし。
リバースエンジニアリング条項は違憲(合衆国も日本もね)の疑いもあるしね。
0226デフォルトの名無しさん2012/09/15(土) 21:48:30.54
>>216
ほう、FPGA はどうする?
0227デフォルトの名無しさん2012/09/15(土) 21:49:23.28
企業なんて仲良し集団とは違うからそんなもんだろうな
0228デフォルトの名無しさん2012/09/15(土) 21:56:28.65
大体クリーンルーム設計って言葉がある時点で解析は行われていることを意味してるだろ
0229デフォルトの名無しさん2012/09/15(土) 21:57:52.38
>>225
リバースエンジニアリングと改竄じゃ大違いだろ。
0230デフォルトの名無しさん2012/09/15(土) 21:59:12.71
働いたことないからクリーンルーム設計なんて言葉知りません
0231デフォルトの名無しさん2012/09/15(土) 22:04:35.71
改竄についてはデジタル署名すれば改竄した人に改竄を通知する事ができるよ








解決にならないかorz
0232デフォルトの名無しさん2012/09/15(土) 22:09:13.15
なあ夏休みっていつまで?
0233デフォルトの名無しさん2012/09/15(土) 22:21:13.90
9月いっぱい
0234デフォルトの名無しさん2012/09/15(土) 22:24:01.16
毎日が日曜日
0235デフォルトの名無しさん2012/09/16(日) 01:53:53.44
毎日が日曜日って超サイコー
0236デフォルトの名無しさん2012/09/16(日) 02:15:37.53
毎日がバレンタイン
0237デフォルトの名無しさん2012/09/16(日) 04:23:47.79
毎日はエブリディ
0238デフォルトの名無しさん2012/09/16(日) 10:13:27.60
毎日が給料日
0239デフォルトの名無しさん2012/09/16(日) 10:44:25.63
日雇いさん?
0240デフォルトの名無しさん2012/09/16(日) 10:49:24.38
日雇いプログラマですが何か?
0241デフォルトの名無しさん2012/09/16(日) 11:06:39.12
連絡先教えてください。
0242あぼーんNGNG
あぼーん
0243デフォルトの名無しさん2012/09/16(日) 11:39:53.70
ではまず、仕事をお願いする前に、専用パソコンを50万円で買っていただきます
お願いする仕事はこのパソコンでしかできませんので、必ず買っていただくことになります
0244デフォルトの名無しさん2012/09/16(日) 11:44:22.12
働いた分で後払いで払いますのでまずはパソコンを持ってきてください
0245デフォルトの名無しさん2012/09/16(日) 12:04:26.96
なんなのここ
くだスレ?
0246デフォルトの名無しさん2012/09/16(日) 12:08:47.57
無邪気なイスラム教信者wwwwwwwwwww
0247デフォルトの名無しさん2012/09/16(日) 13:06:36.91
VS 2010 English 版を使っていますが、

コード中の現在フォーカスのあたっている位置(点滅する箇所)のフォントを
青背景に白文字にしたいのですが、


Environment > Fonts and Colors > Display items: の中の
どの項目にて設定出来るのでしょうか?
0248デフォルトの名無しさん2012/09/16(日) 13:14:09.51
Visual Studioスレはここじゃない
0249デフォルトの名無しさん2012/09/16(日) 13:17:31.85
CSharperなら知ってるかと思ったのですが。
0250デフォルトの名無しさん2012/09/16(日) 13:48:44.89
知ってるか知らないかの問題じゃないとまで言わないと分からないか?
0251デフォルトの名無しさん2012/09/16(日) 13:50:29.33
英語版って…割れかよ?
0252デフォルトの名無しさん2012/09/16(日) 13:51:55.64
元MS社員からのプレゼント
■ このスレッドは過去ログ倉庫に格納されています