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


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

C#, C♯, C#相談室 Part52



1 名前:デフォルトの名無しさん mailto:sage [2009/04/01(水) 10:15:52 ]
(#゚ー゚)つ < C#、.NETの話題はこちらでどうぞ。

前スレ
C#, C♯, C#相談室 Part51
pc12.2ch.net/test/read.cgi/tech/1233757615/

Visual C# 2008 Express Edition 日本語版
www.microsoft.com/japan/msdn/vstudio/express/vcsharp/

その他テンプレ>>2-5くらい

345 名前:デフォルトの名無しさん [2009/05/01(金) 17:48:18 ]
スレッドをAbort()した後に、同じスレッドをStart()すると、
ThreadStateException
{"スレッドが実行中か、または終了しています。再起動できません。"}
が投げられます。

一度Abort()したスレッドを再開するにはどうすればよいでしょうか?
毎回new Threadをし直す必要があるのでしょうか?
できれば、new Threadはアプリ起動時に1度だけで済ませたいです。

346 名前:デフォルトの名無しさん mailto:sage [2009/05/01(金) 18:00:27 ]
メッセージどおり、Abortしたら再起動はできない
つーかAbortなんか使っちゃダメ SuspendとかResumeとかも禁止
フラグとかでスレッド自身が自分の状態を管理するようにする

別にThread作りなおしてもかまわんとは思うが

347 名前:デフォルトの名無しさん mailto:sage [2009/05/01(金) 18:08:39 ]
自分も独学でフラグで誤魔化したので、
スレッドの待機をメッセージが無い.NETでどうするか疑問だった

マジでみんなフラグ管理で逃がしてるの?

348 名前:デフォルトの名無しさん [2009/05/01(金) 18:48:39 ]
>>346
Resume、Suspendは「使用しないでください」と書いてありますが、Aboteには書いていません。
何故、Abortを使うのはダメとおっしゃっているのでしょうか?

349 名前:デフォルトの名無しさん mailto:sage [2009/05/01(金) 18:52:43 ]
>>348 マジ?どこどこ??

350 名前:デフォルトの名無しさん mailto:sage [2009/05/01(金) 18:56:26 ]
>>348
メモとかに書いてるっしょ どこで終了するか分からないからオブジェクトが不完全な状態になりうるとか
更には確実に終了されるかどうか保証できないとか実にやばそうな匂いが漂ってくる

351 名前:デフォルトの名無しさん [2009/05/01(金) 19:14:36 ]
>>349
Visual C# Express 2008のインテリセンス

>>350
そうは書いていないようです

352 名前:デフォルトの名無しさん mailto:sage [2009/05/01(金) 19:26:48 ]
インテリセンスて
ヘルプの解説見ろよ……

353 名前:デフォルトの名無しさん [2009/05/01(金) 19:35:28 ]
>>352
ヘルプの解説でも、
SuspendとResumeの項には
「メモ : このメソッドは,互換性のために残されています。」
「[ObsoleteAttribute("Thread.Resume has been deprecated. Please use other classes in System.Threading, such as Monitor, Mutex, Event, and Semaphore, to synchronize Threads or protect resources. go.microsoft.com/fwlink/?linkid=14202", false)] 」
とありますが、
Abortの項にはありません。

詳しくはヘルプをご覧ください。



354 名前:デフォルトの名無しさん mailto:sage [2009/05/01(金) 20:21:44 ]
Thread.Sleep() に Timeout.Infinite を渡す。
再開は Thread.Interrupt() で ThreadInterruptedException をスローさせる。

355 名前:347 mailto:sage [2009/05/01(金) 21:40:05 ]
さんくす

Thread.Interruptのコード例でsleepSwitchフラグの位置がイマイチ納得いかなかったけど
>>354に書いてあるように使うよ

356 名前:デフォルトの名無しさん mailto:sage [2009/05/01(金) 22:04:03 ]
>>347
一般にはフラグは使わない、イベントやセマフォやミューテックスの類を使って制御する。
フラグは簡単にミスするしバグりやすいよ、CPUパワーは無駄にするし、スレッドの実行優先順位も狂って非効率になる。

357 名前:デフォルトの名無しさん mailto:sage [2009/05/01(金) 22:10:40 ]
再開はそれでいいんだけど休止をどう伝えるのかイメージつかないんですが

358 名前:デフォルトの名無しさん mailto:sage [2009/05/01(金) 22:25:42 ]
>Thread.Interruptのコード例でsleepSwitchフラグの位置
デバッガで確認したけど、Thread.SpinWait(10000000);の行には行かないね。
シングルコアだとJoin呼ぶまでスレッド動かないからだね。
試しにInterrupt()のあとでThread.Sleep()入れてメインスレッドをスリープ待機に
入れちゃうとThread.SpinWait(10000000);がThreadInterruptedException起こすし。
マルチコアだと動かないんじゃないか?このサンプル。

359 名前:デフォルトの名無しさん mailto:sage [2009/05/01(金) 22:48:07 ]
>>357
メモリ操作オンリーの計算なら止めてしまっても問題ないと思うが
普通にいろいろなリソースを操作しているなら勝手なタイミングで止められたらマズくね?
もちろん上記のような特殊な状況があるならそれこそSuspendしちまっても全然問題ないと思われますけど。
普通の状況では、イベントを確認して問題なければそこで止める。

360 名前:デフォルトの名無しさん mailto:sage [2009/05/01(金) 23:04:40 ]
Sleepする前にInterruptされていたら停まらないでThreadInterruptedException起こすし
問題ないかを確認するのはInterruptする側でしろということじゃないかな。

361 名前:デフォルトの名無しさん mailto:sage [2009/05/01(金) 23:07:19 ]
なんつーか、AbortにしてもInterruptにしても、これらの操作はスレッドに対する最終手段だぜ
普通に使うものじゃない

362 名前:デフォルトの名無しさん mailto:sage [2009/05/01(金) 23:09:02 ]
同期を使わないなんてアリエナイ。

363 名前:デフォルトの名無しさん mailto:sage [2009/05/01(金) 23:11:25 ]
いや、開発するアプリの種類によるか・・・
スレッド自体、使わない人は使わないんだし。



364 名前:デフォルトの名無しさん mailto:sage [2009/05/01(金) 23:11:48 ]
スレッドの外部から停止再開させたいなら、同期オブジェクトを使おうが
結局フラグ的な使い方をすることになりそうな気がする。


365 名前:デフォルトの名無しさん mailto:sage [2009/05/01(金) 23:13:55 ]
>>364
フラグだとvolatile付け忘れたり、メモリーバリア忘れたり、素人には難しいぞ。

366 名前:デフォルトの名無しさん mailto:sage [2009/05/01(金) 23:23:06 ]
ManualResetEvent だともろフラグだ。

そういえばBackgroundWorkerの実装をみると
volatileもmemorybarrierも使ってなかったのを思い出した。

367 名前:デフォルトの名無しさん mailto:sage [2009/05/01(金) 23:24:28 ]
つかEventはマルチスレッド用のフラグですから
セマフォはマルチスレッド用のカウンタですから

368 名前:358 mailto:sage [2009/05/02(土) 03:35:46 ]
嘘こいてた。

>入れちゃうとThread.SpinWait(10000000);がThreadInterruptedException起こすし。
起きない。そもそも待機してない風?
>スレッドを iterations パラメータで定義した時間の間待機させます。
ってヘルプにあるのに・・・ある・・・定義した時間って単位はいくらだ?フェムト秒?
Causes a thread to wait the number of times defined by the iterations parameter.
・・・誤訳かよ!
待機とブロックと中断の用語がなんか変な気もするし。日本語ヘルプはだめすぐる。

369 名前:デフォルトの名無しさん mailto:sage [2009/05/02(土) 03:40:54 ]
WCFとかAzureの質問ってここでしていいのかな。

Azure SDKのdevelopment fabric上でWCFサービスを動かすと、
127.0.0.1からはアクセスできるのに、自分のホスト名から叩くとアクセスできなくて、
俺の設定ミスなのかAzure SDKのバグなのか分からないんだけど。

解決策を知ってる人がいたら教えて欲しい。

370 名前:デフォルトの名無しさん mailto:sage [2009/05/02(土) 03:56:03 ]
切り分けしようぜ

371 名前:デフォルトの名無しさん mailto:sage [2009/05/02(土) 03:56:30 ]
手元に無いんで試してないがエスパーしてみると
リスナーでIPAddress.Anyとすべきところがそうなってないとか

372 名前:デフォルトの名無しさん mailto:sage [2009/05/03(日) 10:20:58 ]
>設定ミスなのかAzure SDKのバグ

自分のプログラムが悪いとはこれっぽっちも考えてないのね

373 名前:デフォルトの名無しさん [2009/05/03(日) 11:22:10 ]
>>372
「俺」って言うのは日本語で「自分」を示す一人称の一つだよ。



374 名前:デフォルトの名無しさん mailto:sage [2009/05/03(日) 11:42:24 ]
設定ミスと考えてるってことはプログラムは悪くないと思ってるってことだろ

375 名前:デフォルトの名無しさん mailto:sage [2009/05/03(日) 11:44:41 ]
設定はプログラムでするだろ

376 名前:デフォルトの名無しさん mailto:sage [2009/05/03(日) 12:15:09 ]
何言い返してんだよ、本人か?
そうでなけりゃ、自分のプログラムミスを設定ミスと言い直してごまかす人か?

377 名前:デフォルトの名無しさん mailto:sage [2009/05/03(日) 12:58:12 ]
あ、回答どうも。

>>370
がんばってみたんだけど無理だった。。
とりあえず、MS提供のサンプルで同じことが起こるのは確認済み。
別環境でやっても同じく。

>>371
なるほど。そういうオプションがあるのか。
IISでその辺設定するにゃどうしたらいいんだろ。調べてみますわ。

>>372
ランタイムの初期化って設定って言いませんかねぇ。
あと、言うの忘れてたけど.svc使ってIISの機能でホスティングさせてたんで。

378 名前:デフォルトの名無しさん mailto:sage [2009/05/03(日) 13:43:49 ]
WCFはIISでホスティングさせているか否かでだいぶ違うから、
そういう大事なことは先に言えよな。
あとはトランスポートになに使ってるかかな、BasicHttpBindingとかそんなの。


379 名前:377 mailto:sage [2009/05/03(日) 14:05:03 ]
失礼(´・ω・`)

バインディングはBasicHttpBindingにしてる。
ウィザードのデフォルトはWebHttpBindingだけど、
それだとそのまま使うとなんか例外投げたので。

とりあえず、MSの開発者側も認識している既知の問題としては、

WCFアプリをAzureにうpすると、自分のホスト名を、
ユーザが使うロードバランサのアドレス(tp://***.cloudapp.net/)ではなく、
分散環境内でアプリが実際にロードされている鯖(tp://[guid].cloudapp.net)のもの
として認識してするせいで、それをendpointとしてWSDLを生成してしまう、

というのはどっかで見かけたけど、それがこの問題とも関連しているのかよく分からない。

380 名前:デフォルトの名無しさん mailto:sage [2009/05/03(日) 14:06:36 ]
ちなみにこれ。
code.msdn.microsoft.com/wcfazure/Wiki/View.aspx?title=KnownIssues

381 名前:デフォルトの名無しさん mailto:sage [2009/05/03(日) 14:10:18 ]
内部識別子でWSDLを公開している様子
wcfazure.cloudapp.net/
wcfazure.cloudapp.net/ConsoleCalculator/Service.svc

けど、ローカルで動かす分には鯖名自体は(もちろん)合ってるから関係ないはずではあるんだけど。

382 名前:デフォルトの名無しさん mailto:sage [2009/05/04(月) 15:59:03 ]
まずはIISで動かしているのかASP.NET開発サーバーで動かしているのか確認かな。
後者なら127.0.0.1(localhost)しか受け付けない。
タスクトレイにASPNET開発サーバーアイコンが表示されているようなら後者。
IISで動いているなら、コンピューターの管理からIISの設定を確認する。
まずWEBサイトの識別のIPアドレスで「未使用のIPアドレスすべて」になっているかどうか。
ここが127.0.0.1になっていればそれでしか繋がらない。
次にこのアプリの仮想ディレクトリを確認でセキュリティ関係に矛盾がないか確認。
よくやってしまうのが、統合認証+匿名認証の設定になっていて、
WEBで公開しているディレクトリにIUSR_xxxxのアクセス許可がないケース。
統合認証で認証された場合は問題ないが、匿名の場合にアクセス拒否を食らう。

383 名前:デフォルトの名無しさん mailto:sage [2009/05/04(月) 17:09:52 ]
>>382
ありがとう。
いま、手元に環境がないので、後日確認してみて報告しますわ。



384 名前:デフォルトの名無しさん mailto:sage [2009/05/04(月) 18:30:41 ]
C#でテキストを1行ずつ読み込み、条件に合った行を取得するような簡単なものを組んでいるのですが、
条件に合った行から連続する3行とかを取得するにはどうすれば良いのですか。
初歩的かもしれませんが、ご教示願います。

385 名前:デフォルトの名無しさん mailto:sage [2009/05/04(月) 18:32:17 ]
>>384
とりあえず下の場合の動作は?

テキスト
1234
1234
1234
abcde
abcde
abcde

条件: 1234

386 名前:デフォルトの名無しさん mailto:sage [2009/05/04(月) 18:37:32 ]
>>384
条件に一致した行のインデックスとって自分でそこから2行読めば?

387 名前:デフォルトの名無しさん mailto:sage [2009/05/04(月) 18:41:59 ]
なんかJavaより面倒そう

388 名前:デフォルトの名無しさん mailto:sage [2009/05/04(月) 18:42:02 ]
var result = new List<string>();
int flag = -1;
foreach (string line in lines)
{
if (条件に合ってる行の場合)
{
flag = 0;
}
if (flag =! -1)
{
result.Add(line);
flag++;

if (flag > 3)
{
flag = -1;
}
}

}

389 名前:デフォルトの名無しさん mailto:sage [2009/05/04(月) 18:50:20 ]
=! だと・・・?

390 名前:デフォルトの名無しさん mailto:sage [2009/05/04(月) 19:08:04 ]
grepと同じ挙動ならこんな感じか

IEnumerable<string> Grep(IEnumerable<string> source, string pattern, int after) {
  int n = 0;
  foreach (var line in source) {
    if (line.Contains(pattern)) n = after + 1;
    if (n > 0) {
      n--;
      yield return line;
    }
  }
}

391 名前:デフォルトの名無しさん mailto:sage [2009/05/04(月) 19:25:31 ]
>>384
bbbが条件だとして、そこから3つを取得

string[] list = { "aaa", "bbb", "ccc", "ddd", "eee" };
var result = list.SkipWhile(s => s != "bbb").Take(3);

392 名前:デフォルトの名無しさん mailto:sage [2009/05/04(月) 19:44:16 ]
linqを使いたいお年頃なんですね

393 名前:384 mailto:sage [2009/05/04(月) 20:03:01 ]
返事が遅くなりました。

1234
aaa
bbb
ccc

2345
ddd
eee
fff

のようになっていまして、ReadLineで順に読んでいって、1234を発見したときに、
aaa、bbb、cccの3行を取得するようにしたいです。

1234の行は取得できるのですが、その次の行を読んでbreak;の方法がいまいちわかりません。



394 名前:デフォルトの名無しさん mailto:sage [2009/05/04(月) 20:10:11 ]
もし1234が見つかったらのifステップ中は
ReadLine();
ReadLine();
ReadLine();
じゃだめなの(;´Д`)

395 名前:デフォルトの名無しさん mailto:sage [2009/05/04(月) 20:10:39 ]
>>393
1234が2回以上あらわれることはあるか、
また1234に続く3件のうちに1234が含まれていた場合の扱いは?という確認だろ。
そういうことはありえないという条件でもよいのだが。
その条件が確定すれば簡単だよ。

396 名前:デフォルトの名無しさん mailto:sage [2009/05/04(月) 20:16:30 ]
すみません。おそらくすごい初歩的なことだと思います。
検索する行(この場合は1234)は、他の行には一切ありません。
>>394さんの3回記述をするのは、次の2行も取得できるということですか?
Webはいろいろ調べてみたのですが、1行ずつ読み込む方法しか書いてなかったもので。

397 名前:デフォルトの名無しさん mailto:sage [2009/05/04(月) 20:30:44 ]
>>385はスルーですかそうですか

398 名前:デフォルトの名無しさん mailto:sage [2009/05/04(月) 20:31:52 ]
>>391はスルーですかそうですか

399 名前:デフォルトの名無しさん mailto:sage [2009/05/04(月) 20:33:15 ]
>>398
いやまて391は流石に役に立たないだろう根本的な部分で

400 名前:384 mailto:sage [2009/05/04(月) 20:41:24 ]
>>385を書かれた時点で自分の伝えたいことが伝わってないことがわかり、をれを参考にして例示を上げてみました。
スルーするつもりはありませんでしたのでご容赦ください。

>>394の方法でやってみたところ、思った通りの挙動が確認されました。
まだ本片手で勉強している最中ですので、このような質問内容になったことをお詫びいたします。
みなさん、ありがとうございました。

401 名前:デフォルトの名無しさん mailto:sage [2009/05/04(月) 20:59:57 ]
ReadLine()は

今まで読んだ行の位置からスタートして
次読み込む行を調べて
その行に移動して
その行に書いてあることを読んで
今読んだ行を覚えておいて
読んだ内容を返す

っつー動作をするんじゃね?


402 名前:デフォルトの名無しさん mailto:sage [2009/05/05(火) 17:19:16 ]
ちなみに和布蕪(めかぶ)は, 作者の好物です.

403 名前:デフォルトの名無しさん mailto:sage [2009/05/07(木) 00:49:52 ]
.net framework って、普通1.1なの?
2.0や3.0, 3.5って企業や業務アプリで使ってないノア?



404 名前:デフォルトの名無しさん [2009/05/07(木) 00:52:12 ]
使っていいよ。

405 名前:デフォルトの名無しさん mailto:sage [2009/05/07(木) 00:53:08 ]
2.0は十分なシェアあるだろうが可能な限り低いバージョンでやるべきだろ

406 名前:デフォルトの名無しさん mailto:sage [2009/05/07(木) 01:03:04 ]
ほとんど2.0じゃないかな。1.1まではベータ版みたいなものだし。

407 名前:デフォルトの名無しさん mailto:sage [2009/05/07(木) 01:10:24 ]
FrameworkClientProfileで開発しとけば色々便利

408 名前:デフォルトの名無しさん mailto:sage [2009/05/07(木) 01:22:03 ]
俺様メモからの引用
--
.NET Framework 3.5 Client Profile
3.5 SP1のサブセット

インストール可能な環境は
Windows Server 2003; Windows Server 2008; Windows Vista; Windows XP(SP2以降)
であるが、さらに次の条件が付加されるため実質XP(SP2以降)だけが対象となる。

フルセットの.NET Frameworkが導入されていないこと。(2.0以降だけでなく1.1や1.0も!)
フルセットの.NET Frameworkがすでに導入されている場合に
Client Profileのインストーラは3.5SP1フルセットのインストールを行う。


409 名前:デフォルトの名無しさん mailto:sage [2009/05/07(木) 01:40:15 ]
3.5 SP1

410 名前:デフォルトの名無しさん mailto:sage [2009/05/07(木) 01:41:20 ]
3.5 SP1 フルインストールってすごい長いんだよな・・・

411 名前:デフォルトの名無しさん mailto:sage [2009/05/07(木) 02:18:57 ]
>>394で正解とか他の解答者がさすがにかわいそうすぎたw

412 名前:デフォルトの名無しさん mailto:sage [2009/05/07(木) 02:19:21 ]
Silverlightで皆幸せ

413 名前:デフォルトの名無しさん mailto:sage [2009/05/07(木) 03:58:32 ]
和暦のカレンダーコントロールが必要になった
めんどくさいからだれか知ってたらサンプルのページ紹介か作ってくれw
サードパーティはバグに引っぱられるからかるからなるだけ使いたくねえ…

もう和暦とか辞めればいいのに
西暦で統一してぇ・・・




414 名前:デフォルトの名無しさん mailto:sage [2009/05/07(木) 04:07:32 ]
天皇制がある限り無理

415 名前:デフォルトの名無しさん mailto:sage [2009/05/07(木) 07:10:32 ]
面倒だけどそんなに手間じゃないよな

416 名前:デフォルトの名無しさん mailto:sage [2009/05/07(木) 11:28:41 ]
まあ、「今後は」西暦に統一したとして、
過去に作った分にまで遡及させるのは無理だから
実際に和暦が消えるのは数十年後よ。

417 名前:デフォルトの名無しさん mailto:sage [2009/05/07(木) 11:37:04 ]
太陽暦移行後だけでいいなら簡単だろうな。

418 名前:デフォルトの名無しさん mailto:sage [2009/05/07(木) 11:59:10 ]
普通は平成、昭和、大正、明治をサポートすれば大丈夫なんだろうけど、
お寺の過去帳データベースを作ったときはまいったな。



419 名前:デフォルトの名無しさん mailto:sage [2009/05/07(木) 13:47:29 ]
和暦とか旧暦とか六曜とか月齢とかまとめて計算してくれるクラス欲しいな
海外ローカルも含めて国際カレンダークラスみたいなもの。


420 名前:デフォルトの名無しさん mailto:sage [2009/05/07(木) 13:50:57 ]
暦計算だけならCalendarクラス使えばいいだろう。
六曜や月齢はないが。

421 名前:デフォルトの名無しさん mailto:sage [2009/05/07(木) 17:17:40 ]
和歴はあってもイイけど業務で使うのは辞めて欲しい
役所が一生懸命使ってる限りは無理だろうけどさ

422 名前:デフォルトの名無しさん mailto:sage [2009/05/07(木) 17:36:57 ]
和暦に命をかけてるんじゃないかってほどこだわってた客がいたな
昭和何年何月何日は存在しないから入力できないようにしてくれとか
結果的にあってんだからいいんだよ!

423 名前:デフォルトの名無しさん mailto:sage [2009/05/07(木) 18:14:23 ]
世界のローカル暦サポートなんて、Unicodeの比じゃない難事業だぞ。ヨーロッパ各国に限っても、
ユリウス暦からグレゴリウス暦の移行期は国ごとに日付が違うし、ユリウス暦の初期は閏年が
いつだったのかわからないし、ユリウス暦導入前は最高神祇官が勝手に閏年を決めるし、一方
ギリシアではポリスごとに暦が違うし……
日本だって南朝と北朝で暦が違っていたり、暦書がなくて暦を復元できない時代があったり、

ああもう面倒くせえ



424 名前:デフォルトの名無しさん mailto:sage [2009/05/07(木) 18:16:23 ]
旧暦の暦の正当性は閏月とかあってとてもじゃないけど保障できない。
さきの過去帳DBなんだけど、古いのはもう計算じゃ出せなくてテーブルで持つしかなかった。
古いのは書き写したときのミスとかいろいろあってもう記述がいい加減なんだよね。
咸豊とか中国の元号が出てきたときにはもう勘弁してください状態だった。
南北朝や九州年号はさすがになかった・・

425 名前:デフォルトの名無しさん mailto:sage [2009/05/07(木) 19:35:09 ]
さすがだな、おまえらw
”和暦のカレンダー”だけでここまで穿り返すとはwww

426 名前:377 mailto:sage [2009/05/07(木) 19:43:50 ]
>>382
今日いろいろ調べてみた。

結果としては、Development Fabricは内部でASP.NET開発サーバを使っているのではないか、
という感触を持った(サービスが自分をホストしている鯖の情報を取る方法を知らないので確定的ではないけど)。
AzureのドキュメントにはIISを使ってるって書いてあるし、ASP.NET開発サーバアイコンも表示されていないんだけど、
IISにアクセスログを吐かせてみても、127.0.0.1:81を叩くときだけログに残らないし、
よく考えると、80番の設定で起動してるのに81番で起動するのは、IIS以外に鯖を起動した上でホストしている証拠かな、と。

そうなると、ホスト名がつかえないのは、現状では「仕様」ということになるんだと思う。

とりあえず、CTPの文字が外れるまではこのままなんだろうなぁ、というオチにしておく。
みんな、いろいろ教えてくれてありがとう。

427 名前:デフォルトの名無しさん [2009/05/07(木) 20:20:27 ]
すみません、
HTML文からタグのみを取り出す関数はありませんか?
逆に言うと、HTML文のタグ以外を削除するような関数
のことですが。

428 名前:デフォルトの名無しさん mailto:sage [2009/05/07(木) 20:32:18 ]
安易に考えたらXML名前空間の機能使って取り出すとか?


429 名前:デフォルトの名無しさん mailto:sage [2009/05/07(木) 20:34:59 ]
関数はないな
正規表現使えばタグの抽出だけなら比較的簡単だ

>>428
XHTMLじゃない限りほぼパース不可能だよ

430 名前:デフォルトの名無しさん mailto:sage [2009/05/07(木) 20:35:48 ]
酷いHTML読まされる事考えるなら、MSHTML使うのが一番楽じゃないかね

431 名前:デフォルトの名無しさん mailto:sage [2009/05/07(木) 20:56:10 ]
SgmlReader っていうのもある。

432 名前:デフォルトの名無しさん mailto:sage [2009/05/07(木) 21:04:57 ]
CommitChanges()はパフォーマンス面で悪かったりする?
普通に多用していいもの?

433 名前:432 mailto:sage [2009/05/07(木) 21:42:45 ]
ああスレ間違えた



434 名前:デフォルトの名無しさん mailto:sage [2009/05/08(金) 00:20:25 ]
>>427
msdn.microsoft.com/ja-jp/library/system.windows.forms.htmldocument.all.aspx
msdn.microsoft.com/ja-jp/library/system.windows.forms.htmlelement.tagname.aspx

435 名前:デフォルトの名無しさん mailto:sage [2009/05/08(金) 00:26:09 ]
System.Windows.FormsのHTML DOMはWebBrowserなしだと普通には作れないのが難
標準でwebスクレイピングライブラリとか作られんかのう

436 名前:デフォルトの名無しさん mailto:sage [2009/05/08(金) 00:31:13 ]
寺とかちょっとした歴史の勉強だなw

437 名前:デフォルトの名無しさん mailto:sage [2009/05/08(金) 00:31:51 ]
プログラムにフォルダ名が入っているのですが、いれないようにするにはどうすればいいですか?

438 名前:デフォルトの名無しさん mailto:sage [2009/05/08(金) 00:34:01 ]
SilverLight

439 名前:デフォルトの名無しさん mailto:sage [2009/05/08(金) 00:37:25 ]
>>435
んじゃ、これ。
htmlagilitypack.codeplex.com/


440 名前:デフォルトの名無しさん mailto:sage [2009/05/08(金) 00:38:35 ]
すんません、書きなおします
プログラムをバイナリエディタでみたところプログラム内にフォルダ名が書き込まれているのですが、
ビルド時、かきこまれないようにするにはどうすればいいですか?

441 名前:デフォルトの名無しさん mailto:sage [2009/05/08(金) 00:38:55 ]
>>437
相対パス使うか、定義ファイルにパス書くか、レジストリにパス書く。

442 名前:デフォルトの名無しさん mailto:sage [2009/05/08(金) 00:39:43 ]
>>440
リリースビルド & .pdb を作らないようにすればいいんじゃなかったっけ?

443 名前:デフォルトの名無しさん mailto:sage [2009/05/08(金) 00:40:43 ]
あ、ありがとうございます
ビルドー詳細設定でデバッグ情報をnoneにしたらいけました
あせった><



444 名前:デフォルトの名無しさん mailto:sage [2009/05/08(金) 00:48:43 ]
ビルドーってディルドーに似てる

445 名前:デフォルトの名無しさん mailto:sage [2009/05/08(金) 02:31:26 ]
2000年問題に対応したとき、「なんでこんなややこしい閏年の置き方をするんだ!」とか
思ったものの、よく勉強してみたら、現行暦がいかに単純で合理的か納得したw






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

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

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