カテゴリー
SugiBlog ホームページ制作・システム開発|大阪

匿名スレッドの実行 VisualC#

スレッドを定義します。

Thread tMain = new Thread(new ThreadStart(
    delegate()
    {
        // 実行したい処理
    }
    ));

バックグラウンドで実行するよう設定

tMain.IsBackground = true;

スレッドを開始

tMain.Start();

バックグラウンド処理からメインスレッドのメソッドや、フォームのコントロールを触りたいときは
デリゲートを使用します。以下を参考にしてください。
[デリゲート (delegate)]

1,133 views

VisualC#でMDBにアクセス

Windows7 64bit版のVisual C# 2008を使用してAccessのデータベースに
アクセスするアプリケーションを作っていたら以下のようなエラーに遭遇しました。

「’Microsoft.Jet.OLEDB.4.0′ プロバイダはローカルのコンピュータに登録されていません。」
(InvalidOperationException)

これは64bitのPCで開発することに起因するようです。
ビルドする際に32bit(x86)を対象にする必要があります。
以下、その方法です。

構成マネージャ

[ツール]-[オプション]を開きます。

左側のツリー表示に[プロジェクトおよびソリューション]-[全般]を選択します。
右側にある[ビルド構成の詳細を表示]にチェックを入れます。

※左側のツリー表示に[プロジェクトおよびソリューション]がない場合、
[すべての設定を表示]にチェックを入れます。 続きを読む…»

1,354 views

C# WebBrowserのレンダリングモード

Visual C#にてブラウザを使用したアプリケーションを作成したとき、
WEBページを表示すると表示がおかしいと思って、ユーザーエージェントを確認してみると
IE7となっていました。

環境はWindows7でIE9なのになぜだろう?と思いました。
どうやら作成したアプリケーションではレンダリングモードが「7」で実行されているようです。

解決するにはレジストリを編集し、レンダリングモードを変更してやらないといけません。

ユーザーエージェントのレジストリキー

HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BROWSER_EMULATION

レンダリングモードのレジストリキー

HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_DOCUMENT_COMPATIBLE_MODE

ユーザーエージェント、レンダリングモードをIE9にするには、それぞれのレジストリキーに
ユーザーエージェントは「9000」、レンダリングモードは「90000」という値を設定します。
続きを読む…»

9,039 views

interface, implements, abstract

・interface(インターフェイス)
備えているべき機能(メソッド)の名前
抽象メソッドを定義

・implements(実装)
interfaceで定義された全機能(メソッド)のオーバーライド(Override)で定義が必要

・abstract修飾子
抽象メソッドの定義時に使用
省略可

1,098 views

登録されているアプリケーションでファイルを実行する

System.Diagnostics.Process.Start("ファイルパス");

自動的に関連付けされているアプリケーションでファイルが開きます。

例)エクスプローラーでフォルダーを開く

System.Diagnostics.Process.Start(@"C:\My Documents");
1,506 views