タグ

2010年4月30日のブックマーク (6件)

  • WebページをMHT形式(.mhtファイル)で保存するには?[C#、VB] - @IT

    Internet Explorer(以下、IE)では、現在開いているWebページを単一のMHT形式のファイル(.mhtファイル)として保存できる*1。通常、WebページはHTMLファイルやJPEGファイル、CSSファイルなどの複数のファイルから構成されるが、MHT形式ではそれらを丸ごと1つのファイルにまとめてしまうことができるため、Webページを保存しておきたい場合などには便利な機能である。 *1 WebページをMHT形式で保存するには、メニューの[ファイル]-[名前を付けて保存]により[Webページの保存]ダイアログを開き、[ファイルの種類]で「Webアーカイブ、単一のファイル(*.mht)」を選択して保存する。

  • Windows: Windows の限界に挑む: ハンドル

    この記事は、「Windows の限界に挑む」シリーズの 5 回目の投稿です。この一連の記事では、物理メモリ、仮想メモリ、プロセス、スレッドなど、Windows で管理できるリソースの数量とサイズの上限について扱ってきました。 Windows の限界に挑む: 物理メモリ Windows の限界に挑む: 仮想メモリ Windows の限界に挑む: ページ プールと非ページ プール Windows の限界に挑む: プロセスとスレッド 今回は、ハンドルの実装の限界を探り、解説します。ハンドルは、アプリケーションが操作する基的なオペレーティング システムのオブジェクト (ファイル、レジストリ キー、同期プリミティブ、共有メモリなど) の開かれているインスタンスを表すデータ構造です。1 つのプロセスが作成できるハンドルの数については、2 つの制限があります。システムで設定されているプロセスごとのハン

    Windows: Windows の限界に挑む: ハンドル
  • !htrace コマンドを利用したハンドルリークのデバッグ方法

    このページでは !htrace デバッグコマンドを用いて、ハンドルリークを発生させている箇所を特定する方法をご紹介します。 ハンドルリークの概要はこちらをご覧ください。 準備 リークするプログラムの準備 ここではページレベル HTTP モジュールを利用しハンドルリークを発生させて、調査方法について具体的に解説しています。 テスト用プログラムの作成方法は ハンドルリークテスト用 HTTP モジュールの作成 を見てください。 もちろん、番環境で調査するときはこんなプログラムを仕掛けちゃダメですよ! 準備 ~ Debugging Windows for Windows のインストールとシンボルパスの設定 マイクロソフトのサイトからダウンロード可能な Debugging Tools for Windows をインストールし、シンボルパスを設定してください。 現象の確認 パフォーマンスモニタで、w

    !htrace コマンドを利用したハンドルリークのデバッグ方法
    Wacky
    Wacky 2010/04/30
  • 実践的なパターン: テストの容易性を高める設計

    Considering this sample, here's the worst case scenario for the eleventh GC. Say the tenth Gen 0 collection finished at the beginning of the second interval and the eleventh Gen 0 collection finished at the end of the third interval. That means the time between the end of the two collections is about two sampling intervals, or two seconds. The % Time in GC counter shows 3 percent, and so the eleve

    実践的なパターン: テストの容易性を高める設計
  • 青柳 臣一 ブログ(趣味系) [.NET][COM] Marshal.ReleaseComObject の危険性について

    先日書いた 「[IE][C#][COM] IE のセキュリティゾーンをプログラムから操作する」 に、元記事を書かれた Dennis "D.C." Dietrich さんがコメントをくれました。 (わざわざ翻訳して読んでくれたそうです。コメントをもらったのは 6/26 ですが、今まで書く暇がありませんでした) そのコメントにて Discussion of Marshal.ReleaseComObject and its dangers こちらの記事を紹介してくれました。 [厳密な訳ではありません。かなり大雑把ですし、一部英文の意味がよくわからないところもあります。正確なところはぜひ原文をご覧ください] Marshal.ReleaseComObject を使えば望んだときに即座にリリースできる。しかし、COM コンポーネントのマネージド表現である RCW のこれを呼ぶとき、もしこの RCW を

    Wacky
    Wacky 2010/04/30
    本当に ReleaseComObject を使う必要があるときには、.NET Framework 2.0 からある Marshal.FinalReleaseComObject を使うべき。
  • InfoQ: Marshal.ReleaseComObjectは危険な場合がある

    Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。このでは、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...

    InfoQ: Marshal.ReleaseComObjectは危険な場合がある
    Wacky
    Wacky 2010/04/30
    Visual 2010のいくつかのコンポーネント、ウィンドウマネージャ、コマンドバー、テキストエディタをネイティブコードからマネージドコードに変更しているとき、Marshal.ReleaseComObjectを使用した問題に気づいた。