C#, C♯, C#相談室 Part55at TECH
C#, C♯, C#相談室 Part55 - 暇つぶし2ch517:デフォルトの名無しさん
10/01/10 19:18:02
>>516
それが不思議な事にそのサイトは、コードを見ても次の様になっていて
(SRCにJavaScriptになっています。)
ドメインが同じかどうかの確認をする事が出来ません。

しかも、ブラウザから見て入力を行うと(例えば"あいうえお")
iFrame内の<body>タグ内になぜか文字が入るのです。
(FireBugで要素を調査したと結果)
<body>あいうえお</body>

■iFrame内のコード
<iFrame src="Javascript:">
<html>
  <head>
  </head>

  <body>
  </body>
</html>
</IFrame>


518:デフォルトの名無しさん
10/01/10 19:45:47
そのサイトを教えてくれたら俺が作ってやるのに

519:デフォルトの名無しさん
10/01/10 19:58:48
>>518
実は会社から自分のブログへアクセスし
書き込みをする事が出来ない為、

これまで仕事中にこっそりブログのネタをテキストファイルに書込みを行い、
メールで自宅に送信し、そのネタをブログの本文に貼り付けていたのですが、
毎回それを手動でするのは面倒なので、自動で受信メールの内容を

ブログにログインし本文に貼り付けようとしているのですが、
iFrameのトラップがある事を知り断念している状況です。

結構難易度が高く私のスキルではどうもiFramewを使ってるところに
自動で入力をする事が出来ません。。。

お手数ですがもし可能でしたらlivedoorの本文に自動入力する方法をご伝授頂けると助かります。

520:519
10/01/10 20:01:55
>>519 ですが、仕事中にブログのネタを書いてる・・・の件はシカトして下さい><;

521:デフォルトの名無しさん
10/01/10 20:03:02
そのブログ主だって会社にばれたときタイムスタンプについてどういいわけするのか
まずそこから考えたほうがいいと思うよ

522:デフォルトの名無しさん
10/01/10 20:04:24
そういうのはどうでもいい。

523:デフォルトの名無しさん
10/01/10 20:04:57
よし
龍馬伝見てから考える

524:デフォルトの名無しさん
10/01/10 20:06:29
DOMでやるのはあきらめて、HttpWebRequestでやれば?
ログイン->クッキーもらう->ブログの書き込み内容をPOST、みたいな感じだろうし。

525:519
10/01/10 20:11:37
>>521 >>521 >.523
(だって仕事詰まらないんですもの。)

>>524
httpWebRequestはあまり詳しく無いので
Windows APIでも駆使して何とかして
自動化したいんです。

(仕事中にじっくりネタを考えてるせいもあって、お陰様で結構人気です。)


526:デフォルトの名無しさん
10/01/10 20:13:01
何とかして、って何ともなってねーじゃんw

527:デフォルトの名無しさん
10/01/10 20:14:36
だなw

528:デフォルトの名無しさん
10/01/10 20:15:07
だいたい「ちゃんと目的のページを読み込めたか」の例外処理のほうがむずかしいっつーの
プログラムってのはコードの実行性だけを示すんじゃないんだけどなぁ

529:519
10/01/10 20:33:31
>>526 >>527 >>528
私のスキルではどうもiFrameを使ってるところの自動
入力させるのは難しいです。

どなたかこの様な事を出来る方はいませんか?

530:デフォルトの名無しさん
10/01/10 20:40:01
ひとつ言っておくけど、この件でAPIはほとんど役立たず。
せいぜい、キー入力を送るくらい(これなら、SendKeysで充分だけど)。

531:デフォルトの名無しさん
10/01/10 20:42:53
>>530
一言余計だと思うんだけどなぁ

532:デフォルトの名無しさん
10/01/10 20:45:46
龍馬伝おわた
風呂入ってくる。

533:デフォルトの名無しさん
10/01/10 20:47:43
答え書かれてるじゃん。一連の認証と送信手続きを動作確認しながらすればいいって。
意味わかんないなら誰かに金払って作ってもらいなよ。それか携帯でブログ更新するかだね。仕事中に。

534:デフォルトの名無しさん
10/01/10 21:17:34
>>525
>それが不思議な事にそのサイトは、コードを見ても次の様になっていて
>(SRCにJavaScriptになっています。)
>ドメインが同じかどうかの確認をする事が出来ません。
それはドメインが異なるのと同じ扱いになってる(勝手に解釈して情報省くな)
まあ、どう考えても自動操作はめんどくさいだけだから
524の言うようにhttpWebRequestでやるか
もう少し扱いが簡単なWebClient使って頑張るかだな

535:519
10/01/10 21:33:15
>>530
SendKeyで試そうしているのですが
例えばタイトル項目にフォーカスを当ててからSenkeyで
"{TAB}あいうえお" という文字列を送ろうとして次のコードを書いたところエラーが出てしまいます。

■コード
 // mshtml.IHTMLElement IhtmlIE
 IhtmlIE.Focus();

■エラー内容
 mshtml.IHTMLElement' に 'Focus' の定義がありません。

VB.netだと普通にFocus(); が出切るのになぜC#だと出来ないのでしょうか?






536:デフォルトの名無しさん
10/01/10 21:36:45
mshtml.IHTMLElement' に 'Focus' の定義がないからだろ。

537:519
10/01/10 21:39:46
>>532
お風呂から上がられましたら>>532さんのテクニックに期待してます。

>>533 >>534
mshtmlを操作して入力→ボタンのクリックをした方が一番簡単かと思っているのですが
その認証を行う為には、>>534さんのおっしゃってる様に
httpWebRequest か WebClient を使うしか無いのでしょうか。

また、mhstmを使用しても出来ない場合には、
本文の入力エリアは決まった位置に表示されるので、WindowsAPIを使用して
iFrameで定義されたiFrame内の要素をクリック→文字列の送信をする方法を考えているのですが

Windows APIで特定の座標をクリック→文字列の送信をするにはどうすれば良いでしょか?


538:519
10/01/10 21:40:29
>>536
VB.netだと Focus();が普通に使えてました。

539:デフォルトの名無しさん
10/01/10 21:41:42
じゃぁ、VB.NETでやれよ。

540:519
10/01/10 21:58:49
C#の方がコードが見やすいのでC#でやりたいです。

541:デフォルトの名無しさん
10/01/10 22:02:19
>>537
534だが、mshtmlを操作するよりWebClientのほうが簡単だ
DOMによる操作セキュリティ制限に引っかかっていて難しい
キー操作でどうにかするならレイアウト変わるたびにメンテ
マウスなら座標取るためにDOMが必要だから非現実的
どの方法も不可能とは言わないが、WebClientが圧倒的に簡単
根性でキー入力するなら文字はクリップボードから貼り付ければw

542:デフォルトの名無しさん
10/01/10 22:23:48
いい加減、mshtmlの使い方はスレチだと気付け

543:デフォルトの名無しさん
10/01/10 22:51:17
うーん。ログインしてタイトルと本文入れるとこまでできた。
でも投稿できない。本文を入れなければ投稿するけど
本文を入れて下さいのエラーがでる。今日はつかれたからこの辺にしておこう。

544:519
10/01/10 23:07:18
>>541
WebClientにも挑戦してみようと思います。
というよりちょっと疑問なのですが、
>DOMによる操作セキュリティ制限に引っかかっていて難しい
この様な情報ってどこから知られたのでしょうか?
私の方でも色々とぐぐってみたのですが見つかりませんでした。

>>543
ええっ!?風呂入ってもうそこまで出来たのですか!?ぱねーっす。
私はタイトルの入力まででだいたい5時間位時間がかかったのに、、、
お暇な時で結構ですので本文の入力方法をご教示下さい。


(仕事がつまらないから、こっそりブログのネタを考えてる俺って社会人として最低かなw?
まだ、自覚症状があるだけましと勝手に解釈しています。)


545:デフォルトの名無しさん
10/01/10 23:08:31
いいから死ねよ。

546:デフォルトの名無しさん
10/01/10 23:27:16
背筋がゾワゾワってするぐらい気持悪い

547:デフォルトの名無しさん
10/01/10 23:33:35
>>544
どこのブログ使ってんの?

548:519
10/01/10 23:43:21
>>547
live door っす

549:デフォルトの名無しさん
10/01/10 23:53:29
ATOM APIにも一応対応してるんだな。サポート外らしいけど。

550:デフォルトの名無しさん
10/01/10 23:54:36
おっ
できた。例外エラーが出てただけだった。

551:デフォルトの名無しさん
10/01/10 23:58:02
おめでとう。

552:519 ◆JRq8rZjk7c
10/01/11 00:09:53
>>550
は偽者です。

553:デフォルトの名無しさん
10/01/11 00:10:37
>>543=>>550 じゃねーの?

554:519 ◆xdkteuOpHo
10/01/11 00:11:10
>>552
トリップ後出しとか意味ないから。

555:519 ◆JRq8rZjk7c
10/01/11 00:12:51
>>554
そういうのつまんない

556:デフォルトの名無しさん
10/01/11 00:13:49
#5151
#kusosure

557:デフォルトの名無しさん
10/01/11 00:14:11
>>553
そうです


558:519 ◆G0.qAawIBk
10/01/11 01:42:54
>>553
なるほどw勘違いしてました。すみません。

>>555
お前は2chのプロ固定w?酉が丸見えの様だけどw

559:519 ◆G0.qAawIBk
10/01/11 01:50:25
プログラム板にもプロ固定がいるのか。

>>555
酉が分ってる時点でプロ固定丸出しw
2chのサクラのプロ固定はウザイからウセロカスw


560:デフォルトの名無しさん
10/01/11 02:12:30
プロ固定ってなに?しかもム板でコテとか馬鹿ですって言ってるようなもんだろ。
ふらっと行けよ、ふらっと。

561:デフォルトの名無しさん
10/01/11 02:22:47
>>543ですけどー
うpしとくよー。
DLパスはlivedoorだよ。
URLリンク(www1.axfc.net)

562:デフォルトの名無しさん
10/01/11 09:11:47
プロ固定ってなんだ・・・??

563:デフォルトの名無しさん
10/01/11 09:40:40
これか。
病気か?
URLリンク(ja.uncyclopedia.info)

564:519 ◆G0.qAawIBk
10/01/11 11:50:05
>>561
ありがとうございます。凄いです^^w
まさかこんな短期間で出切るなんて、、、
本当にどうもありがとうございました。

(これで仕事中にブログのネタを一生件名考える事が出来ますw)



565:519 ◆G0.qAawIBk
10/01/11 11:50:46
プロ固定を知らないとか大丈夫?
某サイトにプロ固定の情報がテンコ盛りだよw

566:デフォルトの名無しさん
10/01/11 11:53:59
頭のおかしな人が妄想を書き連ねたサイト、だろwwwww

567:デフォルトの名無しさん
10/01/11 12:03:35
kwsk

568:デフォルトの名無しさん
10/01/11 12:25:30
URLリンク(anti2ch.blog61.fc2.com)

プロ固定って新しい技術かなんかかと思ったら
ただのキチガイの妄想かよ

プロ固定とかいうのの存在を日記に書いたら
>しかし、この日記が広く知れ渡る前に、
>井上玄氏の元にはなぜか暴力団による激しい恫喝が行われ、
>家族もその被害に合い、この日記はすぐに閉鎖させられてしまいます。


新種の厨二病かなんか?

569:デフォルトの名無しさん
10/01/11 12:27:01
>>568
プロ固定を必死に否定するのが表2chのサクラ(プロ固定だよw)

某掲示板にプロ固定の情報とか全部晒されてるから見てご覧

570:デフォルトの名無しさん
10/01/11 12:29:19
>>569
よくわからんけど
ここでプロ固定うんぬん言い出してスレを荒らす行為と
そのプロ固定が無意味なコピペで書き込み数を水増しするのとどう違うの?

どんだけ2chに人生かけてんだよ

571:デフォルトの名無しさん
10/01/11 12:39:00
>>519がちょっと可哀そうな人だってことだけはよーく伝わった。

572:デフォルトの名無しさん
10/01/11 12:43:27
>>570
取り合えず荒らしと思う人がいるならこれで最後にするよ。
プロ固定 裏 で検索してみてね。

ブログの順位をあげるコツw
仕事中にネタを練りまくる事w

573:デフォルトの名無しさん
10/01/11 12:46:00
>>572
いようがいまいが 一般人は 気にしない

574:デフォルトの名無しさん
10/01/11 12:50:14
チラ裏に書いてろって言葉がぴったり

575:デフォルトの名無しさん
10/01/11 13:18:32
最近のチラシは裏が白紙じゃないことが多いから
表に書いてもいいけどな

576:デフォルトの名無しさん
10/01/11 14:30:39
プロ固定を知らないとか大丈夫?
某サイトにプロ固定の情報がチンコ盛りだよw

577:デフォルトの名無しさん
10/01/11 14:34:39
>>576
表2chに対抗して作られた某掲示板の「表2ch批判」
板に色々と際どい情報(プロ固定の住所・指名とかw)がマンコ盛りw

ところでプロ固定を知らないのはマジでヤバイと思うよ。
そーいう人に限って規制を喰らって●とか買っちゃうんだろうね。

C#とは関係無いからこの変にしておくけど。


578:デフォルトの名無しさん
10/01/11 14:38:09
ねぇ、これに乗っかってもなんも面白くないと思うけど・・・

579:デフォルトの名無しさん
10/01/11 14:39:19
いまどきプロ固定ネタとか。

580:デフォルトの名無しさん
10/01/11 15:10:15
最近知ったから興奮してるんでしょ。
よくまあググりゃひっかかるトリップバレからここまで話ひっぱれること。

581:デフォルトの名無しさん
10/01/11 19:09:32
おおっぐぐったら確かにヒットしたw

プロ固定かとおもたw

582:デフォルトの名無しさん
10/01/11 19:36:50
トリップは一方向ハッシュで生成してるから、
「プロ固定に配布されているトリップ解析プログラム」
なんてありえないのにねw

583:デフォルトの名無しさん
10/01/13 00:06:10
質問です。

.NETあるいはWindows上で、
「それを確保したアプリケーション以外からは決してアクセスできないセキュアな永続化領域」
を確保する手段はあるでしょうか?

早い話が、ローカルに何かのサービスのパスワードをセキュアに保存する方法があるのかどうか、
ということなのですが。

584:デフォルトの名無しさん
10/01/13 00:11:35
できます

585:583
10/01/13 00:12:17
出来るんですね。分かりました。
自分で調べます。ありがとうございました。

586:デフォルトの名無しさん
10/01/13 00:29:57
ないと思う。

587:デフォルトの名無しさん
10/01/13 00:47:51
Windows APIのCryptProtectDataなんかで実現できると思う。

588:デフォルトの名無しさん
10/01/13 01:06:44
それもパスワード知ってたら無理だろ。

589:デフォルトの名無しさん
10/01/13 02:10:44
>>561 さんのコードを元に>>519さんと同じ事を学習用に
やっているのですがどうも次のキャストで失敗する為に
後続処理のページ内の各オブジェクトにアクセスする事が出来ません。
>>561さんは、キャストもせずになぜそのまま出来たのでしょうか?

※対象コード
Private Sub WebBrowser1_DocumentCompleted(ByVal sender As System.Object, ByVal e As
System.Windows.Forms.WebBrowserDocumentCompletedEventArgs) Handles WebBrowser1.DocumentCompleted
  
  state = state + 1
   If state = 1 Then
      Dim doc As HTMLDocument
      Try

        '(A)
        doc = DirectCast(WebBrowser1.Document, HTMLDocument)

        '(B)
        'doc = WebBrowser1.Document

      Catch ex As Exception

        Debug.WriteLine(ex.Message)

      End Try

※エラー内容
  System.InvalidCastException = {"型 'System.Windows.Forms.HtmlDocument'
  のオブジェクトを型 'mshtml.HTMLDocument' にキャストできません。"}


(A)(B)いずれのコードでも同一のエラーが表示されてしまいます。

590:デフォルトの名無しさん
10/01/13 02:48:26
mshtml.HTMLDocumentとSystem.Windows.Forms.HtmlDocumentは全く別ものなんだからキャストできなくて当然。
>>561はmshtml使わずにFormsだけで実装しているように見える。
それからスレタイよく読め。

591:デフォルトの名無しさん
10/01/13 02:52:58
>>590
WindowsFormにツールボックスからWebBrowserをドラッグして使用しているのですが、
何が違うのでしょうか?

大変あつかましいお願いかとは思いますが、キャストの方法を教えて頂けますか?

592:デフォルトの名無しさん
10/01/13 03:19:31
だからキャストできないんだって

593:デフォルトの名無しさん
10/01/13 03:32:16
絶対あつかましいとか思ってねーw

594:デフォルトの名無しさん
10/01/13 06:32:17
私が寝ている間に、小人さん>>585がなんか書き込んでいますが、

>>586-588
CryptProtectData系も、ログイン中のユーザが実行している他のプログラムからは
普通にアクセスできてしまうようですので、欲しいものとは少し違うかもしれません。
(まぁ、大概のケースでは問題にならないかもしれませんが)

とりあえず無さそうということで、ありがとうございました。

595:デフォルトの名無しさん
10/01/13 06:54:54
追記
小人さん>>585は無能

596:583
10/01/13 07:04:06
>>595
いや。。君は誰さ。。。

597:デフォルトの名無しさん
10/01/13 07:12:15
DomDocumentだっけか? キャストに使えるCOMオブジェクトがプロパティに
あった気がする。

598:デフォルトの名無しさん
10/01/13 09:10:09
自演されたくない質問者はトリ付けた方がいいと思うぜ
最近暇人がなりすまし覚えて粘着してるから

599:デフォルトの名無しさん
10/01/13 11:17:02
>>598
暇そうだね

600:デフォルトの名無しさん
10/01/13 11:45:16
>>589
doc.xml = WebBrowser1.Document.outerXml
みたいに中身から再構築すればいいんじゃね?
超適当に言ってみるけど。

601:デフォルトの名無しさん
10/01/13 13:47:25
>>600
低脳乙

602:デフォルトの名無しさん
10/01/13 14:43:34
多分VB6上がりなやつなんだろう

603:デフォルトの名無しさん
10/01/13 18:25:20
正直言って、WebBrowserコントロール使うんだったらVB6でやった方が楽だしデバッグもしやすい。

604:589
10/01/13 22:25:52
>>600
分らないのなら黙ってて下さい。


どなたかお教え願います。

605:デフォルトの名無しさん
10/01/13 22:28:21
>>603
なんでなんで?

606:デフォルトの名無しさん
10/01/13 22:46:02
>>604
>>590

そのコードがこのスレに相応しいかどうかすら判らないなんて…
つか、どこから mshtml が沸いて出たのやら。
変な参照設定でもしてるのか?

607:デフォルトの名無しさん
10/01/13 22:51:18
成りすましが受けると思ってしつこく繰り返してる頭のおかしな人だから放置で。

608:デフォルトの名無しさん
10/01/13 22:53:26
もう冬休み終ったと思ったんだが

609:デフォルトの名無しさん
10/01/14 00:41:44
今年のおれのスケジュール
~3月下旬 冬休み
~6月末 春休み
~8月末 夏休み
~11月末 秋休み
その後年末まで冬休み

610:デフォルトの名無しさん
10/01/14 00:44:47
結局人生ってさ「経験」が物を言うんだよな
いい大学行こうがいい成績取ろうが「経験」が無いと世間に出たときに何も役に立たない
まぁお前らみたいなオタクにはわかんねーかもしんないけどな
俺は高卒で世間的には低学歴かもしれないが、フランスに渡米した経験を活かして
今は充実した仕事してるよ
お前らも壁作って自分の世界に閉じ込もって無いで
今しかできない「経験」しといて経験値積んどけ


611:デフォルトの名無しさん
10/01/14 00:57:24
>>610
俺のよく行く「30代職歴無しの就職活動スレ」と同じ空気を感じる

612:デフォルトの名無しさん
10/01/14 01:30:07
最早、懐かしさすら感じるw<フランスに渡米

613:デフォルトの名無しさん
10/01/14 01:42:09
>>612
日本語でおか

614:デフォルトの名無しさん
10/01/14 03:26:38
えり

615:デフォルトの名無しさん
10/01/14 03:30:43
.NET アプリって低スペXPだと起動に数秒かかったりするけど
Vistaやwin7だったらメモ帳くらい早く画面出て操作可能になるの?

616:デフォルトの名無しさん
10/01/14 03:33:02
なんでOSのバージョンがあがったくらいで
劇的に速くなるなどと想像できるんだろう。

617:デフォルトの名無しさん
10/01/14 09:43:34
一回起動しちゃえば速くなるんだけどな。
そういうのが気になりそうな小さめのアプリはVC++でがんばれ

618:デフォルトの名無しさん
10/01/14 10:32:15
まあ、Vista とかだと推奨スペックが違うから、ハード性能的にだいぶ違う気もするけど。
あと、Vista 以降では SuperFetch があるんで、メモリ多く積んでる速いかも。

619:デフォルトの名無しさん
10/01/14 18:02:14
やはりそう簡単に実行速度がかわるもんでもないんですね
ありがとうございました

620:デフォルトの名無しさん
10/01/14 18:38:36
起動は速いけど実行が遅いのと
起動は遅いけど実行が速いのが選べたらいいのに

621:デフォルトの名無しさん
10/01/14 18:45:09
起動も早いし実行も速い

622:デフォルトの名無しさん
10/01/14 19:08:27
ただし開発は…

623:デフォルトの名無しさん
10/01/15 04:48:57
>>616
おまえは立派な開発現場に居合わせたことがないんだろうね

624:デフォルトの名無しさん
10/01/15 17:03:05
C#で仮想メモリの領域って増やせないんですか?
4G中3.5Gぐらい使いたいんですけど

共有メモリにマッピングしても2G超えたらメモリダンプしちまいます。

誰か教えてください。

625:デフォルトの名無しさん
10/01/15 17:37:26
>>624
つ 64bit版のWindows

626:デフォルトの名無しさん
10/01/15 17:46:03
>>625
32Bit版が前提でお願いしますよ~

いや、そう出来れば一番いいんですけどね・・・

627:デフォルトの名無しさん
10/01/15 17:49:11
>>626
32Bitは無理。

628:デフォルトの名無しさん
10/01/15 17:52:26
>>627
CとかだとCreateFileMappingとか使って、共有メモリに構造体ぶち込んだり
C++だったらVirtualAllocとか使ったりして
いけたんですがねー


やっぱりC#だと無理なのか・・・

629:デフォルトの名無しさん
10/01/15 18:00:41
FileMappingは.NET4.0からだな


630:デフォルトの名無しさん
10/01/15 18:02:16
一応DllImportして、CreateFileMapping使ってみたんだけど
やっぱり、2Gで落ちるんですよね

参った

631:デフォルトの名無しさん
10/01/15 18:13:45
LargeAddressAwareがなんちゃら

632:デフォルトの名無しさん
10/01/15 18:30:26
頑張ればいけるかもしれない・・・

633:デフォルトの名無しさん
10/01/15 18:40:20
editbin.exeが鍵か

634:デフォルトの名無しさん
10/01/15 19:40:57
boot.ini で /3G で >>633 ので IMAGE_FILE_LARGE_ADDRESS_AWARE 
でも3G

635:デフォルトの名無しさん
10/01/15 19:51:59
DVDのISOファイルすら操れないとは・・・

636:デフォルトの名無しさん
10/01/15 20:04:36
そんなものをオンメモリでやるな。

637:デフォルトの名無しさん
10/01/15 20:24:06
でもそろそろそういうのもオンメモリでやる時代になってきたってことじゃね?
640kのメインメモリなんて頃もあったわけだし。

638:デフォルトの名無しさん
10/01/15 22:42:10
じゃね?

639:デフォルトの名無しさん
10/01/15 23:02:27
>>628
C++でも32ビットWindowsなら2GBまでだろ。C#も同じ。ただし、当然>>634はC#でも通用する。
あと、64ビット版WindowsでIMAGE_FILE_LARGE_ADDRESS_AWARE付きの32ビットEXEを実行すると仮想アドレス4GB全部使える。

>>635-637
64ビットでやれ。

640:デフォルトの名無しさん
10/01/16 06:20:39
HDDに書き込んで取り出してを繰り返せよ


641:デフォルトの名無しさん
10/01/16 07:42:52
>>628
CreateFileMapping自体は4G越えもいけた。
MapViewOfFileでまとめて設定できるViewが2G越えでダメだといってるのだろうか?
どちらにせよ、ネイティブのViewからマネージド領域へマーシャリングが必要になるので
あまり効率は良くない。

642:デフォルトの名無しさん
10/01/16 10:40:26
32ビットで4G積んで、システムプロパティで実装メモリ見たら
4GB(3GB使用可能)てなってるが。

643:デフォルトの名無しさん
10/01/16 11:09:58
>>642
それは物理メモリが3GB使えるということだけど、今の話とは関係ない。
物理メモリに空きが無くても、メモリ確保やMapOfViewFileは成功する。
そのためのページング機構。

今問題なのは、プロセスごとの仮想アドレス空間(のうち、ユーザモードで使える分)。
URLリンク(msdn.microsoft.com)(VS.85).aspx
逆に、いくら物理メモリが空いていても、アドレス空間に空きがなければソフトウェアから使うことは不可能。

644:デフォルトの名無しさん
10/01/16 11:24:59
仮想領域が32bitアドレッシングである限り、言語を問わずマップできるのは 268435456 byte まで。
思うに、>630で落ちるというのは、マップ可能なサイズ以上にマップしようとしてないか?
細かくビューをMap/UnMapすれば通ると思うんだが・・・

645:デフォルトの名無しさん
10/01/16 11:45:05
DOS時代に16bit nearポインタだと64kしかメモリブロック確保出来なかったのと同じことがおきてるわけだよな。

646:デフォルトの名無しさん
10/01/16 13:18:46
そのうち、ギガバイト単位のメモリをやりくりするのが当然になる時代が来るのかなぁ。

647:デフォルトの名無しさん
10/01/16 13:20:27
今はもう12GBとかつんでるパソコンが20万以下で手に入るからな。
もうすぐだろう

648:デフォルトの名無しさん
10/01/16 14:36:55
こないだ会社の後輩がいきなり2GBの配列作ってた。
そういうことが何も考えずにできちゃう時代になったんだなあとしみじみ思った。

649:デフォルトの名無しさん
10/01/16 14:44:51
でもやっぱ2G配列確保は躊躇するわ・・・



650:デフォルトの名無しさん
10/01/16 14:54:15
さすがに2Gの配列を「何も考えずにできちゃう時代」はまだ数年は先だと思ふ

651:デフォルトの名無しさん
10/01/16 15:14:40
ファイルマッピングなら2GB程度・・・と思ったが、「ファイルマッピング」という
点で「何か考えている」か。

652:デフォルトの名無しさん
10/01/16 17:52:51
携帯開発だとそうはいかないんじゃないですか?
ビット詰めして軽くするとかやってるみたいですけど。

653:デフォルトの名無しさん
10/01/16 18:22:56
そりゃ組込みだとそうはいかないだろうけど
そもそも組込みでC#だのJavaだのの高級言語使える時点で時代が違うよな。


654:デフォルトの名無しさん
10/01/16 18:43:48
test

655:デフォルトの名無しさん
10/01/16 18:49:48
共通一次

656:デフォルトの名無しさん
10/01/16 19:01:52
2Gって64環境じゃないとそもそもできないと思うが。
しかし、アクセスがある時間内では局所的で、
ワーキングセットが小さく保たれていれば
それなりの動きをしているともいえるな。


657:デフォルトの名無しさん
10/01/16 19:31:47
ですね。

658:デフォルトの名無しさん
10/01/17 02:21:53
たぶん冬休みの宿題だったんだよw

659:デフォルトの名無しさん
10/01/17 17:45:10
マルチスレッドプログラミングにおける適切なスレッド数を示したガイドラインみたいなものってありますか。
今はなんとなくコア数でやってます。

660:デフォルトの名無しさん
10/01/17 18:26:40
場合によるとしか
IOなどでブロックされることが多いならいっぱい作れば速くなるだろうし
ずっと100%動いてるなら=コア数で十分だし

661:デフォルトの名無しさん
10/01/17 20:11:00
>>660
ありがとうございます。
適当そうなスレッド数を事前に見積もる必要がありそうですね。

662:デフォルトの名無しさん
10/01/17 20:57:19
レジストリとかで変更できるようにしとかないような残念な奴にならんようにな。

663:デフォルトの名無しさん
10/01/18 07:51:32
レジストリを使うこと自体が残念なんだが

664:デフォルトの名無しさん
10/01/18 10:27:29
スレッド数とかユーザが弄れるようになってるのもソフトによっちゃ結構残念ではあるような・・・
フリーソフトならありかもしれんけどサポート要るソフトでは面倒だからやりたくないわ。


665:デフォルトの名無しさん
10/01/18 14:11:32
面倒だからやりたくない人にはプログラムを組む資格がないんだが

666:デフォルトの名無しさん
10/01/18 14:21:52
その資格試験どこで受けられますか?

667:デフォルトの名無しさん
10/01/18 14:33:34
>>664
非公開・サポート無し、な機能にすればいいと思うよ

668:デフォルトの名無しさん
10/01/18 14:42:16
俺は面倒だからプログラムを組むけどな

669:デフォルトの名無しさん
10/01/18 15:35:45
>>665
ん?
面倒だからやりたくないってのは
機能を盛りこむとユーザからその分の問い合わせがくる
→ 面倒な仕事が増えるってことなんだけど?

なんか意味判ってない人がいるようだな。

俺だったらコア数設定みたいなの設定項目に組みこむぐらいなら
動いてるシステムのコア数によってスレッド数増減するようなコード書くけどな。

670:デフォルトの名無しさん
10/01/18 15:43:23
俺は面倒だから3行以上は読まないな

671:デフォルトの名無しさん
10/01/18 15:47:01
この板はプロアマ自称他称問わずが混在していることを忘れないよう。
あと仕事の話しを持ちこむと喜ぶ奴がいることも忘れないよう。


672:デフォルトの名無しさん
10/01/18 15:49:19
日本人は機能過剰と設定項目過剰が大好きな思考停止民族ニダ

673:デフォルトの名無しさん
10/01/18 16:40:57
BackgroundWorker

674:デフォルトの名無しさん
10/01/18 17:15:15
>>673
ふらっとスレとまちがえたか

675:デフォルトの名無しさん
10/01/18 18:10:42
>>673
噂のおじいちゃんですか?((((;゚Д゚))))ガクガクブルブル

676:デフォルトの名無しさん
10/01/18 21:33:40
そのスレッド増減の適正値なんて予測できないから調整手段入れとけって話。
あなたは神かww

677:デフォルトの名無しさん
10/01/18 21:37:36
ん?システムのコア数に合わせて自動調整するって話とちゃうの?
QuadCoreなら4とか。上限ぐらいは設定できても良い気はするけど。

678:デフォルトの名無しさん
10/01/18 21:48:38
適正値が存在する処理かどうかも不明だし
調整手段を用意するかどうかは処理次第ポリシー次第だし
質疑応答はとっくに終わってるし
どうでもよいと思います。

679:デフォルトの名無しさん
10/01/18 21:58:09
はぁ?ユーザがどうやって適正な値に設定するっていうんだよ。
コア数はプログラム側で読める上にどんな処理してるのかわかってるのもプログラム側。
この状況で誰が一番適切な値決められるんだよ。思考停止してんじゃねーよぼけ。



680:デフォルトの名無しさん
10/01/18 22:02:05
>>679
例えばMTUでggrks

681:デフォルトの名無しさん
10/01/18 22:16:31
>>680
ん?はぁ?ふっはっ?

682:デフォルトの名無しさん
10/01/18 22:17:39
>>680
あほだ、あほがおる

683:デフォルトの名無しさん
10/01/18 22:25:09
まあ、だからレジストリがいいんじゃないの?
勝手にいじるようならサポートする必要はないし、勘違いユーザはいい気分になるだろうし

684:デフォルトの名無しさん
10/01/18 22:28:13
ユーザ: 1コアだけ別のプログラム用に空けときたいんだけど・・・
>>679: はぁ?これが一番適切な値なんだよぼけ。

685:デフォルトの名無しさん
10/01/18 22:34:08
仕方ないので優先度下げた

686:デフォルトの名無しさん
10/01/18 22:42:27
>>685: はぁ?

687:デフォルトの名無しさん
10/01/18 22:46:55
中身を知らなくてもユーザは使い方を知ってる。
っていうかね、全ての変数を設定項目にしてもいいぐらい。おもいあがんな。

688:デフォルトの名無しさん
10/01/18 22:49:48
>>687
おもいあがってるのはおまえだろ

689:デフォルトの名無しさん
10/01/19 00:00:13
>>688
おもいあがったプログラマさんですか?
最適コア数自動調整乙でございます。

690:デフォルトの名無しさん
10/01/19 00:20:16
MAX何コアまで割り当てるとかくらいはあってもいいけど、まあその程度のことだ。


691:デフォルトの名無しさん
10/01/19 00:58:47
プログラマの思い上りは異常。
ユーザーが一番偉いのに。設定値は解放されるべき。


692:デフォルトの名無しさん
10/01/19 01:07:51
お客様は神様ってやつか。
客商売やってりゃ、神様とでも思わないとやってらんねーよってやつだ。

693:デフォルトの名無しさん
10/01/19 01:40:07
ソフトが気に入らないときは自分でつくりゃいいんだよ。
低脳には無理だろうが。

694:デフォルトの名無しさん
10/01/19 01:40:54
客商売やってりゃ、余計な設定は外したくなる。


695:デフォルトの名無しさん
10/01/19 02:04:35
>>694
余計なことすんなよ。コア数設定させてやれよ。

696:デフォルトの名無しさん
10/01/19 06:05:17
日本での商売のソフトは普通、環境を限定して作るもんだろ。

697:デフォルトの名無しさん
10/01/19 07:24:17
わざわざマルチスレッドにしてまで高速化するものだったら、ユーザもそれなりのレベルを想定してると思う。

698:デフォルトの名無しさん
10/01/19 08:02:18
アプリケーションの要求速度とユーザのレベルとの間に相関があるとか
論理展開が突飛すぎて付いていけない

699:デフォルトの名無しさん
10/01/19 09:05:40
一種類のタスクでマルチスレッド化のオーバーヘッドを上回るほどの重い計算をさせるんだろ。
一般的じゃない。

700:デフォルトの名無しさん
10/01/19 10:14:12
>>697
これがプログラマー脳って奴だ。
こんなんだから日本のIT業界はおいてきぼりになるんだわ。
あーあ。馬鹿に付ける薬はないって本当だな。


701:デフォルトの名無しさん
10/01/19 10:23:34
なんだよ。じゃあ、いってみろよ。
シングルスレッドじゃなかったら、プロセッサの数のスレッド数。
それで不満なんてマニア。

702:デフォルトの名無しさん
10/01/19 12:43:18
ロードバランサ

703:デフォルトの名無しさん
10/01/19 13:30:06
>>702
意味不明な書き込みにワロタ

704:デフォルトの名無しさん
10/01/19 14:14:36
処理内容も対象ユーザ層もぼんやりなまま各自の脳内設定で煽り合って何がしたいの?
というかそもそもなんで喧嘩腰なの?
あと突然5段階ぐらい論理過程ぶっ飛んだ単語を並べる奴は何がしたいの?
雑談にしてもちょっと酷いんじゃないの?
ばかなの?しぬの?

705:デフォルトの名無しさん
10/01/19 14:23:04
荒らしたいだけだろ。馬鹿の相手する方も馬鹿だな。

706:デフォルトの名無しさん
10/01/19 14:43:52
技術的な話になると出番がないので
こういうときでないと書き込めません><

707:デフォルトの名無しさん
10/01/19 19:06:32
どういうときにマルチスレッドにするの? 数値計算ぐらいしか思い浮かばないんですが。

708:デフォルトの名無しさん
10/01/19 19:08:05
C#勉強がてらダウンロードして早速サンプル作ろうと思ったんだけどコンパイルが通らない。
getData(string):値を返さないコードパスがあります。といったエラーが解決できない。
どこが悪いの?

namespace StockQuote
{
public class StockQuote
{
public static void Main()
{
string url = "URLリンク(stocks.finance.yahoo.co.jp)";
string rtnData = getData(url);
Console.Write(rtnData);
}

private static string getData(string pUrl)
{
try
{
HttpWebRequest myHttpWebRequest = (HttpWebRequest)WebRequest.Create(pUrl);
return "SUCCESS";
}
catch (Exception)
{
return "ERROR";
}
}
}
}

709:デフォルトの名無しさん
10/01/19 19:16:48
そのコードをコピペしてみたが、
コンパイル通ったよ

710:デフォルトの名無しさん
10/01/19 19:21:01
A.dllというアセンブリがあって
A.dllが読み込まれた場合に
A.dllの中のBというクラスの特定のスタティックメソッドを呼び出すことは出来ますか?


711:デフォルトの名無しさん
10/01/19 19:22:10
>>709
えええ?と思い、コメントアウトしてた行を全部消してみたらコンパイルが通りました^^
なんかコンパイラが信用できないなー。。。

712:デフォルトの名無しさん
10/01/19 19:52:01
>>710
A.dll側で実装する方法は思いつかないなぁ
A.dllを参照する側なら、ロード前にAppDomainのAssemblyLoadイベントを設定しとけばいけるけど

713:デフォルトの名無しさん
10/01/19 20:01:18
呼び出すって言ってるから、エントリポイントのことじゃないだろ

714:デフォルトの名無しさん
10/01/19 20:33:08
>>711
なぜ自分の頭の方を疑わないのか。。。

715:デフォルトの名無しさん
10/01/19 20:34:03
コンストラクタってよくわからないのですが
初期化するって何を初期化するんでしょうか?


716:デフォルトの名無しさん
10/01/19 20:34:45
newするオブジェクトを

717:デフォルトの名無しさん
10/01/19 20:40:34
プライベート/パブリックフィールドの初期化とかインスタンスを実行するのに必要な初期処理とかしてやればいいよ。


718:デフォルトの名無しさん
10/01/19 21:06:37
>>715
「何を初期化するか」が分からないというより、
そもそも初期化って概念がわからないんでしょw

そんなの気にしなくていいよ自ずとわかるから。

719:デフォルトの名無しさん
10/01/19 23:05:20
>>707
ネットワークアクセスやIOなど
まあそういう使い方だとコア数なんか全く関係ないけどなw

720:デフォルトの名無しさん
10/01/20 09:11:02
>>715
思いつかないなら、初期化するオブジェクトは無いということだね。


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch