[C#] WebView2ランタイム配布モードでのアプリ作成

C#、VB.NET等でWebView2を利用する方法について 以前、WebView2ランタイムをインストールして使用する方法(アプリでエバーグリーン ブートストラップ)を紹介しました。 [C#] WebView2コントロールの利用方法 今回は、配布するアプリと一緒にランタイムを含める方法(修正済みバージョン)を紹介します。 それぞれのメリット、デメリットはこちらを参照。 Microsoft | 修正済みバージョンのランタイム配布モード Evergreen ランタイム配布モード 利点: 基盤となる Web プラットフォーム (WebView2 ランタイム) は、ユーザーの努力なしに自動的に更新さ …

[C#] WebView2ランタイム配布モードでのアプリ作成 Read More

[C#] Windows Formアプリの多言語対応

C#で作成したアプリを、複数の言語で表示したい場合の作成方法。 また忘れそうなので備忘録として。。   言語ごとの文字列情報 日本語、英語、中国語、韓国語・・・など言語ごとの情報はソリューションエクスプローラーの プロジェクト>Properties>Resources.resx に保存する。 デフォルト言語(通常は英語)は、”Resources.resx”に保存しておき、 他の言語は別ファイルとして同様のファイルを保存する。 例えば、日本語の場合は、”Resources.ja-JP.resx”など。 で、これらリソースの中に各言語の変数 …

[C#] Windows Formアプリの多言語対応 Read More

[C#] WebView2コントロールの利用方法

WebView2の利用方法について、IEとEdgeの処理の違いを中心に似たような記事を書いた。 →[C#] WebBrowserコントロールからWebView2への切り替え でも、作成したexeファイルをC:\Program Files配下で動作させようとした場合、書き込み権限がなく例外が発生。 今回はこの問題を回避しつつ、記事を最新化したので、再び備忘録としてまとめなおし。 <前提> ・Visual Studio 2022 ・C# ・Windowsフォーム ・.NET Framework 4.8 この前提でWebブラウザコントロールを、IE(WebBrowser)ではなく、Edge(WebV …

[C#] WebView2コントロールの利用方法 Read More

[C#] WebBrowserコントロールからWebView2への切り替え

C#、VB.NET等で標準で使用できるWebブラウザ用の部品として、昔からWebBrowserを使用してきたけど、これがInternet Explorerベースの古い部品。 しかもIE7ベース。 これをIE11ベースに無理やり切り替える方法も昔試していた。 [C#] WebBrowserコントロールのレンダリングモードをデフォルトのIE7から最新IEモードに変更する けど、さすがにIE11も限界。   最近のHTML5やJavaScriptを使用したページが表示できなかったり、セキュリティ更新もできなかったり問題が多すぎる。 そこで、今回最新ブラウザWebBrowserからWebVi …

[C#] WebBrowserコントロールからWebView2への切り替え Read More
SSHコマンド実行とSCPファイル転送

[C#] SSHコマンド実行とSCPファイル転送のサンプル

C#を使って、SSHによるコマンド実行と、SCPによるファイルアップロード、ダウンロードを行うサンプルプログラム。   SSHの「コマンド」欄に、接続先サーバのコマンドを入力し「実行」ボタンを押すと、ログイン情報をもとにSSH接続してリモート先コマンドを実行します。 実行結果は、その下のテキスト欄(TextBoxMsg)に表示されます。 同じく、SCPも転送元ファイル(自分のWindowsPC上のファイルをフルパス指定)と、転送先パス(リモートホスト上のパス)を入力した上で「アップロード」ボタンを押すと、ログイン情報をもとにファイルをアップします。 ダウンロードもその逆で同じです。 …

[C#] SSHコマンド実行とSCPファイル転送のサンプル Read More
[C#] エクスプローラ風のツリービュー表示

[C#] エクスプローラ風のツリービュー表示

Windowsフォームのアプリで、Windowsエクスプローラのようなフォルダやドライブ一覧をツリー表示する方法を調べてみた。 nugetの「ExpTreeLib」というライブラリを使うことによってC#やVB.NETで簡単?に実現できるらしい。 関連記事 WindowsヘルプからHTMLヘルプへの移行 [UiPath] 画像認識した日本語文字列を取得する 無料開発ツール – Visual Studio Community 2015をインストールしてみた Visual Studio 2013をインストールしてみた Visual Studio 2017でインストーラ作成 [C#] Ex …

[C#] エクスプローラ風のツリービュー表示 Read More
イベントログ取得できない

Windows10 April 2018 Update適用でC#からイベントログ取得がうまくいかない

Windows10の大型アップデート「April 2018 Update」(バージョン1803)を適用すると、 C#から、うまくイベントログを拾えなくなってしまった。 例えば、以下のソースを実行すると、イベントログを途中まで読み込んで 勝手にループを抜けてしまう。 実行結果: ⇒イベントログ2433件あるのに、123件しか取得できない。 関連記事 System.Diagnostics.Debug.WriteLine Windows10 ProのHyper-Vを使って、Windows 10仮想環境を構築してみる RSS新着情報を音声読み上げできるようにしてみた [C#] スタートアップメニューに …

Windows10 April 2018 Update適用でC#からイベントログ取得がうまくいかない Read More
C# フィームの角を丸くする

[C#] フォームの角を丸くする方法

C#で、Windowsフォームの角を丸くして表示する方法。   普通のWindowsフォームは、タイトルバーとか境界線が付き、角も角ばっている。   それを、こんな感じに角を丸くして表示する。   関連記事 DVD再生ソフトで表示できない コントロール配列 カラーコードを16進数表示する [C#] ListView.Items.Addの描画処理が異常に重くてハマった [C#] WebBrowserコントロールのレンダリングモードをデフォルトのIE7から最新IEモードに変更する HTML内のRSS情報を取得する

[C#] フォームの角を丸くする方法 Read More
画面デザイン

[C#] スタートアップメニューにショートカットを登録する方法

Windows起動時にアプリを起動させたい場合、スタートアップメニューにアプリを登録することは良くあると思う。 でも、Windows 10や8.1などでは、スタートアップメニューへの登録方法が面倒というか分かりにくく、自作ソフトでもたまに問い合わせが来る。 インストーラでスタートアップに登録すれば確実なんだけど、フリーソフトでインストーラとかは嫌がられる場合も多く、作る手間も掛かる。 そんな訳で、アプリケーション側で、自分自身のショートカットをスタートアップメニューに登録する方法を調べてみた。     まずは、スタートメニューのフォルダを調べる方法。 Stringの値が返さ …

[C#] スタートアップメニューにショートカットを登録する方法 Read More

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

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

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

[C#]Visual Studio 2013で、Windows8.1向けWindowsストアアプリを作成してみる

Windowsストアアプリと言っても、Windows8用とWindows8.1用と異なり、 Windows8用のストアアプリはVisual Studio 2012で開発し、 Windows8.1用のストアアプリはVisual Studio 2013で開発する必要がある。 Windows8は無料アップデートでWindows8.1になるので、もうWin8用ストアアプリを態々作る必要も無いだろう。 なので、最初からWin8.1向けWindowsストアアプリ開発に挑戦してみる。 関連記事 Visual Studio 2013をインストールしてみた 無料開発ツール – Visual Stud …

[C#]Visual Studio 2013で、Windows8.1向けWindowsストアアプリを作成してみる 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
Excel

[C#] プログラムからExcelファイルを読み書きする方法

Excelに保存したデータを利用して、何かプログラムを作ろうとした場合、通常はExcelマクロなんかを使うことが多いと思う。 実際、マクロはVBA(言語的には旧Visual Basic 6.0)を利用するため、コーディングの難易度が低く、ちょっとした表計算やグラフ作成なら簡単に扱うことができ便利。 だけど、既存のExcelにマクロ追加など手を加えたくなかったり、複数のExcelデータを利用した処理を行いたかったり、他システムとの連携や、ちょっと複雑な処理を加えたいといった場合は、マクロはでは役不足。 C#からExcelを利用するプログラムについて作り方をよく忘れてしまうんで、覚書きとしてメモっ …

[C#] プログラムからExcelファイルを読み書きする方法 Read More
RSS新着情報を音声読み上げできるようにしてみた

RSS新着情報を音声読み上げできるようにしてみた

自作のRSSリーダー「RSS速報」から音声合成で読み上げソフト「棒読みちゃん」を呼び出す機能を追加してみた。 先日、RSS速報を利用して頂いているユーザーさんから、「棒読みちゃん」に「RSS速報」で流れてきたフィードを読ませられたらいいなー。という要望を頂いた。 まず、「棒読みちゃん」を知らなかったので、ダウンロードして使ってみた。 これは凄い。 フリーソフトで音声読み上げするソフトがあるなんて知らなかったし、ちゃんと音声合成読み上げしてくれる。 これは、確かにRSS速報と連携できれば面白いかも。 で、どうやったら連携できるんだろうということを調べていたら、コマンドラインから棒読みちゃんへ指示 …

RSS新着情報を音声読み上げできるようにしてみた 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
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
DataGridViewにチェックボックスが表示されない

DataGridViewにチェックボックスが表示されない

C#(VB.NET)でのお話。 DataGridViewにチェックボックスを表示できなくてハマったので覚え書き。 まず、DataGridViewのDataSourceとして、dataSet1を用意し、その中(Tables→Columns)にDataType=System.Boolean(チェックボックスで利用したいのでbool型)のメンバを用意。 関連記事 Visual Studio 2005日本語版、12/15開発完了、2/1発売 Windows8用アプリ開発セミナーに参加 無料開発ツール – Visual Studio Community 2015をインストールしてみた Vis …

DataGridViewにチェックボックスが表示されない Read More
DVD再生ソフトで表示できない

DVD再生ソフトで表示できない

RSS速報を起動中、とあるDVD再生ソフトで画像が表示できないという報告を受けた。 私の持っている別のDVD再生ソフトでは問題なく再現環境が無い。 とりあえず、RSS速報の描画処理を簡単に再現したテスト用プログラムを報告者に送り、テストしてもらうことにした。 せっかく作ったので、ついでにソースを一部公開。 関連記事 [C#] スタートアップメニューにショートカットを登録する方法 [C#] SSHコマンド実行とSCPファイル転送のサンプル [C#] フォームの角を丸くする方法 カラーコードを16進数表示する コントロール配列 16進数6桁文字列からカラーを取得

DVD再生ソフトで表示できない 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
C#でスクリーンセーバー

C#でスクリーンセーバー

C#(VS2005)の新規プロジェクト作成で「スクリーンセーバー スタートキット」、「ムービーコレクション スタートキット」なんてものが追加されている。 関連記事 RSS速報をメジャーバージョンアップ予定 Vista対応 [C#] プログラムからExcelファイルを読み書きする方法 [C#] WebBrowserコントロールのレンダリングモードをデフォルトのIE7から最新IEモードに変更する [C#]Visual Studio 2013で、Windows8.1向けWindowsストアアプリを作成してみる [C#] スタートアップメニューにショートカットを登録する方法

C#でスクリーンセーバー Read More

C#2005 試しに使ってみた

ダウンロードしたVisual C# 2005 Express Edition(1年無償版)で試しにVC# 2003で作成したRSS速報を変換してみた。 変換はウィザード形式でいたって簡単。 関連記事 Visual C# 2005 Express Editionダウンロード Visual Studio 2005 Express Editionなら無料!? Visual Studio 2005 Express Editionが無償化 Visual Studio 2005 パッケージ販売は2月 VS2005到着 Microsoft Visual Studio 2008 日本語版

C#2005 試しに使ってみた Read More
Visual C# 2005 Express Editionダウンロード

Visual C# 2005 Express Editionダウンロード

Visual C# 2005 Express Editionをダウンロード中。 http://www.microsoft.com/japan/msdn/vstudio/express/vcsharp/ もう少し時間が掛かりそう。 インストールは明日。 関連記事 Visual Studio 2005 Express Editionなら無料!? Visual Studio 2005 Express Editionが無償化 Visual Studio 2005 パッケージ販売は2月 Microsoft Visual Studio 2008 日本語版 Visual Studio 2005日本語版、12 …

Visual C# 2005 Express Editionダウンロード Read More