[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 2chのread.cgiへ]
Update time : 04/29 18:13 / Filesize : 234 KB / Number-of Response : 944
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

くだすれ.NET(超初心者向け)



1 名前:デフォルトの名無しさん [2006/10/07(土) 17:28:33 ]
このスレッドは
どんなに「くだ」らない.NETプログラミングに関する質問でも
誰かが優しくレスをしてくれる「すれ」っどです。
質問者自身何がなんだか分からない質問でも勇気をもって書き込んで
ください。お礼は.NETアプリケーションの普及と初心者の救済を
お願いします。

701 名前:デフォルトの名無しさん mailto:sage [2008/09/02(火) 12:14:10 ]
>>700
それだと複数バージョンのExcelに対応できないだろ>>693読め。

702 名前:DD mailto:sage [2008/09/02(火) 13:11:52 ]
>>701
あ、その通りですね(^^ゞ
以前Excelを扱った時はSpreadsheetGearを使ったので
COMを使った操作は良く分からないです。。。
サードパーティのライブラリを使用したくないとのことですので
これは使えませんね。
お役に立てずm(__)m

703 名前:デフォルトの名無しさん mailto:sage [2008/09/02(火) 15:25:27 ]
> comobj = null
意味ないじゃんw

704 名前:DD mailto:sage [2008/09/02(火) 15:26:49 ]
>>703
ですね(^^ゞ
はった後私もそう思いました。

705 名前:デフォルトの名無しさん mailto:sage [2008/09/02(火) 19:07:53 ]
>>701
バイナリになってしまえば問題ないんだよ。
「複数バージョンのExcelに対応できない」のはあくまで開発環境のみ。

一部バージョンが違うと例外が発生するメソッドがあったりするけど、
そこだけ個別に対応すれば問題ない。


706 名前:697 mailto:sage [2008/09/02(火) 21:11:51 ]
いろいろなご解答ありがとうございます。

今回は複雑なエクセル操作をするわけではないので、
すべてリフレクションでやるクラスを作って、それを使いまわそうと思います。
ありがとうございました。

707 名前:デフォルトの名無しさん mailto:sage [2008/09/02(火) 21:33:39 ]
VBでクラスライブラリ作った方が簡単だと思うけどな。

708 名前:デフォルトの名無しさん mailto:sage [2008/09/02(火) 23:26:51 ]
>>705
え?まじで?
うっそーん?


709 名前:デフォルトの名無しさん mailto:sage [2008/09/04(木) 20:20:35 ]
VBAではセルの文字列の色をCellsのCharactersで調べられるのですが
.NETではどうればいいのでしょうか?

msdnにはRangeにCharactersがあるのですが
書いてみると定義がありませんと
エラーがでます。
using Excel = Microsoft.Office.Interop.Excel;

var xls = new Excel.Application();
var book = xls.Workbooks.Open(略
var rng = (Excel.Range)book.sheet.Cells[1, 1];

こんな感じでRangeクラスを取得してます。
ちなみにVS2008SP1を使っています。



710 名前:DD mailto:sage [2008/09/08(月) 10:36:38 ]
>>709
rng.Font.Color
で取得できるのでは?

711 名前:709 mailto:sage [2008/09/08(月) 19:52:53 ]
>>710
すいません、質問の内容を微妙に間違えてました。
取得したいのは文字列のn番目の文字の色なんです。
Characters(4, 1).Font.ColorIndex
と書くとVBAでは4文字目の色の取得や設定が
出来るんです。

それだと多分セルに設定された文字列の色になるんですかね?

712 名前:デフォルトの名無しさん mailto:sage [2008/09/08(月) 21:09:12 ]
net導入するときはVB6を残したままでもいいですか?

713 名前:DD mailto:sage [2008/09/09(火) 11:55:55 ]
現在Visual Studio 2005 C#で以下のようなことを実現したいと考えております。
DropDownList(値にはIDが入っている)で選択した項目に一致するレコードをGridViewに表示する。
DropDownListにはALLという項目があり、これを選択すると
すべてのレコードを表示する。
このようなことをやりたいのですが、どうやったらいいのか分かりません。
現状ではALLを静的に追加しており、その値は0となっています。
また、GridViewのデータソースにSqlDataSourceを割り当て、
SqlDataSourceのSelectParameter(ID)にDropDownListの
SelectedValueを設定し、ALL以外の項目を選択した場合は
正常に動作しています。
どなたかご教授ください。

714 名前:DD mailto:sage [2008/09/09(火) 12:06:29 ]
自己解決しました。
bunise.seesaa.net/article/91995844.html
このページを参考にしてやってみてはいたのですが、なかなかうまくいかず
質問させていただきました。
結局は、SqlDatasourceのCanselSelectOnNullParameterをFalseにするのを
忘れていただけでした(^^ゞ
お騒がせいたしました。

715 名前:デフォルトの名無しさん mailto:sage [2008/09/09(火) 23:36:55 ]
.NET2005環境を利用しています。

Private Sub ShowMsgBox(ByVal PromptText As String, Optional ByVal Type As Integer = 0, _
Optional ByVal Title As String = "")
に対して、配列CmdArgsの1番目(0番目ではない)〜3番目の要素を
引数として渡したいのですが、2番目・3番目の要素は省略される可能性があります。

呼び出しについて例としてPerlで書くと、「$ShowMsgBox(CmdArgs[1..$#CmdArgs]);」のように
不定要素数の配列をインデックス1から最後まで指定して投げることが出来ますが、
VBではどのような形で呼び出せばいいでしょうか。

要素数を判別して、条件毎に呼びだし方を変更するしかないでしょうか。

716 名前:デフォルトの名無しさん mailto:sage [2008/09/09(火) 23:58:56 ]
>>715
ShowMsgBox(ParamArray args as Object())でも多重定義しとくとか。
まあどのみちその中で要素数を調べてToStringして別のシグネチャのShowMsgBoxを
呼び出すコードを書くわけで、同じといえば同じかもしれないけど。

っていうか趣味の問題かもしれんがOptionalは使わない方がいいんじゃないか?

717 名前:715 mailto:sage [2008/09/10(水) 00:20:30 ]
>>716
なるほど、即レスありがとうございます。

要素数判定で呼び出し方を返る、という形で書いてみましたが
かなり冗長な呼び出し方になってしまい、本末転倒な感じがしてきました。

If CmdArgs.Length > 3 Then
ShowMsgBox(CmdArgs(1), CmdArgs(2), CmdArgs(3))
ElseIf CmdArgs.Length > 2 Then
ShowMsgBox(CmdArgs(1), CmdArgs(2))
Else '←必ず0、1番目の要素は定義されている
ShowMsgBox(CmdArgs(1))
End If

ShowMsgBox側で配列としてまとめて受け取ってから、
処理した方が良さそうですね・・・。

>Optionalは使わない方がいいんじゃないか?
C感覚で勉強中だったので、多重定義が可能なことを忘れていました。
もう少し勉強してみます(`・ω・´)

718 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 01:26:13 ]
ドレミファソラシドの周波数を算出するため、十二平均率
ja.wikipedia.org/wiki/%E5%B9%B3%E5%9D%87%E5%BE%8B#.E5.8D.81.E4.BA.8C.E5.B9.B3.E5.9D.87.E5.BE.8B
の周波数比を計算させたいのですが、ExcelのPOWER関数のような累乗根計算の方法はありませんか?

719 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 01:36:09 ]
Math.Pow



720 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 02:17:05 ]
>>719は累乗と累乗根の違いすら分かってないから参考にしないように。

721 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 03:17:17 ]
ニヤニヤ

722 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 08:55:11 ]
Math.Pow( >>720, 1.0/12.0);


723 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 11:37:07 ]
>>720
やる夫

724 名前:718 mailto:sage [2008/09/10(水) 12:12:07 ]
>>719,722
ありがとうございます!
以下のようにしたら十二平均律の周波数を算出できました。

Dim i As Integer, fr(12) As Double
For i = 0 To 12
    fr(i) = Math.Pow(Math.Pow(2, i), 1.0 / 12.0)
Next

725 名前:722 mailto:sage [2008/09/10(水) 12:35:12 ]
>>724
素直に
Math.Pow( 2.0 , i / 12.0)
と書くべし

726 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 12:49:08 ]
ワロタ

727 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 12:53:46 ]
素直なのは>>724なんじゃない?
整理したら>>725だけどさ

x  _
 √a  = a^(1/x)

であるから、

x  __
 √a^b = (a^b)^(1/x)

となり、十二平均律では、x = 12, a = 2, b = (1から12)となるので、

12 __
 √2^b = (2^b)^(1/12)

bをiとして、

2^i = Math.Pow(2,i)

これにより、

Math.Pow(Math.Pow(2, i), 1.0 / 12.0)

728 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 13:02:47 ]
意味が分からずに言われたとおりに簡略化して書いてる奴って職場だとホント困るんだよな・・・。

729 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 13:04:56 ]
中学数学でしょ



730 名前:722 mailto:sage [2008/09/10(水) 13:09:00 ]
主観入ってたわ。
頭の中で
x  __
 √a^b = a^(b/x)
になってた。

というわけで、>>725を訂正して、
Math.Pow()を2回呼ぶより、整理して1回にしたほうが良いと思う。
分かりにくかったら無視してくれ。

731 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 13:15:30 ]
Math.Powは見るからに処理長そうだしねえ
慣れるまでは理解するまでベタ書きが無難だが
慣れたら呼び出す回数を減らすことを勧めたい

732 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 13:44:50 ]
問題にはならないだろうけど、一応精度の問題もある

733 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 17:19:53 ]
ここぞとばかりにOOoのMath使ってみたんだけど
ほんとハナクソだな・・・('A`)モウツカワネ

www1.axfc.net/uploader/Img/l/2296233703/Img_20227.gif

734 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 17:30:52 ]
404 Not Found

735 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 17:32:29 ]
すまん、リファラ読んでるっぽいな。
www1.axfc.net/uploader/Img/so/20227

736 名前:デフォルトの名無しさん mailto:sage [2008/09/10(水) 20:34:53 ]
>>727
発想が逆立ちしてるよw
数学できない子にありがちだけど、問題を自分でわざわざ複雑にしてるよ。

12音階というのは2(1オクターブ)を対数軸上で12等分したもの、
というのが全ての出発点で12乗根√2っていうのはそこから導出した値に過ぎないんだよ。

対数軸(y = log(x))上の等差数列はxの世界では等比数列になる、って考えてもいいけど
普通は直感的に基準となる音からn番目の音の周波数は2の(n/12)乗倍だってわかるだろ。

737 名前:デフォルトの名無しさん mailto:age [2008/09/11(木) 16:35:43 ]
すみませんが、質問です。

Googleなどの検索エンジンで .NET の情報を効率よく集めるには、どのような
検索語にすればよいでしょうか?

ただ入力すると、.netというドメイン名にばかりヒットしてしまいます。


738 名前:デフォルトの名無しさん mailto:sage [2008/09/11(木) 16:40:29 ]
>>736
>数学できない子にありがちだけど、問題を自分でわざわざ複雑にしてるよ。
>数学できない子にありがちだけど、問題を自分でわざわざ複雑にしてるよ。
>数学できない子にありがちだけど、問題を自分でわざわざ複雑にしてるよ。

739 名前:デフォルトの名無しさん mailto:sage [2008/09/11(木) 16:43:02 ]
検索エンジンの使い方までサポートする幅広いスレだな

せめてVBで検索しろ



740 名前:デフォルトの名無しさん mailto:sage [2008/09/11(木) 16:53:14 ]
>>739
ありがとうございます。C#で検索することにしました。
.NETは別にC#だけではないのですが、関係ないページばかり見つかるよりマシです。


741 名前:デフォルトの名無しさん mailto:sage [2008/09/11(木) 16:55:30 ]
いやVisualStudioだろ

742 名前:デフォルトの名無しさん mailto:sage [2008/09/11(木) 17:14:38 ]
VisualStudio は .NET だけじゃないんじゃ?

743 名前:デフォルトの名無しさん mailto:sage [2008/09/11(木) 17:23:41 ]
だから.NETと組み合わせるんじゃ?
でもVisualStudioじゃ取りこぼし多そうだがなあ

744 名前:デフォルトの名無しさん mailto:sage [2008/09/11(木) 17:40:51 ]
うん、組み合わせのつもりで言ったぞ
VisualStudio .NET 2005 +言語名なら確実だろう

745 名前:デフォルトの名無しさん mailto:sage [2008/09/11(木) 17:45:11 ]
マイクロソフトは一般名詞を商標にして
いつの間にか自社製品を示す言葉にするのが得意だからな。

746 名前:デフォルトの名無しさん mailto:sage [2008/09/11(木) 17:54:08 ]
そうだね。あれは本当に迷惑。
昔の話だけど .doc という拡張子は元々テキストファイルのものだったのに、
勝手に MS Word のものにされた。
Word という名前といい、いまだに腹が立つ。


747 名前:デフォルトの名無しさん mailto:sage [2008/09/11(木) 17:56:00 ]
それはそれとして、ノイズが混じらなくて、取りこぼしをなるべく少なくする
には、どんな検索語がいいかな。
VisualStudioは、ちょと取りこぼし多そう。


748 名前:デフォルトの名無しさん mailto:sage [2008/09/11(木) 18:14:16 ]
そろそろスレチじゃね
.NET資料の探し方とは言え、googleの検索仕様に左右される話題だし

749 名前:デフォルトの名無しさん mailto:sage [2008/09/11(木) 18:31:12 ]
正規表現を使うって発想がないWindowsの天下で
わざわざ正規表現を実装する検索サイトはないよな

あったら凄まじく便利なんだが



750 名前:デフォルトの名無しさん mailto:sage [2008/09/11(木) 18:34:42 ]
有るわけがない。
文化の問題ではない。

751 名前:デフォルトの名無しさん mailto:sage [2008/09/11(木) 18:59:48 ]
ここで正規表現が使える奴が居るかも怪しい

752 名前:デフォルトの名無しさん mailto:sage [2008/09/11(木) 19:45:57 ]
.NETにも正規表現クラスあるけどちょっと使い方がまどろっこしい

753 名前:デフォルトの名無しさん mailto:sage [2008/09/11(木) 23:27:37 ]
正規表現は一種のツールだからな。
プログラミングサイドで実装されてても、
OS側が環境として提供してくれないと・・・

754 名前:デフォルトの名無しさん mailto:sage [2008/09/11(木) 23:44:32 ]
>>746
外国だとテキストファイルに.docはマイナーだったって聞いている。
わざわざかぶること前提で.docに決めたわけなかろう。

755 名前:デフォルトの名無しさん mailto:sage [2008/09/12(金) 00:04:36 ]
少なくとも.NETはトップレベルドメイン.netとかぶること前提だけどな

756 名前:デフォルトの名無しさん mailto:sage [2008/09/12(金) 09:57:40 ]
しかし readme.doc は国内外を問わず添付されてた気が

757 名前:デフォルトの名無しさん mailto:sage [2008/09/12(金) 10:03:53 ]
拡張子の制約で使い勝手を縛るのはWindowsとhttpのMIMEtypeだけだよ。

758 名前:デフォルトの名無しさん mailto:sage [2008/09/12(金) 10:26:40 ]
知ったようなことを言う


759 名前:デフォルトの名無しさん mailto:sage [2008/09/12(金) 11:59:51 ]
反論すら成立してない



760 名前:デフォルトの名無しさん mailto:sage [2008/09/12(金) 19:55:34 ]
そういやマックのファイルっていまだにマックバイナリ付いてるの?

761 名前:デフォルトの名無しさん [2008/09/13(土) 09:07:27 ]
ビジュアルベーシック.NETでOSは作れますか???

762 名前:デフォルトの名無しさん mailto:sage [2008/09/13(土) 09:09:50 ]
>>761
少なくともバカは治せない

763 名前:デフォルトの名無しさん mailto:sage [2008/09/14(日) 03:50:40 ]
>>760
マックバイナリが何なのか理解してないね

764 名前:デフォルトの名無しさん mailto:sage [2008/09/14(日) 12:43:56 ]
>>763
意味が分からない。
どうせ絡むならはぐらかしたような言い方せずに全部言えよ。
「何なのか理解していない」のが君の方でなければなw

765 名前:デフォルトの名無しさん mailto:sage [2008/09/14(日) 12:51:38 ]
調べればいいだろ
「いまだに」とかつける勘違い名人には教えません

766 名前:デフォルトの名無しさん mailto:sage [2008/09/14(日) 13:04:24 ]
>>765
一般的事実なら調べれば分かるかもしれないが、
馬鹿なお前さんの独善的「思い込み」の意味をどう調べろって言うのかね。

本当、最近こういうセカイ系的メンタルの奴が多くて困る。

767 名前:デフォルトの名無しさん mailto:sage [2008/09/14(日) 13:08:06 ]
というか、何も具体的なこと言えないから最初から人に絡むなよ。

768 名前:デフォルトの名無しさん [2008/09/14(日) 23:24:20 ]
C++スレで自分では答えられないザコから誘導されてきました


VC++ 2005 Express
自分のアプリから、別のアプリが起動してるかどうか見たい



207 名前:デフォルトの名無しさん[] 投稿日:2008/09/14(日) 20:48:40
iniファイルは釣りでした。
起動してるプロセス(リスト)の取得教えて

210 名前:デフォルトの名無しさん[sage] 投稿日:2008/09/14(日) 21:59:34
くだすれ.NET逝け

769 名前:デフォルトの名無しさん mailto:sage [2008/09/15(月) 03:05:51 ]
うん。見れば



770 名前:デフォルトの名無しさん mailto:sage [2008/09/15(月) 04:23:42 ]
>C++スレで
やっぱりC++/CLIとC++の区別が付いてなかったのか、VIPに逝け

771 名前:デフォルトの名無しさん [2008/09/15(月) 19:45:31 ]
質問です。
WINDOWS XP使用で、コンパイラはBorlandC++compiler5.5です。
インストールしたあとパスの設定で、
%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;C:\Program Files\Common Files\GTK\2.0
とあったところに\bin;c:\Borland\Bcc55\binと付けました。
なのに、実際コマンドラインでメモ帳を開こうと>C:\WINDWS\NOTEPAD.EXEと打ち込んでも、
指定されたパスは見付かりませんとでます。(NOTEPAD.EXEはCディスクの中のWINDWSに入れてあります。)
他にもカレントディレクトリを変えようとして、>cd ○○と打っても、
確かにあるはずなのに指定された(ryになってしまいます。
誰か助け手ください(涙)

772 名前:771 [2008/09/15(月) 20:08:40 ]
スレ違いのようでしたので、他に聞いて見ます。
すみませんでした。

773 名前:デフォルトの名無しさん [2008/09/16(火) 22:58:28 ]
質問ですお願いします。

C#でUDP通信するソフト作ってるんですが、
通信時の暗号化に3DES使おうとプラグロミングして
reflectorで覗いたらキー丸見えで萎えました。

クラックを防げる暗号化ってどう実装したらよいでしょうか
制限事項としては
(制限1)クライアントで暗号化したものをサーバで複合できる(逆も然り)
(制限2)上記制限1のため、暗号化キーは固定する必要あり?

3DESのキーをまた暗号化してしまうとか、
キー生成アルゴリズムを埋め込んで、キー自体を持たないとか
外部にキーを持たせてdll参照するとか色々考えたんですが
結局トレースされたらばれてしまうのでティンときませんでした。

道かよろしくお願いします。


774 名前:デフォルトの名無しさん mailto:sage [2008/09/16(火) 23:04:49 ]
3DESじゃなきゃだめなの?
公開鍵じゃだめなの?

775 名前:デフォルトの名無しさん mailto:sage [2008/09/16(火) 23:09:06 ]
公開鍵も考えたんですが、ようは、誰かが作った偽クライアントがサーバに接続されるのを防ぎたかったので
鍵自体バレると・・・と思ったけど

今よく考えたらreflectorでソース見れる時点で暗号化どうのこうののまえに偽クライアントは作れてしまいますね。。。
.netで作るのをやめる事にします。

どうもありがとうございました。


776 名前:デフォルトの名無しさん mailto:sage [2008/09/16(火) 23:42:59 ]
これは酷い思考停止

777 名前:デフォルトの名無しさん mailto:sage [2008/09/16(火) 23:44:50 ]
ネイティブで作ったって一緒。
まあ解析しにくいことは否定しないが。

本当に安全にやるなら、SSLとかでやってるのと同じような仕組みを作らにゃならん。


778 名前:773 mailto:sage [2008/09/16(火) 23:59:23 ]
すみません775は私です。

私は生産者側なのでクラックにはあまり興味ないですが、.NETの形態上ソースが見えてしまうのは仕方がないんですよね。
今まで、いかに破られない認証をするかを考えてきましたが、認証の部分だけ省いてソースをコピペしたらちゃんと動いてしまうんですよね。

生産対象物がきわめて専門的なBtoBのようなソフトであれば、ソースをほしがるような客先は少ないです。
逆に、保守のことを考え、わざわざソースをセットで渡してしまうこともありますが、
たとえばネットゲームのような、完全なBtoCまたはCtoCの形を取るソフトであれば、不特定多数のクライアントがいるわけで
そのなかには必ず中身を解析したり、場合によっては不正な手順でサーバにアクセスする人たちが出てきます。

そういった人たちのモチベーションに反比例するのが解析の難しさ、めんどうさだと思います。
もちろん従来のネイティブコードでクラックできないわけではないですが、.NETよりはめんどうです。
そうした意味では、.NETという、言ってしまえば実行ファイルのソースが公開されているプラットフォームを避けるのも一つの手かなと思いました。

長くなりましたが、つまり、知りたいことは、
1).NETでClient/Server作ってる人は、どういう実装をされてるんでしょうか。
2)そもそも.NETは使わないんでしょうか。

度々すみませんがもう少し知恵をお貸しください。

779 名前:デフォルトの名無しさん mailto:sage [2008/09/17(水) 00:04:57 ]
だから本当に確実な認証が必要なら、パスワードか証明書かICカードかUSB鍵か、
とにかくソースを解析しても不可能な方法をとるわけだよ。

>いかに破られない認証をするかを考えてきましたが、認証の部分だけ省いてソースをコピペしたらちゃんと動いてしまうんですよね。
それってどんな認証だよっていうか認証って言わないだろそんなの。




780 名前:デフォルトの名無しさん mailto:sage [2008/09/17(水) 00:12:17 ]
ん?
ひょっとして接続が許可された人間でも偽クライアント(というかその許可情報)を使用した接続とか
できないようにしたいって言ってる?
そんなことは基本的には不可能だよ。

たとえばソース解析するまでもなくそのクライアントアプリをコピーして別のマシンで動かした場合はどうなるんさ?
※パスワードやらその他認証用の情報も基本的に同じようなもの


781 名前:773 mailto:sage [2008/09/17(水) 00:12:45 ]
>>779
すみません話を混ぜて書いてしまいました。
>いかに破られない認証をするかを考えてきましたが、認証の部分だけ省いてソースをコピペしたらちゃんと動いてしまうんですよね。
これは、キーさえわかっていれば他の部分コピペして新たに偽クライアント作ったらサーバ側からは偽クライアントだとはわからないという意味です。

パスワードか証明書かICカードかUSB鍵がいらない偽クライアントが出来てしまえばサーバ側では対処できないだろうという意味で書きました。
ネットゲームのBOTツールとかがそれにあたるんでしょうか。

782 名前:773 mailto:sage [2008/09/17(水) 00:15:19 ]
>>780
そうです!それが言いたかったんです。
クライアントアプリの複製は問題ないです。

クライアントアプリを騙って不正なパラメータでアクセスをされるのを防ぎたいんです。

783 名前:デフォルトの名無しさん mailto:sage [2008/09/17(水) 00:27:03 ]
不可能。
だってクライアントが正しいかをサーバ確認できるのは通信内容によってのみだから。
基本的にクライアントプログラムが本物かを「確実に」確認する方法はない。


784 名前:773 mailto:sage [2008/09/17(水) 00:42:33 ]
だとすると、暗号化の議論の中では邪道とされている、処理の隠蔽しか暫定的な回避策は無いですね。
.NETには不可能ですが。

逃げにしかなりませんが、Client側はネイティブな別の言語に移植する事にします。
また、暗号化のクラック対策としては、定期的にClient/Serverともアップデートをかけて、
実行前にキーを変更する仕組みにしようと思います。

勉強になりました。
ありがとうございました。

785 名前:デフォルトの名無しさん mailto:sage [2008/09/17(水) 00:47:00 ]
つーか難読化とか耐タンパとかでググれって誰も言わないのは何でなんだぜ?

786 名前:773 mailto:sage [2008/09/17(水) 01:03:15 ]
>>785
そんなのがあったのですね。勉強不足でした。

早速フリーの難読化ソフトで実験してみたら、実行は出来るのにコンパイルが通らないソースが出来上がり感動しました。
さすがに定数は難読化されなかったですが。
ソフトの種類によっていろいろなのかな。

ちょっと色々調べてみます。ありがとうございました。

787 名前:デフォルトの名無しさん mailto:sage [2008/09/17(水) 01:42:37 ]
本格的には使いにくいからじゃね?


788 名前:デフォルトの名無しさん mailto:sage [2008/09/17(水) 14:36:03 ]
javaseで掲示板へ投稿するスクリプト作れますか?
ポストリクエストを少々いじるのはjavaeeになるのでしょうか?
よろしくお願いいたします


789 名前:デフォルトの名無しさん mailto:sage [2008/09/17(水) 19:48:25 ]
ここ数件の 書き込みに 対して スレタイ 欲嫁 と 言ってやりたい




790 名前:デフォルトの名無しさん mailto:sage [2008/09/17(水) 20:29:49 ]
Form2が閉じた時にForm1を更新するにはForm.Closedイベントを使えばいいのはわかるんだけど、
Form1から、Form2が”閉じてる”て状態を捉えるにはどうすればいいのですか?
Form2.Enabled = Falseじゃ駄目みたいなんだけど
VB.NETです

791 名前:デフォルトの名無しさん mailto:sage [2008/09/17(水) 21:02:32 ]
Visible

792 名前:デフォルトの名無しさん mailto:sage [2008/09/17(水) 21:53:24 ]
IsDisposed

793 名前:デフォルトの名無しさん mailto:sage [2008/09/17(水) 22:10:00 ]
どういう動作を意図してるかわからんけど
閉じてるかどうか判断して閉じてたら開きなおすならこんな漢字化

Public Class Form1

  Dim f2 As Form2 = Nothing

  ''' <summary>
  ''' Form2をShowする
  ''' </summary> '''
  Private Sub ShowForm2()
    'Form2をはじめて開く場合
    If f2 Is Nothing Then
      f2 = New Form2
    Else
      'Form2が閉じてた場合
      If f2.IsDisposed Then
        f2 = New Form2
      End If
    End If
    f2.Show(Me)
    f2.Activate()
  End Sub

End Class


794 名前:デフォルトの名無しさん mailto:sage [2008/09/17(水) 23:11:49 ]
>>790
Application.OpenFormsで現在開いている(表示されている)フォームのコレクションが取得できる。
こんなかに、Form2が入っているかどうか見ればいいかと思われる。

795 名前:デフォルトの名無しさん mailto:sage [2008/09/17(水) 23:21:14 ]
790です
色々ありがとうございました
勉強になりました
意図していた動作は、Form1にある、Form2をshowするボタンを、Form2が開いてる間は無効にする、というものでした。


796 名前:デフォルトの名無しさん mailto:sage [2008/09/17(水) 23:42:27 ]
>>795
それだと状態を常に監視する為にコールバックしないといけないような

というかそもそもその動作ならForm2が開いているかどうかは関係ないよ

button1が押されたときに
button1.Enabled=False

Form2が閉じるときに
DirectCast(Me.Owner, Form1).Button1.Enabled = True


797 名前:796 mailto:sage [2008/09/17(水) 23:44:17 ]
途中で送信してしまった
スマソ

Form2を開くボタン(仮にbutton1)のスコープをForm2から参照可能にしておいて
>>795みたいなかんじでやれば、Form2の状態など監視せずにスマートにいけるんじゃね

798 名前:797 mailto:sage [2008/09/17(水) 23:45:59 ]
安価間違いグダグダスマソorz

×>>795みたいなかんじ
>>796みたいなかんじ

799 名前:デフォルトの名無しさん mailto:sage [2008/09/17(水) 23:46:33 ]
>>795
そういうのはForm1の適当なメソッドにForm2の適当なイベント(例えばFormClosed)を
紐付けするんだよ。

VBならForm2の参照をWithEventsで持つ方法でもいい。

というか、くだすれか何か知らんけど、
こんなレベルの話は入門書を一冊軽く斜め読みすれば分かることで
掲示板で人に聞くような内容じゃない。



800 名前:デフォルトの名無しさん mailto:sage [2008/09/17(水) 23:49:26 ]
799
まぁまぁ「くだすれ」なんだから
ごもっともだけども。






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<234KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef