C♯相談室 Part19

このエントリーをはてなブックマークに追加
923デフォルトの名無しさん:04/12/14 13:09:28
こういう、論理的な思考ができない香具師はプログラムを組むのを
やめた方がいいね。それもシェアウェアにするなんて、あつかましいにも
程がある。
924デフォルトの名無しさん:04/12/14 13:12:22
>>922
アフォ?
925デフォルトの名無しさん:04/12/14 13:12:56
有料のソフトウェアを作るのに、情報だけは2ch他で只で得ようってか。
なんて調子のいい香具師なんだろう。
926デフォルトの名無しさん:04/12/14 13:13:36
>>895
おまえ女だろ。
927時刻厨房(895):04/12/14 13:21:29
そんなにきついことゆうなよ。
あなたたちだって、ソフト作ってがっぽり
設けてるんでしょ!!
928デフォルトの名無しさん:04/12/14 13:22:22
以降は放置で。
929デフォルトの名無しさん:04/12/14 13:23:45
NPTサービスを識別してるわけではないのだから、同じURLでLAN内の別のネットワークにつなげるように偽装することは十分叶ですが。
930元842:04/12/14 13:25:29
>>929
サンクスコ!
なんか難しそうだから、やっぱフリーソフトにしておきます。
靭性、いつも挫折の連続だな。
GMTだかNTPだかよーわからへんし。
931デフォルトの名無しさん:04/12/14 13:30:27
誤字の使い方からして自演まる分かりなのに
932デフォルトの名無しさん:04/12/14 13:32:19
(´-`).。oO(シェアウェアとか不正使用を防止とかいうキーワードを入れずに質問すればいいのに・・・)
933デフォルトの名無しさん:04/12/14 13:32:37
C#で関数を作成するときに、VBのOptionalのような機能ってありますでしょうか?


関数名(引数1,Optional 引数2 = 1000)

↑↑↑引数2は省略可能。省略した場合は、1000が代入される。
934デフォルトの名無しさん:04/12/14 13:34:13
>>933
ない。
「それがやりたい場合は、引数構成の異なる同名の関数を作れ」という設計思想らしい。
935デフォルトの名無しさん:04/12/14 13:34:16
あるよ
936デフォルトの名無しさん:04/12/14 13:45:35
enum test
{
key1 = 0
key2 = 1
}
のtype.key1を、int型で関数に渡す場合
(int)type.key1 と書くのが一般的でしょうか
937デフォルトの名無しさん:04/12/14 13:47:12
取りあえず代案を示してみたまえ。
938デフォルトの名無しさん:04/12/14 13:51:32
enumのbase-typeになんでstringを指定してーよ
939936:04/12/14 14:17:28
>>938
??意味が分りません・・。
940デフォルトの名無しさん:04/12/14 14:26:33
上のほうでNTPがどうこうという話が出てたので便乗なのですが
NTPパケットをbyte配列で受信したのを32ビットとか16ビットワードとか
切り分けて読み出すスマートな方法ってないでしょうか?
c/c++だと構造体にキャストして一発なのだが、c#じゃどうやるのが一般的
なんでしょう。
941940:04/12/14 14:28:33
c/c++でもエンディアンの問題で一発ってわけでもないですね
942デフォルトの名無しさん:04/12/14 14:33:30
一般ユーザ向け商用アプリ(パッケージまたはシェアウェア)でC#ってどうよ
リバースエンジニアリング問題とかどうしてる?
943デフォルトの名無しさん:04/12/14 14:35:12
>>914
俺は今作ってるフリーソフトが完成したら難読化して公開するつもり。
944デフォルトの名無しさん:04/12/14 14:40:04
>>943
難読化ツール何つかってますか?
945デフォルトの名無しさん:04/12/14 14:53:58
>>944
フリーソフトの公開ぐらいだったらVS.NET2003に付いてるDotfuscator CEでいいんじゃないかと思ってます。
徹底的にやりたいのであればPEですが、高い・・・。
946名無しさん♯:04/12/14 15:21:06
次スレ
http://pc5.2ch.net/test/read.cgi/tech/1103005153/l50

なんかスレ消費早いですね。( ゚д゚)
947デフォルトの名無しさん:04/12/14 15:27:48
前回と言い、微妙にスレ立てが早いな。
948デフォルトの名無しさん:04/12/14 15:36:56
950で次スレを立てる国の人なんだろう
949731:04/12/14 16:56:00
遅くなりましたが、ありがとうございました。
結局>>745を買ったんですがほとんど文法ばっかりでした…
みなさんのアドバイスを聞かなかったのを反省しています。
それで、もうひとつ本を買うとしたらどれがいいですか?
あまり高くなくてGUI中心のをお願いします。
わがままばかりですが、よろしくお願いします。
950デフォルトの名無しさん:04/12/14 17:26:12
ちょっとしたオブジェクトの永続化作ろうと思ってるんですが、知恵貸してください。
大量のオブジェクト使う必要あって、メモリに入りきらないので永続化してファイルに落とそうと思っています。
これはプロセス終了後の永続かもかねます。
動作時に最近使用したオブジェクトをリストの上に上げて下方にあるオブジェクトをファイルに落とすという形をとろうとしてますが、このリストの管理とマルチスレッドに関してどうするか考えてます。

generics<class T> ObjProxi{
T  m_t=NULL;
bool m_isObjectValid;
}

interface Permanentable{
void ToBinary();
void FromBinary();
}
class ConcreateObject:Permanentable{

こんな感じでConcreateに対してのアクセスはProxi 通して行いますが、そこでメモリ上になければファイルからの復帰をするつもりです。
Proxiに対してアクセスした際にオブジェクトの有効順位を上げるつもりなんですが、そこでの効率(・∀・)イイ!!やり方考え中です。マルチスレッドアクセスも考慮するつもりです。
(・∀・)イイ!!知恵あればご教授ください。
951デフォルトの名無しさん:04/12/14 17:28:00
>>949
C#は文法がわからないとGUIもわからない。
952デフォルトの名無しさん:04/12/14 17:58:19
>>947-948
このスレは950以降は無法地帯
953デフォルトの名無しさん:04/12/14 22:12:44
っていうか変な人がいるから危機感のため行動したと思われ
954斉藤 ◆kvYxWFRquQ :04/12/15 18:57:50
>>953
ちょっと飲み過ぎた。風に当たってくるよ。
955デフォルトの名無しさん:04/12/15 23:41:35
C#でOracle9iのデータベースでプログラムしてます。
OracleDataReader使用してSQLでデータ取得するんですが、
DBの文字コードがUTF8でVARCHAR2の値を取得する場合に
GetOracleString+ToStringで取得します。

この時に"〜"(波ダッシュ)をリッチテキストボックスに表示するんですが文字化けします。
調べたら、書き込み時と読み込み時でコードが変わってしまってます。
大丈夫な部品もありました。

これは自分でコード変換する必要があるんでしょうか?

956デフォルトの名無しさん:04/12/15 23:54:23
957デフォルトの名無しさん:04/12/16 17:07:05
Forms.DataGridのセル内の文字列を選択不可にしたいのですが、

DataGridTextBoxColumn l_DataGridTextBoxColumn = new DataGridTextBoxColumn();
l_DataGridTextBoxColumn.TextBox.Enable = false;
l_DataGridTableStyle.GridColumnStyles.Add(l_DataGridTextBoxColumn);

などとしても変化がありません。
リストボックスやリストビューのサブ項目のように表示のみで選択も編集もさせないように
することはできないのでしょうか?

よろしくお願いします。
958デフォルトの名無しさん:04/12/16 20:58:47
, 8.7663E+00, 1.3733E+00,
, 8.7663E+00, 1.3733E+00,
, 8.7663E+00, 1.3733E+00,
, 8.7663E+00, 1.3733E+00,
な感じのデータ続くCSVにデータを書き加えて
, 8.7663E+00, 1.3733E+00,追加内容1
, 8.7663E+00, 1.3733E+00,追加内容2
, 8.7663E+00, 1.3733E+00,追加内容3
, 8.7663E+00, 1.3733E+00,追加内容4
ってするにはどうしたらいいですか?

やっぱり既存ファイルから読み込みながら新しいファイルに1行ずつ
元の内容+追加内容を書いていくのが一番スマートなんでしょうか?
959デフォルトの名無しさん:04/12/16 21:01:28
まあ、そうだろうね。
メモリの圧迫も最小限で済むし。
960958:04/12/16 21:18:43
csvからdatasetに読み込んであるのでさくっと追加できないかなー
っと淡い期待を胸に書き込んだんですが、素直に新規ファイルに一行ずつちまちま書きます。

ありがとでした。
961デフォルトの名無しさん:04/12/17 14:38:06
マルチスレッドで困ってるのですが、あるフォームを作成したスレッドが現在のスレッドかどうか調べる方法はないでしょうか?
962デフォルトの名無しさん:04/12/17 14:41:10
取りあえずInvokeなげとくってわけにはいかんか。

Thread.CurrentThread.Nameでユニークな名前を付けるとか。

どう困ってるのか書けば意外な解決が見つかるかも知れない。
963デフォルトの名無しさん:04/12/17 14:57:06
非同期処理としてスレッド推奨なのに、肝心要のフォームがスレッド非対応というのはきついよな、
まだWin32時代の再入の方がスッキリしているというか・・・
964デフォルトの名無しさん:04/12/17 15:08:17
InvokeRequiredをトレースしまくれ
965デフォルトの名無しさん:04/12/17 17:06:04
>>961
delegate 作って InvokeRequired とかで出来ると思うけど、Invokeが必要かどうかを
実行時に判断しなくてはならないような状況で Invoke 使うときははデッドロックしない
ように気をつけてね。

FormA.a() in ThreadA が FormB.b() in ThreadB を invoke して、FormB.b() 呼び出し
実行中に ThreadA に属する何かの delegate を Invoke しようとするとデッドロックするから。
966デフォルトの名無しさん:04/12/17 17:52:02
>>961
GetWindowThreadProcessId()呼び出してウィンドウのスレッドIDと現在のスレッドIDを比較するとかは?
967デフォルトの名無しさん:04/12/17 18:16:33
Win32APIから呼び出し可能なDLLをC#で作りたいのですが
そのあたりの資料ってどこにありますか?
968デフォルトの名無しさん:04/12/17 19:57:23
COMか?
リファレンスでCOMの資料嫁
どうせ徒労におわるだろうけど。
969967:04/12/17 20:06:47
public static int add(int a, int b);
をexportできればそれで十分なんですが
とりあえずCOM周りを調べてみます。
ありがとうございます。
970デフォルトの名無しさん:04/12/17 23:22:05
ATLだろ
971デフォルトの名無しさん:04/12/18 01:12:39
>>965
少なくともwindowsではGUI作成するスレッドが複数というのは間違ってると思うが
972デフォルトの名無しさん
>>971
さすがネイティブ開発陣の言うことは違うな

Java だとスレッド関係ないから('A`)