ListView

[C#] ListView.Items.Addの描画処理が異常に重くてハマった

ListViewコントロールで、詳細表示(ViewプロパティをDetails)し、アイテムを追加していくと描画処理が異常に重くなる現象が発生。 この問題を解決するのに少しハマったので覚書としてメモっておく。 自作ソフトRSS速報のListView表示で、数十件の項目を表示するのに数分かかることもある。 描画時にGUIがほぼ固まってしまう。 遅い処理部分をデバッグで調べてみると、 の行で、数秒が掛かっている。 しかも、件数が増えれば増えるほど遅くなっていく。

[C#] ListView.Items.Addの描画処理が異常に重くてハマった Read More

[C#] 送るメニューにショートカットを登録/解除する方法

エクスプローラーなどでファイルを右クリックしたときに出てくる「送る」メニュー。 この送るメニューにアプリケーションを登録しておくと、選択したファイルの情報を アプリケーションに渡して起動できるため、使い方によっては便利な機能。 例えば、logファイルを”メモ帳”に送って起動するといったことができる。 関連記事 [C#] スタートアップメニューにショートカットを登録する方法 [C#] SSHコマンド実行とSCPファイル転送のサンプル [C#] プログラムからExcelファイルを読み書きする方法 HTML内のRSS情報を取得する DVD再生ソフトで表示できない Window …

[C#] 送るメニューにショートカットを登録/解除する方法 Read More
霜

GIMP2で作成したサンプルロゴ集

ごくたまに画像ロゴを作成するためにGIMPを使用する。 割と簡単にカッコいいロゴを作れるため重宝している。   だけど、そこそこ種類があって、どのメニューがどういうロゴだか忘れてしまう。 なので備忘録的にGIMP2.8のサンプル ロゴ画像を載せておくことに。   と、その前にロゴ作成方法。 GIMPを起動 [ファイル]→[画像の生成]→[ロゴ]メニュー配下の任意のサブメユーを選択。 関連記事 Windows Vistaが届いた 全力通販に楽天ランキングを表示する機能を追加 [C#] WebBrowserコントロールのレンダリングモードをデフォルトのIE7から最新IEモードに …

GIMP2で作成したサンプルロゴ集 Read More
C#でExcelファイルを読み書きするプログラム

[C#] Excelを使ったプログラムとインストーラの作成

C#でExcelファイルを読み書きするプログラムと、そのプログラム(exe)を配布するためのインストーラを作ってみた。 何故態々インストーラを作成するのか? それは、作成したExcelを使ったプログラムは、exeの配布だけでは他のPCでは動かないため。 Excel関連のDLLも一緒に配布する必要がある。 例えば、前に作成したサンプルアプリの場合、配布時は以下のDLLが必要。 Microsoft.Office.Interop.Excel.dll Microsoft.Vbe.Interop.dll office.dll stdole.dll   ⇒これ、後から気づいたけど実は認識誤り(. …

[C#] Excelを使ったプログラムとインストーラの作成 Read More
WebBrowserコントロールで実行

[C#] WebBrowserコントロールのレンダリングモードをデフォルトのIE7から最新IEモードに変更する

C#やVB.NETなどのアプリケーションで、WebサイトやHTMLなどを表示したい場合に使うWebBrowserコントロール。 このWebBrowserコントロールを使えば、簡単にInternet Explorer同等のWebページを表示できる。 でも、最近このWebBrowserコントロールで表示崩れが増えてきたような気がする。 例えば、ここのホームページを表示すると、メニューのスタイルが崩れてしまう。   ↓WebBrowserコントロールで表示   関連記事 [C#] スタートアップメニューにショートカットを登録する方法 [C#] 送るメニューにショートカットを登録/ …

[C#] WebBrowserコントロールのレンダリングモードをデフォルトのIE7から最新IEモードに変更する Read More
テストメッセージ

リモートPCにメッセージボックスを表示してみる

Windows NT/2000/XPの頃、NET SENDコマンドを使って、簡単に他のPCに対してメッセージボックスを通知することができた。 送られてきた方は、急にメッセージボックスが表示され、結構ビビるのだが。 昔、この仕組みというかサービスを利用したフリーソフトを作ったこともあった。 でも、Windows XPでは、”Messenger”サービスが起動していないと使えなくなり(デフォルトは停止)、更にVista以降では、”Messenger”サービス自体が消え、この方法でメッセージ通知することができなくなった。   その代わりに、I …

リモートPCにメッセージボックスを表示してみる Read More
Google Chromeで保存したパスワードは丸見え!?

Google Chromeで保存したパスワードは丸見え!?

Google Chromeでは、保存したパスワードが見えてしまう。 これはあくまでもChromeのバグではなく仕様らしい。 関連記事 日本語版 Google Earth 4 Google Earth 4.1 Google chromecastを使ってテレビで動画再生してみた(HDMI接続しWi-Fi経由でストリーミング) Google Earth – Beta (Version 4)を触ってみた WindowsヘルプからHTMLヘルプへの移行 Seleniumを使ったWeb操作の自動化

Google Chromeで保存したパスワードは丸見え!? Read More
Windows版iTunesのバックアップ格納先フォルダ

Windows版iTunesのバックアップ格納先フォルダ

iTunes11が11/30に公開されました。 今回はUIを中心に大幅にリニューアルされたということで、早速ダウンロード。 iTunes10はWindowsのUIと異なるせいか、なんか使いにくい。 それが少し改善されているような気がする。 関連記事 [iPhone]iCloudのフォトストリームに保存された写真の削除方法 解約後のiPhone6 PlusをSIM無しで使用してみる Google Chromeで保存したパスワードは丸見え!? [UiPath] 対象の画像を認識してダブルクリック [C#] Excelを使ったプログラムとインストーラの作成 WindowsヘルプからHTMLヘルプへの …

Windows版iTunesのバックアップ格納先フォルダ Read More
HTML内のRSS情報を取得する

HTML内のRSS情報を取得する

C#でHTML文書からRSSのURLを取得するサンプル。 このサンプルでは以下の処理を行う。 1.テキストボックスに対象となるHTML(WebサイトのURL)を指定。 2.[RSSのURL取得]ボタン押下。 3.取得したRSSが表示される。 関連記事 IE7β2を使ってみる [C#] WebBrowserコントロールのレンダリングモードをデフォルトのIE7から最新IEモードに変更する WindowsヘルプからHTMLヘルプへの移行 HTML5で各電力会社の電力使用率をアナログメーターで描画するサンプルを作ってみた。 jQueryのautopagerを使わず自動的に次ページ読込み処理を作ってみた …

HTML内のRSS情報を取得する Read More
解約後の携帯

解約後の携帯カメラの使用方法

ソフトバンク 3G携帯の機種変更後のカメラ使用方法について 先日、iPhoneに機種変したけど、iPhoneの前は、910SH(SHARP)を使用していた。 この旧3G携帯、500万画素のデジカメが付いていて気に入っていたが、携帯解約すると、USIMカードが無くなるのでカメラも使えなくなってしまう。 カメラを起動すると、 「この機能は現在利用できません。ネットワーク自動調整を行ってください。」 と表示される。 関連記事 C言語ノウハウ ネットワークスピードを調べる方法 最適化有無で動作が変化 使い捨て感覚でWindowsを使用できる「Windows Sandbox」を使ってみた 時差のお話 全 …

解約後の携帯カメラの使用方法 Read More
16進数6桁文字列からカラーを取得

16進数6桁文字列からカラーを取得

前回のカラーコードを16進数表示するに続き、今回はその逆の16進数文字列からカラー値を求めるサンプルを紹介。 このサンプルでは以下の処理を行う。 テキストボックスに16進数6桁のRGBの値を指定 ボタンをクリックで、ボタンの背景色を指定カラーに変更 ついでにボタンの文字列も色を反転 GUIデザインでは、Formにbutton2という名前のボタンと、textBox1という名前のテキストボックスを貼り付ける。 関連記事 カラーコードを16進数表示する [C#] SSHコマンド実行とSCPファイル転送のサンプル [PowerShell] Excelの列名を列番号に変換する関数 コントロール配列 [C …

16進数6桁文字列からカラーを取得 Read More
16進数6桁文字列からカラーを取得

カラーコードを16進数表示する

C#でカラーの値をRGBカラーコードを表示するサンプル。 このサンプルでは以下の処理を行う。 1.「色の設定」ダイアログを表示。 2.設定した色を使用し、ボタン背景色を変更 3.ボタンの文字色を、背景色の反転カラーに変更 4.設定した色をRGBカラー(16進数6桁の文字列)として表示 GUIデザインでは、Formにbutton1という名前のボタンを貼り付ける。 関連記事 16進数6桁文字列からカラーを取得 コントロール配列 [C#] ListView.Items.Addの描画処理が異常に重くてハマった [C#] SSHコマンド実行とSCPファイル転送のサンプル [C#] フォームの角を丸くする …

カラーコードを16進数表示する Read More

SJISからUTF-8への文字コード変換

最近、Windows標準のShift-JISから、Web標準となっている(?)UTF-8への文字コード変換が必要な場合がちらほら出てきている。 マルチプラットフォームでデータをやり取りする場合なんかでもUTF-8が結構使われていたりする。 こういうコード変換なんかは、テキストエディタ等を使えば、簡単に変換できる。 最近ではメモ帳でもUTF-8保存ができるようになったし。 でも、このコード変換が100個、1000個、と数が増えてくると手作業は無理。 そんな訳で、VC++(非.NET)でSJISからUTF-8に変換するプログラムを作ってみることにした。 # バッチで利用したいという理由もあったんで …

SJISからUTF-8への文字コード変換 Read More

BIOSパスワード

職場でのお話なんだけど、ノートPCの盗難や、自宅へ持ち込んでウィルスに感染する人がちらほら出てきてセキュリティー対策にうるさくなってきた。 以前はノートPCにBIOSパスワードを仕掛けるぐらいで済んでいたけど、今度はデスクトップPCに対してもBIOSパスワードと、更にハードディスクパスワードを掛けるよう指示が出た。 ウィルスチェックも毎日、完全スキャンするという指示も。 仕事で使用しているPCなんで仕方ないが、これって的を得ているとは思えない。 ウィルスチェックなんかは、完全スキャンなんかすると、マシンによっては5時間以上かかるのもある。 これはさすがに見直され週1回でいいという話にはなったが …

BIOSパスワード Read More
Webページの更新日時を調べる

Webページの更新日時を調べる

今回も自分用の覚え書きネタ。 Webサイトの更新日時なんかを調べたい場合、URLに以下を入力するとメッセージボックスが表示される。 もちろん、動的に作成されるWebページは正しく取得できない。 # とある件で更新日時を調べたくなったけど、やり方忘れて少し苦労したのでメモ。 関連記事 jQueryのautopagerを使わず自動的に次ページ読込み処理を作ってみた 続Vista対応 [C#] WebBrowserコントロールのレンダリングモードをデフォルトのIE7から最新IEモードに変更する WSH JScriptでExcel読み込み HTML5で各電力会社の電力使用率をアナログメーターで描画する …

Webページの更新日時を調べる Read More
コントロール配列

コントロール配列

かつてVisual Basic 6.0にはコントロール毎にIndexプロパティが存在し、 簡単にコントロールの配列を扱うことができた。 例えば、 など。 が、VB.NETからIndexプロパティが無くなり簡単には使用できなくなった。 (正確に言うと互換のため残されているが) オブジェクト指向なんだから自分で作れと言わんばかりに無くなっている。 VB.NETにも無いものはC#にも無い。 C# 2005にも配列用のコントロールは用意してあるようだけど。 (例:TextBoxArray、PictureBoxArrayなど) で、いざコントロールを配列で使ってみようと思ったところ使い方が分からず 少し …

コントロール配列 Read More
System.Diagnostics.Debug.WriteLine

System.Diagnostics.Debug.WriteLine

最近よく度忘れするので覚書き C#でデバッグ時に[出力]ペインに情報を書き出す方法 1. Debugモードに切り替え 2. ソース中に   System.Diagnostics.Debug.WriteLine(“出力される文字”); 3. 実行 関連記事 Windows10 April 2018 Update適用でC#からイベントログ取得がうまくいかない [C#] スタートアップメニューにショートカットを登録する方法 [C#] 送るメニューにショートカットを登録/解除する方法 RSS新着情報を音声読み上げできるようにしてみた Microsoft Visual Studi …

System.Diagnostics.Debug.WriteLine Read More
最適化

最適化有無で動作が変化

前に、とある処理でこんなコーディング(VC++)をしたことがあった。 しかし、これが何故か無限ループに陥ってしまう。 同様のミニプログラムを作成しても再現しない。 なぜか、これを使用している某プログラムのみ発生する。 でも、デバッグモードでは問題なく動作する。 う~ん、怪しい。 試しにこのスレッド処理だけをコンパイラの最適化を無効にしてみた。 すると動くではないか。。。 最適化によってコードのサイズを小さくし実行速度を向上しているようですが、 たまに、こういった不具合にも突き当たります。 # 不具合というか仕様なんでしょうけど。 前に、最適化有無によって倍精度浮動小数点の演算結果(べき乗)が異 …

最適化有無で動作が変化 Read More
ネットワークスピードを調べる方法

ネットワークスピードを調べる方法

最近、物忘れが激しいんでブログに書いておきます。 Windows XPで、ネットワークスピードを調べる方法 知っている限りでは二種類の方法があります。 其の壱 [Ctrl]+[Shift]+[Esc]キーを同時押下。 Windowsタスクマネージャのダイアログが表示されるので[ネットワークタブ]を選択。 右側のスクロールバーを上下することにより、各アダプタのネットワーク使用率を表示することができる。 関連記事 [VMeter2]ネットワークスピード ポケモンGO レベルアップ予想計算ページを作ってみた 解約後の携帯カメラの使用方法 [C#] エクスプローラ風のツリービュー表示 Vista対応 …

ネットワークスピードを調べる方法 Read More