ふらっとC#,C♯,C#( ..
[2ch|▼Menu]
252:250
08/09/04 23:42:04
>>251
ちょww何??
簡単な方法あるんだったら教えてよ

253:デフォルトの名無しさん
08/09/04 23:42:58
多分スレッドを作らなければいいだけだと思うけど

254:デフォルトの名無しさん
08/09/04 23:46:32
マルチスレッド禁止


255:デフォルトの名無しさん
08/09/04 23:54:44
 スレッドとか消して
ボタン1の最初でテキストボックスにヌルを代入
のがループ2週目でまた”コントロールが作成されたスレッド以外のスレッドからコントロール 'textBox2' がアクセスされました”
なんで2週目なの?どうすりゃいいの?

256:デフォルトの名無しさん
08/09/04 23:55:50
うるちゃい

257:デフォルトの名無しさん
08/09/04 23:59:29
1周目と2周目で何が違うのか全くわからん
デバック無しだとどうもならないのにデバック有りだと止まるし

258:デフォルトの名無しさん
08/09/05 00:00:19
スレッドは理解するんじゃない、感じるんだ

259:デフォルトの名無しさん
08/09/05 00:03:03
ちゃんと再コンパイルしてるか?

260:デフォルトの名無しさん
08/09/05 00:10:02
だめだやっぱりできない
再コンパイル?ビルドはしてる
なんで順番どうりに代入してるはずなのに・・・2週目から・・・・

261:デフォルトの名無しさん
08/09/05 00:10:52
Control.CheckForIllegalCrossThreadCalls = false;

262:デフォルトの名無しさん
08/09/05 00:27:13
ソースさらせよ

263:デフォルトの名無しさん
08/09/05 00:36:40
プログラミングが下手な人って大抵説明や質問も下手だよね

264:デフォルトの名無しさん
08/09/05 00:54:28
君には向いてないとしか言い様がない

265:デフォルトの名無しさん
08/09/05 00:55:31
思考の整理ができないんだろ。
自分の頭の中がぐちゃぐちゃなのに、
コンピューターの中なんて理解できるはずがない。

266:デフォルトの名無しさん
08/09/05 01:04:31
初心者を煽る奴は死ぬべき

267:デフォルトの名無しさん
08/09/05 01:05:54
と初心者が申しております。

268:デフォルトの名無しさん
08/09/05 02:33:05
カッコつけてC#からやるからじゃね?やっぱ、基本はVBっしょ。

269:デフォルトの名無しさん
08/09/05 02:37:02
書き方違うだけで基本はほとんど同じだから。

270:デフォルトの名無しさん
08/09/05 02:38:14
いや、ポインタとか安易に使うと危ないよ

271:デフォルトの名無しさん
08/09/05 02:47:28
VBの話をする奴はスレを荒らしたいだけ

272:デフォルトの名無しさん
08/09/05 03:14:25
なんでそんなこまごまと別スレッドからコントロールにアクセスする必要があるんだ。
いろいろやるならひとまとめでメソッドにして、メソッド自体をInvokeで呼ぶとかできるだろ。

ま、いまだに何がしたいのか良く分からないんだけどな。


273:デフォルトの名無しさん
08/09/05 03:46:56
ちょっとこれを見てくれ
ニコニコ動画のアカウントが必要かもしれんが

URLリンク(com.nicovideo.jp)

274:デフォルトの名無しさん
08/09/05 05:14:38
ん、C#コミュ作れと?
それとも、なぜかJavaがDとC#を敵視してる所について突っ込むべきか?

って、C,C++もないのか。

275:デフォルトの名無しさん
08/09/05 05:26:06
見て欲しかったらアカも置いてけ

276:デフォルトの名無しさん
08/09/05 06:32:16
Perl,Python,Java,Ruby,D言語があってC#がなかったら
なんか負けた気になるじゃないか

277:デフォルトの名無しさん
08/09/05 10:56:16
教えてください。
カスタムボタンクラスで派生したカスタムボタンコントロールで
CustButton.PerformClick();
を実行してもクリックイベントが発生しません。
どうしたらイベントが発生する様になるのでしょうか?m(_ _)m

278:デフォルトの名無しさん
08/09/05 10:58:09
OnClickオーバーライドしてるとか

279:デフォルトの名無しさん
08/09/05 11:02:25
OnClickはオーバライドしてません。
ボタンをマウスで直接クリックしている場合は問題ありません。
PerformClick();を実行してもイベントが発生しないのです。

280:デフォルトの名無しさん
08/09/05 11:04:54
変数名でも間違えてるんじゃねーの?

CustButton1.PerformClick()とか

281:デフォルトの名無しさん
08/09/05 11:09:58
直接Buttonから派生してるんだったら変なことしてない限りは
なにも変わらないはずだけど

282:デフォルトの名無しさん
08/09/05 11:13:09
Enabledがfalseだとか

283:デフォルトの名無しさん
08/09/05 11:13:58
原因みつけました。(はじめから見つけられないお馬鹿な私TT)

public CustomButton()
{
// この呼び出しは、Windows.Forms フォーム デザイナで必要です。
InitializeComponent();

// TODO: InitComponent 呼び出しの後に初期化処理を追加してください。
//this.SetStyle(ControlStyles.Selectable, false);
}
こうしました。クラスを作った際、自動生成された様です。
this.SetStyle(ControlStyles.Selectable, true);
ご迷惑おかけしました。ありがとうございました。

284:デフォルトの名無しさん
08/09/05 12:00:37
namespace Wbhbh
{
public partial class Form1 : Form
{
private static System.Timers.Timer timer;

public Form1()
{
InitializeComponent();
}

private void button1_Click(object sender, EventArgs e)
{
textBox1.Text = null;

timer = new System.Timers.Timer(30000);
timer.Enabled = false;
Random rnd = new Random();
string a = rnd.Next(1, 5).ToString();
textBox1.Text = a;

昨日のなんだけど、これで2週目にtextBox1.Text = null;ここで
有効ではないスレッド間の操作: コントロールが作成されたスレッド以外のスレッドからコントロール 'textBox1' がアクセスされました。
ってなるんだけどどうして?どうしたら解決しますか?

285:デフォルトの名無しさん
08/09/05 12:04:09
System.Windows.Forms.Timerを使うか、
Control.invoke


286:デフォルトの名無しさん
08/09/05 12:08:33
ありがとう
invokeの使い方が昨日からよくわからないんだよな
button1_Click()にinvoke使えばいいの?

287:デフォルトの名無しさん
08/09/05 12:09:03
ぐぐれよ

288:デフォルトの名無しさん
08/09/05 13:35:32
つかタイマーでは何やってんの?
いまいち有り得ない使い方をしてそうだが…


289:デフォルトの名無しさん
08/09/05 13:59:40
private void button1_Click(object sender, EventArgs e)
{
textBox1.Text = null;

timer = new System.Timers.Timer(30000);
timer.Enabled = false;
Random rnd = new Random();
string a = rnd.Next(1, 5).ToString();
textBox1.Text = a;
timer.Elapsed += new ElapsedEventHandler(button1_Click);
timer.Interval = rnd.Next(1, 5) * 30000;
timer.Enabled = true; // timer

上の最後の産業を飛ばしてた
invokeとか全然わからんし・・・
なんでループでテキストを書き直すのができないんだ・・・

290:デフォルトの名無しさん
08/09/05 14:08:32
> timer.Elapsed += new ElapsedEventHandler(button1_Click);

一番重要なところで途切れてたのか……

291:デフォルトの名無しさん
08/09/05 14:09:08
はじめまして。
OpenCVを使って書いた関数をC#で使いたいのですが、
どのようにしたらよいのでしょうか?

開発環境は
Visual Stadio 2005
Visual C# 2005
Open CV
です。
またオススメの書籍などありましたら是非教えていただきたいです。


292:デフォルトの名無しさん
08/09/05 14:10:27
素直にWindows.Forms.Timer使えよ

293:デフォルトの名無しさん
08/09/05 14:11:58
>>289
ループじゃなくてタイマだろ?
取りあえずSystem.Timers.Timerの解説読めばスレッド使ってんのはすぐわかる。
で例外メッセージの一部「コントロールが作成されたスレッド以外のスレッド」辺りでググれば
Invokeの使い方とか見つかるだろ。

まあ素直にSystem.Windows.Forms.Timer使えよ。

294:デフォルトの名無しさん
08/09/05 14:24:04
ありがとう。
そうだ、Tickの使い方がわからなくてこっちでやったんだ
Forms.timerとの違いとかわからないんで調べてやってみる

295:デフォルトの名無しさん
08/09/05 14:29:25
その前にタイマの使い方が異常

296:デフォルトの名無しさん
08/09/05 14:32:45
その場しのぎの独学だから全然わからないんだ
みんなは何でこれがタイマの普通の使い方だとかわかるわけ?長い経験?

297:デフォルトの名無しさん
08/09/05 14:33:11
静的メンバにタイマセットしてイベントの度に作り直してセットし直しって、裏ですごい動きになってるぞ


298:デフォルトの名無しさん
08/09/05 14:37:32
でもほとんどコピーの羅列だよ?

299:デフォルトの名無しさん
08/09/05 14:38:12
別に経験長くなくても分かる
と思うけど頭の悪さは人それぞれだからなケケケ

まあTimerの機能、動きを普通に理解してりゃ明らか


300:デフォルトの名無しさん
08/09/05 14:39:57
コピーってなあに…?

301:デフォルトの名無しさん
08/09/05 14:40:12
C初めてから4ヶ月だぜ
まさか遅いのか?

302:デフォルトの名無しさん
08/09/05 14:40:52
↑おまえの頭の悪さは異常w

303:デフォルトの名無しさん
08/09/05 14:41:28
コピーはmsdnの部分的なコピー

今form.timerでやったらエラー無くなったみたい。ありがとう

304:デフォルトの名無しさん
08/09/05 14:51:59
>>296
普通の使い方云々はわからんが、
同じことをやるTimerインスタンスを何度も作り直してるのが不自然なのはわかる。

あと、“button1_Click”の中で自身をイベントハンドラに設定してるコードとかどうなんだろうな

305:デフォルトの名無しさん
08/09/05 15:34:43
>>291
>OpenCVを使って書いた関数
というのが何をさすのか分からんが、C/C++でOpenCVの関数を呼び出しているコードを流用したいのならば
dll形式でコンパイルしてDLLImport。

C#でOpenCVの関数を扱いたいだけならManagedOpenCVかShaperCVでググれ

306:デフォルトの名無しさん
08/09/05 15:45:01
部分コピーが危険なことくらい理解できるだろう?
いいから直したソース晒してみな。
高い確率でまだ異常だと思うから。

きっとみんなでよってたかって突っ込んで崖っぷちまで追い詰めてくれるぜ。


307:デフォルトの名無しさん
08/09/05 16:35:54
もしも自動車の部品を適当にぶった切って適当につなげてまともに走るのなら、そのプログラムは動くだろう

308:デフォルトの名無しさん
08/09/05 16:59:24
private System.Timers.Timer timer;
private Random rnd;

private void Form1_Load(object sender, EventArgs e)
{
timer = new System.Timers.Timer(30000);
timer.Elapsed += OnTimedEvent;
rnd = new Random();
}

private void button1_Click(object sender, EventArgs e)
{
timer.Enabled = !timer.Enabled;
}

private void OnTimedEvent(object source, System.Timers.ElapsedEventArgs e)
{
Invoke((Action)delegate
{
int num = rnd.Next(1, 5);
textBox1.Text = num.ToString();
timer.Interval = num * 30000;
});
}
こんな感じなことがやりたいんだと俺は予想するぜ

309:デフォルトの名無しさん
08/09/05 17:03:07
>>224
このファイルの共有アクセスの制御に関して質問です。

FileStreamによる制御では読み込みや書き込みなどの自分のファイルアクセス中の
アクセス制御を行うということだと思いますが、これを「こちらがファイルを開いて読み込み、
データを変更して次に書き込むまでの間」、ずっと誰にも書き込みさせないようにしたい
場合は、

そのFileStreamでOpenした状態をそのまま維持(=開きっぱなしに)しておくということで
実現することになるかと思いますが、その場合は何か弊害が起こりうるものでしょうか?

その場合は弊害がない(開きっぱなしにしないような)方法があるでしょうか?ありましたら
その方法を教えてください。

なお編集中という情報をどこかの専用ファイルに書いておいてそれを読んで先客がいたら
書き込まない、というような方法ですと、他のソフトで編集された場合は制御できないため
そうした方法ではなく、目的のファイルに対して直接アクセス制御する方法であることが
望ましいのでした。よろしくお願いします。


310:デフォルトの名無しさん
08/09/05 17:09:17
>>309
Lock
Unlock

311:デフォルトの名無しさん
08/09/05 17:19:57
public partial class Form1 : Form
{
static System.Windows.Forms.Timer myTimer = new System.Windows.Forms.Timer();

public Form1()
{
InitializeComponent();
}

private void button1_Click(object sender, EventArgs e)
{
textBox1.Text = null;
Random rnd = new Random();
myTimer.Tick += new EventHandler(button1_Click);

string a = rnd.Next(1, 5).ToString();
textBox1.Text = a;

myTimer.Interval = rnd.Next(1, 5) * 30000;
myTimer.Start(); Application.DoEvents();

これ直したコードです
もうエラーでてないけどおかしいところツッコミまくってください

312:デフォルトの名無しさん
08/09/05 17:25:53
>>310
どうもです!

FileStream.Lock メソッド
FileOpen 関数(VB用)

などあるようですが、いずれも読み取り中など、Openしている間の
アクセス制御のように思われるのですが、FileStream.Close() を
実行した後でもLockが効いている状態が実現できるでしょうか?


313:デフォルトの名無しさん
08/09/05 17:36:53
>>311
おかしすぎてワロタ
後で時間があったらつっこんでやるw


314:デフォルトの名無しさん
08/09/05 18:38:36
>>273-276
作れと?
なら、作るとも。
URLリンク(com.nicovideo.jp)

315:デフォルトの名無しさん
08/09/05 20:34:43
よくわからんがどうすりゃいいんだよ岩永さん

316:デフォルトの名無しさん
08/09/05 21:55:32
作っただけだから放置でもいいと思う。

317:デフォルトの名無しさん
08/09/05 22:12:09
>>311
とりあえず、ランダム使っちゃうと何が起こってるか把握できなくなるから、いったん除去って、

{
 //textBox1.Text = null;
 //Random rnd = new Random();
 myTimer.Tick += new EventHandler(button1_Click);

 // 変化がわかるように変更
 textBox1.Text += "a";

 myTimer.Interval = 10000;
 myTimer.Start(); // Application.DoEvents();
}

くらいに変更してみると、おかしいところの一部が分かると思うんだ……
もし、この動作を狙ってたとしたら余計なお節介失礼。

318:デフォルトの名無しさん
08/09/05 22:46:20
Timer作り捨てするとメモリリークするんじゃなかったっけ

319:デフォルトの名無しさん
08/09/05 23:47:28
>>308がちょっとかわいそう

320:311
08/09/06 07:07:18
>>317
俺は+=使ってないけど・・・内部ではそうなってるってこと?


要するにメモリ的に問題があると?

321:デフォルトの名無しさん
08/09/06 07:15:28
+=は脆弱性があるから使わないべき

322:311
08/09/06 07:31:30
じゃあタイマのメモリが問題なの?

323:デフォルトの名無しさん
08/09/06 08:20:49
>>321
まじ?

324:デフォルトの名無しさん
08/09/06 09:02:01
>>320
> textBox1.Text += "a";
のことを言ってる? これは何が起こるかわかりやすくするためかと……

イベントハンドラにイベント足し続けてるから、
発生してるイベントが指数関数的に増えてるよ、ってことを言いたいのだと思うのだけど、
実行してみた?


……>>319 も言うように、>>308 が綺麗なコードを書いてるので読んだらいいと思うよ、うん

325:デフォルトの名無しさん
08/09/06 09:27:50
>>323
釣られるな

326:311
08/09/06 09:48:08
317やってみたら時間が経ったらバグった
おんなじことがイベントハンドラで起こるってこと?
イベントハンドラの意味とかよくわかってないけど

327:デフォルトの名無しさん
08/09/06 09:56:39
>>326
>>311 でも同じような倍倍ゲームになってるというのは分かる?

328:デフォルトの名無しさん
08/09/06 10:18:01
>>327
ボタン1実行中にボタン1が実行で・・・って事ですか?

329:デフォルトの名無しさん
08/09/06 10:21:31
タイマー時刻が来るたびに += してたらそりゃなぁ。

330:デフォルトの名無しさん
08/09/06 10:25:45
てことは+=じゃなくて=ならいいの・・・かな?

331:デフォルトの名無しさん
08/09/06 10:30:51
>>330
eventだから = はできない。delegateむき出しならできるのだけど。

332:デフォルトの名無しさん
08/09/06 10:37:15
難しいな〜
結局>>308のやり方が正解なの?


333:デフォルトの名無しさん
08/09/06 10:52:20
・初期化の時
・ボタンを押した時
・タイマーで指定した時間が来た時
にそれぞれやることが混ざってるので、まずはそれを分けるべし。自分なりでいいから。

334:デフォルトの名無しさん
08/09/06 11:01:25
つまり、タイマーで時間が来た時
×ボタンをくりかえす
○ボタンそのものでなく、ボタンの中のやりたいことをくりかえす
ってことか


335:デフォルトの名無しさん
08/09/06 11:03:11
いや冷静にやりたいこと整理しなって。
毎回イベントハンドラに追加する必要がどこにある?
じゃ追加はだめなら=ならいい?って発想がもうおかしい。
=でいったい何するつもりだ?


336:デフォルトの名無しさん
08/09/06 11:04:12
JavaScript しか使ったことないのかな?

JSと違って、タイマーStart後は一定周期で毎回デリゲートが呼ばれる
タイマーを設定するのは最初の1回(Loaded中)のみでOK
ボタンの押下時にタイマー始めたいなら、+= を Loaded に、Start() を ButtonClick に
あるいは、if(timer.Tick == null) timer.Tick += xxx


337:デフォルトの名無しさん
08/09/06 11:07:58
そもそもタイマーはデザイン画面で貼りつければすむ話。
そしたらどっちのタイマーでも問題ない。
まWindowsタイマーでいいけどな。

イベントハンドラもデザイン画面で作ったらそれでしまい。


338:デフォルトの名無しさん
08/09/06 11:10:12
>>336それもちょっとおかしいぜ?

339:デフォルトの名無しさん
08/09/06 11:35:08
もうVBAでいいよ。やるきあるならVBだな。

340:デフォルトの名無しさん
08/09/06 11:48:12
何が違うんだよw
VBでも同じ結果になるのは目に見えてる。


341:デフォルトの名無しさん
08/09/06 11:49:13
JScriptもあるよw

342:デフォルトの名無しさん
08/09/06 11:51:24
VBならイベントを宣言的に作れる点?

343:311
08/09/06 12:11:25
private void button1_Click(object sender, EventArgs e)
{
timer1.Start();
}
private void timer1_Tick(object sender, EventArgs e)
{
textBox1.Text = "a";
}
もしかしてツールからフォームだしてダブルクリックして
これでいいの?

344:デフォルトの名無しさん
08/09/06 12:16:09
>>343
その状態で、Form1.Designer.csの
InitializeComponent()の中で何をやってくれているか観察してみ

345:デフォルトの名無しさん
08/09/06 12:19:52
>>343
意味はないけどそれであってるw
System.Windows.Forms.TimerはInvokeいらないよ

346:デフォルトの名無しさん
08/09/06 12:32:14
>>344
おおすげえwwこんなのがあったのかww

ちなみにこれの違いってなんなの?
this.button1 = new System.Windows.Forms.Button();
private System.Windows.Forms.Button button1;

347:デフォルトの名無しさん
08/09/06 12:44:46
上は式で下はメンバの宣言だから全く別種の要素だけど

348:デフォルトの名無しさん
08/09/06 14:01:14
>>343
そういうのがまあたいていの場合の普通のやり方。
ちょっといろいろデザイナ触ってみた方がいいんじゃないかな。


349:デフォルトの名無しさん
08/09/06 14:38:49
File.Move()って一つ一つファイルを移動しても
まとめて移動するのに比べてオーバーヘッドありませんか?

350:デフォルトの名無しさん
08/09/06 19:44:46
       r―――‐ 、
       |なにして遊ぶ?|
       `ー―v―― ''
           ∧,,∧  ∧,,∧
      ∧,,∧ (´・ω・) (・ω・`). ∧,,∧    r――――‐ 、
     ( ´・ω).(O┬O) (O┬O) (ω・´ )  < 公園でかくれんぼ!|
     ( O┬O ∧,,∧. ∧,,∧)┬O )   `─―――─‐ '
      ◎-J┴◎(  ´・) (・`  )┴し-◎
           ( .__ l) (l __ )
              `uロu'. `uロu'
       r――.ヘ―──―‐ 、
       |じゃあ公園まで競争だ! |
       `ー―――──‐ '



351:デフォルトの名無しさん
08/09/06 21:43:31
Visual C# 2008 でアプリケーションを作ったんですが、
うちでは動くのに、友人のPCだと動きません。

.NET Frameworkのバージョンが、うちは3.5で、
友人のPCが2.0なのが原因じゃないかと思うんですが、
下位バージョンの.NET Fameworkでも動くアプリを作るには、
どうすればいいのでしょうか?

352:デフォルトの名無しさん
08/09/06 21:45:26
プロジェクト→プロパティ
対象のフレームワーク

353:デフォルトの名無しさん
08/09/06 21:56:34
それやっても向こうに2.0 SP1入れるかバージョンリダイレクトかけるかしないと動かなくないか?

354:デフォルトの名無しさん
08/09/06 22:18:24
素直にsetup作ればいいのに。
なんだか昔のVBerみたいな偏屈に見えるよ。

ちなみに、SP1の機能使ってなければSPなしの2.0環境でも動くんじゃないの?
つーか2.0はWin2000や98用が今のところ用意されてないSP2とかもうグダグダだな。

355:デフォルトの名無しさん
08/09/06 23:24:16
C#でのASP関連の質問はどこで聞けばいいの?WebProg板にASP.NETスレあるけど、やたら過疎ってるみたいなんだけど。

356:デフォルトの名無しさん
08/09/06 23:45:26
C#でASP……できたっけ?

てのはともかくここでもそこでも好きにすりゃ良いんじゃね

357:デフォルトの名無しさん
08/09/06 23:55:57
>>353
なんでやねん
まあSPでの変更点に引っかかる可能性はわずかにはあるが。


358:396
08/09/07 08:59:27
エクスプローラの機能限定版(ドラッグ&ドロップが出来ないエクスプローラ)
的なファイル管理ツールを作ろうと思っています。
サンプルとなるものってどこかに無いでしょうか?
開発ツールはC#(VS2008)です。

359:デフォルトの名無しさん
08/09/07 09:13:23
C#とは直接関係ないですが、ユーザーコントロールの件。

VisualStudio のソース用のテキストエディタには左側にブレークポイントを
置くエリアがありますが、あれはPanelコントロールのようなものなんでしょうか?
あのような機能のものを作ろうとした場合、ソーステキスト側のスクロール、
Fontのサイズ、行間距離、折り返しの有無とその変化などにすべて対応する
必要がありますが、簡単に実現する方法はないものでしょうか?


360:デフォルトの名無しさん
08/09/07 09:37:16
やった事無いけど、テキストボックスにSendMessageで

EM_SETRECTで左に余白を作り
EM_GETFIRSTVISIBLELINEで先頭行の番号を取得し
EM_GETLINECOUNTで表示されてる行数を取得して・・とかやればいけるんじゃね?

361:デフォルトの名無しさん
08/09/07 10:55:56
>>359
煽るわけじゃないが、そんな調子でそんな高機能なユーザーコントロールを
作ろうと思ってるわけ?

ちょっと考えれば分かると思うが、たまたま君が実装したいと思っているに過ぎない機能を
都合よく「簡単に」実現してくれる既存のコントロールなんてあるわけないじゃん。

362:デフォルトの名無しさん
08/09/07 11:01:53
>>361
まだ夏休みですか

363:デフォルトの名無しさん
08/09/07 12:45:30
>>362
消えろゴミ

364:デフォルトの名無しさん
08/09/07 12:53:25
>>362
ところであなたは大学卒業しました?

365:デフォルトの名無しさん
08/09/07 13:02:04
フフ、>>364は大卒じゃないのよ

366:デフォルトの名無しさん
08/09/07 13:05:22
>>365=中卒ニート


367:デフォルトの名無しさん
08/09/07 14:28:28
Fラン共うぜぇよ

368:デフォルトの名無しさん
08/09/07 15:13:02
↑Gラン

369:デフォルトの名無しさん
08/09/07 16:02:47
Bラン

370:デフォルトの名無しさん
08/09/07 16:15:35
学歴話が好きな奴の人物類型というのは

(1) 学歴コンプレックスのある人間(秋葉原の事件の容疑者タイプ)
(2) 学歴以外に縋るものがないタイプ(かなり古いが宮沢喜一系)
(3) 学歴コンプの奴を煽って楽しむタイプ(マミーなんとか的な幼稚系)

こんなところか。
どっちにしろ他人よりもむしろ「救いがない本人自身を語ってるだけ」、という
簡単で明白な事実に気づくだけの知能が欠けているのは全てのタイプに共通しているようだな。

371:デフォルトの名無しさん
08/09/07 17:01:36
>>359
>簡単に実現する方法はないものでしょうか?

ありません。

".NET エディタ コントロール"で検索してみると
みんな苦労してるのがわかると思う。

372:デフォルトの名無しさん
08/09/07 17:23:37
>>370
そういうあなたは中卒ですか?

373:デフォルトの名無しさん
08/09/07 18:52:58
ごめんなさい、脳卒中です

374:351
08/09/07 23:10:19
>>352
>>353
>>354
遅くなりましたがありがとうございます。
プロパティから対象フレームワークの設定はできました。
友人のPCで試してみます。

375:デフォルトの名無しさん
08/09/08 02:07:17
何この自演臭い酷い流れは

376:デフォルトの名無しさん
08/09/08 02:09:34
黙れ自演厨

377:デフォルトの名無しさん
08/09/08 06:29:54
早く前の流れに戻らないかしら。

378:デフォルトの名無しさん
08/09/08 06:34:38
>>373
×ごめんなさい、脳卒中です
○ごめんなさい、中卒脳です

379:デフォルトの名無しさん
08/09/08 14:31:04
>>371
>ありません

やはりそうでしたか。

>".NET エディタ コントロール"で検索してみると
>みんな苦労してるのがわかると思う。

わかりました。どうもありがとうございました。ではまた。


380:デフォルトの名無しさん
08/09/08 15:38:29
C#2.0で質問です。

Winアプリを作成しようとしています。
WEBアプリであればSessionのコレクションに特定のKey名でシリアライズできるオブジェクトを入れて
各画面で遷移した後も使いまわせるようにできると思うのですが
Winアプリで同じようなことを実現するにはどのようにすればよいでしょうか?

エントリポイントの
static void Main()
{
}

この辺りでRunさせる前に作成して保持しておきたいのです。
何か良い方法があればご教授いただけませんか?

381:デフォルトの名無しさん
08/09/08 16:16:44
静的なHashtableにでも入れときゃいいんじゃない?
俺はやらんけど。


382:デフォルトの名無しさん
08/09/08 17:00:07
>>380
遷移実行は遷移を管理するObjectに依頼する。
画面は遷移引渡し用Method、遷移元取り込み用Methodを用意する。

383:デフォルトの名無しさん
08/09/08 17:24:44
>>381-382
レスありがとうございます。

>>381
その方法だとすごく簡易にできそうです。

>>382
画面で順々に渡していくわけですね。
遷移絡みで一元管理ができそうです。

今回は一寸時間もあるので>>381+>>382の手法を組み合わせて
勉強しながら進めてみようと思います。

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


384:デフォルトの名無しさん
08/09/08 18:12:38
>>378
ちょwwくそワロタww

385:デフォルトの名無しさん
08/09/08 18:32:55
何この糞ップリww

386:デフォルトの名無しさん
08/09/08 23:08:02
一般に、大卒以上の学歴を有しながら、中卒以下の人間を指す

387:デフォルトの名無しさん
08/09/08 23:23:51

にっぽんサイコー!:?BS11「にっぽんサイコー!」第1回2008/3/9(日)放送
URLリンク(www.team-nippon.com)

まあ一辺聴いてみてください。いかに日本が自民党に巻き上げられて官僚やゼネコンに配ってるかwわかります。
いかに口うまく騙されてるかwわかります。

日本Channel:築地があふれた!!壊すな築地7.12東京大行進
URLリンク(www.love-nippon.com)

ソトコト 憂国呆談
URLリンク(www.sotokoto.net)

断固田中康夫を首相にしましょう!!



388:デフォルトの名無しさん
08/09/08 23:34:08
VC#2008Express SP1でプログラム書いてるんですが、PerformanceCounterが思ったとおりに動いてくれません。

CategoryName : Processor

CounterName : % Idle Time

CounterName : % Processor Time
などの値を取得すると「0」しか返ってこない。

MemoryのAvailable MBytesや% Committed Bytes In Useなどは正しい値が返される。
正しい値とは、perfmon.exeで表示している値との比較。
Processorの% Idle Timeなどの常に「0」と表示される値は
perfmon.exeでは全部0以外の値が表示されている。

という状況です。
ソースの該当部分は
PerformanceCounter pc1;
pc1 = new PerformanceCounter();
pc1.CategoryName = "Processor";
pc1.CounterName = "% Idle Time";
pc1.InstanceName = "_Total";
Console.WriteLine(pc1.NextValue());
です。

どこかの掲示板で同じ症状で悩んでる人がいたんですが、誰もレスつけてなくて解決できたのかもわからない状況…
なにか間違っているところありますか?

389:デフォルトの名無しさん
08/09/08 23:55:35
while(true){
Console.WriteLine(pc1.NextValue());
System.Threading.Thread.Sleep(100);
}

ちょい試してみな

390:388
08/09/09 00:01:03
>389
あぁぁぁぁorz
わかりますた…
% Idle Timeとかって初期値が必ず0なのね…
はずかしぃぃぃ

391:デフォルトの名無しさん
08/09/09 00:51:30
System.Environment.CurrentDirectory;
のような感じでファイル名も取得したいのですがどうしたらいいでしょうか?

System.Environment.CurrentDirectory ディレクトリの情報しか取得してくれないんです

392:デフォルトの名無しさん
08/09/09 00:52:50
>>391
何のファイル名を取得したいの?

393:デフォルトの名無しさん
08/09/09 00:56:06
実行ファイルのパスなら、
Application.ExecutablePath

394:デフォルトの名無しさん
08/09/09 00:56:24
>>392
説明不足ですいません
URLリンク(dobon.net)
ここを参考にして、右クリックメニューからプログラムを開くようにしたんですが、
その右クリックしたファイル名を取得したいんです。
どうしたらいいでしょうか。

395:デフォルトの名無しさん
08/09/09 03:53:27
>>394
右クリックメニューからどのプログラムで開くように設定したの?
登録したプログラムが君の作ったプログラムだったらMain関数の引数がまさしくファイル名になるけど、
たとえばnotepad.exeで開くようにしたのだったら当然ファイル名を取得することはできないよ?
notepad.exeは君の作ったプログラムじゃないから当たり前なんだけどさ。

何がしたいのか全然想像できん。
相当初心者みたいだから、もっと具体的に説明してくれないと答えにくい質問だわ。

396:デフォルトの名無しさん
08/09/09 05:21:33
>>394

ようわからんが

Main(string[] args)
{
string fileName = args[0];
}

でいいんじゃね?
ちなみに、リンク先の方法は「フォルダ」をプログラムに関連づける方法だから、
「ファイル」を関連づけたいなら
URLリンク(dobon.net)
こっちの方だと思うんだけど。

397:デフォルトの名無しさん
08/09/09 12:06:27
List<string> a = new List<string>();
a.add("aaa");
・・・

ときて、aの要素すべてを"\\"で連結してひとつの文字列にしたい

398:デフォルトの名無しさん
08/09/09 12:12:30
String.Join

399:デフォルトの名無しさん
08/09/09 12:19:25
サンクス

string.Join("\\", a.ToArray());
でできた


400:デフォルトの名無しさん
08/09/09 13:42:05
>>395はリンク先読んでからレスしろよw

401:395
08/09/09 15:08:47
>>400
当然読んだに決まってるじゃん。
リンク先のサンプルは右クリックメニューにオリジナルメニューを追加させるようなアプリのサンプルなんだから、
右クリックで開かれるファイル名を取得したいという質問自体が意味不明なんだよ。
あくまでレジストリにキーを追加するだけのアプリと、コマンドライン引数を取得することは全く結びつかない。
コマンドライン引数を取得したいのならばそう言えばいいだけで、リンク先の記事は何の意味もなさないんだよ。

402:デフォルトの名無しさん
08/09/09 15:40:12

 政治板にあった的確なAAを紹介します!!
          ↓

【選挙前】 郵政民営化に賛成か否か 国民投票です

    自民党↓ 小泉
    , - ,----、
    (U(    )  
    | |∨T∨   
    (__)_)    国民様、へへへーっ
          ↓
          ↓
【選挙後】
自民党↓   ガソリン暫定税率維持
         後期高齢者制度制定
   ∧_∧    日雇い派遣 制限撤廃
  ( ´∀`)     郵政造反組復党
  (   /,⌒l     & 天下り先独法の特別会計ジャジャ漏れは完全に温存 !!
  | /`(_)∧_0.  & 二人の総理投げ出し他人事で辞任!
  (__)(´∀`; )⊃⌒⊃   ← ← ← (一般民間人)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~


403:デフォルトの名無しさん
08/09/09 16:18:33

ageろよww


404:デフォルトの名無しさん
08/09/09 19:14:16
コピペ君って馬鹿だな、まで読んだ。

405:デフォルトの名無しさん
08/09/09 21:29:25
>>396
ありがとうございます。
期待していた動きをさせることができました。

406:デフォルトの名無しさん
08/09/10 11:30:15
メソッドの引数にプロパティがたくさんあるクラスを渡そうとしています。
引数を渡す時に ref をつけて渡した方が、実行速度上 ( 微々たるものかもしれませんが ) 有利になるのでしょうか。
ref を付けずに渡すと、メソッドに渡す時に引数がコピーされると、プログラミング c# に書かれていました。
どうなのでしょうか?


407:デフォルトの名無しさん
08/09/10 11:31:53
用途による としか言いようがない

408:デフォルトの名無しさん
08/09/10 11:32:39
されない。
そう書いてあったならその本が間違ってる。
もしくは値型についての話と混同してる。


409:デフォルトの名無しさん
08/09/10 11:33:50
厳密にはクラスでも引数はコピーされるが、今の話はそういう話ではないはず。


410:デフォルトの名無しさん
08/09/10 11:36:47
大きな値型なら速くなる
クラスなら付けない方がたぶん速い

411:デフォルトの名無しさん
08/09/10 11:37:43
そうじゃなくて、そのメソッドをよく呼ぶときに実行速度が問題となるってこと。

412:デフォルトの名無しさん
08/09/10 11:42:57
>>407-411
お返事ありがとうございます。
なかなか難しいですね。

私の理解としては、メソッドの引数が、
クラスの場合→インスタンスのアドレスが渡される ( コピーされない )
値型の場合→ボックス化?され ( つまりコピーされ ) 渡される
という理解ですが、良いのでしょうか?

クラスの場合に、そのクラス中に値型のフィールドが含まれることもあるかと思いますが、そちらはよく分かってません。





413:デフォルトの名無しさん
08/09/10 11:43:13
refキーワードは速度じゃなく、メンバの使われ方が問題なんだが

414:デフォルトの名無しさん
08/09/10 11:44:14
よく考えなくても分かるけど、参照がコピーされたのに、参照に含まれる一部が実体とかおかしいだろ

415:デフォルトの名無しさん
08/09/10 11:47:40
意味が分かりませんw

416:デフォルトの名無しさん
08/09/10 11:47:47
>>414
なるほど。

では、まとめると、
クラスの場合→インスタンスのアドレスが渡される ( コピーされない )
クラスのメンバに値型が含まれる場合→インスタンスがコピーされアドレスが渡される
値型の場合→ボックス化?され ( つまりコピーされ ) 渡される
という理解ですが、良いのでしょうか?


417:デフォルトの名無しさん
08/09/10 11:52:17
とりあえずいろいろコード書いて試してみりゃいいよ

418:デフォルトの名無しさん
08/09/10 11:57:14
>>416

これ読んどけ。じっくり読むと理解できるから。流して読むと川俣ワールド迷走することになるが

URLリンク(www.atmarkit.co.jp)

419:デフォルトの名無しさん
08/09/10 12:06:54
>>414だいぶ混乱してる。
少なくとも今の話にはボックス化は無関係。
ただしコピーされるってのは間違ってない。
値型メンバはクラスのインスタンスにそのまま埋め込まれてる。
参照型メンバはクラスのインスタンスに、まあ君の理解で言うとアドレスが埋め込まれてる。


420:デフォルトの名無しさん
08/09/10 12:09:11
>>416

× クラスのメンバに値型が含まれる場合→インスタンスがコピーされアドレスが渡される
○ クラスのメンバに値型が含まれる場合→インスタンスを保持している変数のアドレスが渡される


// 例

class Hoge {
private string msg;
Hoge(string s) {
msg = s;
}
public override string ToString() {
return msg;
}
static void foo(ref Hoge fuga) {
// Main関数のhogeが指しているインスタンスが別のものになる。
fuga = new Hoge("Foo");
}
static void Main(string[] args) {
Hoge hoge = new Hoge("Hello");
Console.WriteLine(hoge.ToString());
foo(ref hoge);
Console.WriteLine(hoge.ToString());
}
}


421:デフォルトの名無しさん
08/09/10 12:15:25
値型は実体がコピーされる。
ただし、参照型に含まれる値型は値型の参照がコピーされる。

以上

422:デフォルトの名無しさん
08/09/10 12:15:53
もう難しすぎる!

423:デフォルトの名無しさん
08/09/10 12:16:01
>>413
XNA Frameworkとか覗いてみたらわかるよ
決して良い使い方だとは言えないんだけど

424:デフォルトの名無しさん
08/09/10 12:23:02
そういう人が書いた記事よりもMSDNを熟読するほうがいいよ。

425:デフォルトの名無しさん
08/09/10 12:24:31
そりゃC#のボキャブラリだけで考えていたら難しいだろう
Cかアセンブラで関数のメカニズム(スタックフレーム)について
勉強してから戻ってくるといいよ

そういえばMSILの逆アセンブラなんかもあったような

426:デフォルトの名無しさん
08/09/10 12:30:05
でたらめが入りまじってるから、
ちゃんとした書籍で調べることをお薦めする。

ああ、ひと目でわかるとか、あんなのは駄目だぜ。
こちらはVB版だが、確か同じ間違いの記述がある。

427:デフォルトの名無しさん
08/09/10 13:35:40
>>417-426
スタックやヒープなどからいろいろと勉強して理解してみます。
アドバイスありがとうございます。

逆に ref を使うときってどういう時に使ってますか?


428:デフォルトの名無しさん
08/09/10 13:42:06
たまにprivateメソッドで実装の都合で使うかも
外から見えるメンバには絶対使わないな
outは稀に使うけど

429:デフォルトの名無しさん
08/09/10 14:31:35
確かにrefはめったにない。
outはたまに使う。


430:デフォルトの名無しさん
08/09/10 14:34:39
COMインターフェイス絡みだと[In] refなんてザラだけどこのスレ的にはあんまり関係ないな

431:デフォルトの名無しさん
08/09/10 14:39:29
C#2.0 Winアプリで超基本を教えてください。

DataTableをDataSourceプロパティにバインドしたときは
ValueMemberとDisplayMemberを指定することでSelectedItemからTextとValueが別々に取得可能ですが

自分で
コンボ.Items.Add
メソドを使用して項目を追加する場合に SelectedItemからTextとValueを別々に取得できるようにするにはどのようにすればよいでしょうか?

自分でデータテーブルを作成するときに加工しておけばよいのでしょうが、
それはしない方向で実現する手段があればお教えください。

具体的には
データベースにId Name のカラムがありそれぞれ int,string の型になっています。
この先頭に * 全て という項目を入れたいのですが
DBから取得してきたDataTableのId列はint型なので先頭項目を挿入できないのです。

値を取得してきた際、*でなければ全て数値であることが保障されているという前提です。
よろしくお願いします。


432:デフォルトの名無しさん
08/09/10 15:39:31
DBNullでいいじゃん?とは思うけど
stringのプロパティ二つ持ったクラス用意
DisplayMember/ValueMemberにそれぞれのプロパティ名設定
一つずつ用意したクラスに詰替え
Items.AddよりDataSourceに配列として設定した方がよくね?

433:デフォルトの名無しさん
08/09/10 15:45:45
>>432

>Items.AddよりDataSourceに配列として設定した方がよくね?
確かに・・・

まず提案していただいた方法試してみます!
ありがとうございました。

434:デフォルトの名無しさん
08/09/10 17:16:10
DBの項目がIntならそのまま更新できないから「全て」が選ばれたときにどうやって更新するのかは気になるところ


435:デフォルトの名無しさん
08/09/10 17:26:13
ArgumentNullExceptionをスローするときに
引数名を文字列で直接指定するのって格好悪い気がするんだけどいい方法ある?

436:デフォルトの名無しさん
08/09/10 17:27:24
気のせいだ

437:デフォルトの名無しさん
08/09/10 17:39:51
>>435
ない。

リファクタリングと相性が悪いので、どうにかしようという話が出てたが
まだ実現していない。

438:デフォルトの名無しさん
08/09/10 18:05:24
internal static Exception ArgumentNull(Delegate method, int paramIndex) {
 ParameterInfo[] parameters = method.Method.GetParameters();
 return new ArgumentNullException(parameters[paramIndex].Name);
}
void Hoge(object arg) { throw ArgumentNull(new Action<object>(Hoge), 0); }
こういうのはどうだろう

439:デフォルトの名無しさん
08/09/10 18:11:12
今度は引数の数や順番の変更に弱くなるぞ

440:デフォルトの名無しさん
08/09/10 22:58:27
質問です。
WinXPにてadmin権限でログイン後
作成したアプリをインストーラからインストール。
アプリは、カレントディレクトリに対してフォルダを作成したり
ファイルをダウンロードしたりします。

admin権限でログインしているときはうまく動作するのですが、
フォルダに、ユーザからのアクセス件が無いので動作しません。
以下のコードでアクセス権を付加しようとしていますがうまくいきません。
どこが間違っているでしょうか?

System.Security.AccessControl.DirectorySecurity dSecurity =
Directory.GetAccessControl(Application.StartupPath);
dSecurity.AddAccessRule(
new System.Security.AccessControl.FileSystemAccessRule(
System.Environment.UserName,
System.Security.AccessControl.FileSystemRights.FullControl,
System.Security.AccessControl.AccessControlType.Allow
));
Directory.SetAccessControl(Application.StartupPath, dSecurity);



441:440
08/09/10 23:00:07
質問訂正です。
WinXPにてadmin権限でログイン後
作成したアプリをインストーラからインストール。
アプリは、カレントディレクトリに対してフォルダを作成したり
ファイルをダウンロードしたりします。

admin権限でログインしているときはうまく動作するのですが、
権限無しのユーザでログインすると
フォルダにユーザからのアクセス件が無いので動作しません。
以下のコードでアクセス権を付加しようとしていますがうまくいきません。
どこが間違っているでしょうか?

System.Security.AccessControl.DirectorySecurity dSecurity =
Directory.GetAccessControl(Application.StartupPath);
dSecurity.AddAccessRule(
new System.Security.AccessControl.FileSystemAccessRule(
System.Environment.UserName,
System.Security.AccessControl.FileSystemRights.FullControl,
System.Security.AccessControl.AccessControlType.Allow
));
Directory.SetAccessControl(Application.StartupPath, dSecurity);


442:デフォルトの名無しさん
08/09/10 23:25:25
>>441
フォルダのアクセス権がないユーザーが、そのフォルダのアクセス権を変更することはできない。
当たり前のことですな。

443:デフォルトの名無しさん
08/09/10 23:32:08
お前馬鹿かよ。
何やろうとしてるか冷静に考えてみろ。


444:デフォルトの名無しさん
08/09/11 00:08:28
C#もVBと同じ Optional 引数は使えますか?


445:デフォルトの名無しさん
08/09/11 00:27:28
いいえ

446:デフォルトの名無しさん
08/09/11 00:43:03
adminとuserがひとつのアプリを共有し
ファイルディレクトリ操作を行う場合
どういう実装をすればいいのでしょうか?

447:デフォルトの名無しさん
08/09/11 01:05:23
userに権利が無い操作を、できなくすればいいのでない?

448:441,446
08/09/11 01:51:14
>447
自分がadminかそうじゃないかを知る方法ってあるのですか?
元々その辺から調べてたのですが全くわかりませんでした。

449:デフォルトの名無しさん
08/09/11 06:02:46
>>448
WindowsIdentityとWindowsPrincipalの組み合わせで。
URLリンク(www.atmarkit.co.jp)

450:デフォルトの名無しさん
08/09/11 11:40:40
C# 2.0のアプリケーション構成ファイルで接続文字列を設定し
DbProviderFactoriesクラスからGetFactoryメソッドを使用した上でDBへ接続を行いたいと思っています。

構成ファイルの方は設定しており
<add name="プロジェクト名.Properties.Settings.ConnectionString"
connectionString="Provider=HOGE-;Data Source=hogehoge"
providerName="System.Data.?????" />
このような記述がされております。

このときPG側から接続文字列の設定を読み取ることは標準でできるのですが ProviderName
の部分(System.Data.?????)を取得するにはどのようにすればいいのでしょうか?

設定ファイルの設定はC#の「プロジェクトの設定のエディタを使用しております。
よろしくお願いいたします。


451:441
08/09/11 14:55:32
>449 ありがとうございました。ようやく前進できました。

もうひとつ質問ですが、
System.Net.WebClient でファイルのDLを行う場合、
拡張子exeのファイルは環境によっては弾かれるということはありえますか?

拡張子exeのファイルは拡張子を変えてDLしたあとリネームした方がいいのでしょうか?
それとも、zipファイルとしてDLしたあと展開するのがベターでしょうか?

452:デフォルトの名無しさん
08/09/11 22:11:46
C#でWindowsの音量(マスターとか、WAVEとか、ラインインとか)を
直接操作できるような方法ってあるんでしょうか?

453:デフォルトの名無しさん
08/09/11 22:16:22
Win32API

454:デフォルトの名無しさん
08/09/11 22:17:24
C# api MIXIERCAPS あたりで検索して味噌

455:デフォルトの名無しさん
08/09/11 22:20:22
err
s/MIXIERCAPS/MIXERCAPS/

456:デフォルトの名無しさん
08/09/11 23:07:10
>>450
これ以上ないくらい普通に取れるが、どこで引っかかってるの?



次ページ
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
暇つぶし2ch

4746日前に更新/134 KB
担当:undef