2009-01-01から1年間の記事一覧
ファイルの最終行を削除する場合は、String.LastIndexOfで末尾から改行コード(vbCrLf)を検索して見つかった位置からの文字列を削除します。すべての行に改行コードが付いている場合は、ファイルの末尾から2つ目の位置にある改行コード以降の文字列を最終行…
ファイルの末尾に文字列を追記するにはSystem.IO.File.AppendAllTextメソッドを使用します。(いくつか方法がありますが最も簡単な方法) Public Class Form1 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handl…
VisualSourceSafeの最新バージョンと作業フォルダの編集中のファイルをWinMergeで比較するVisualStudio2008のアドインを作成しましたので公開します。VssWinMergeComparerバイナリモジュールVssWinMergeComparer-bin.zip ソースコードVssWinMergeComparer-sr…
WinMergeは各種のツールと連携ができるようにコマンドラインインタフェースを備えています。今回は、コマンドラインインタフェースを使用してVisualSourceSafeから最新を取得したフォルダとチェックイン前のローカルの作業フォルダを渡して比較する例を記載…
サンプルコードVisual Studio 2008 と Visual Source Safe はチェックイン・チェックアウトの操作をIDE上から実施できるように、プロジェクトとソリューションをVSSのプロジェクト(フォルダ)と対応付けして連携して処理ができるようにしています。このバイン…
ファイル名の構成要素を分解した場合の呼び名と取得方法を整理してみます。フルパス(Full Path) C:\Users\Administrator\Documents\test.txt ドライブ名(Drive Name) C:\ Dim f As String = "C:\Users\Administrator\Documents\test.txt" Debug.Print(System…
指定したパス情報がファイル名かフォルダ名か判断するにはSystem.IO.File.Exists関数とSystem.IO.Directory.Exists関数を使います。File.Exists関数は、指定したパスがフォルダとして存在している場合でもファイルではない場合はFalseを返します。また、Dire…
Delphiでは、CreateDir関数とは別にForceDirectories関数があり親ディレクトリが無い場合に親ディレクトリまで作成する関数があります。.Netでは、どうやれば良いかと確認すると、System.IO.CreateDirectory関数がForceDirectories関数と同じ動作をすること…
相対パスは、あるフォルダを基準とした場合のパス情報です。基準となるディレクトリはカレントディレクトリが使用される場合が多いですが、任意のディレクトリを指定した相対パスを使う場合もあります。カレントディレクトリを基準とする場合は、相対パスの…
サンプルコードNativeWindowMessageOnly.zip NativeWindowクラスは、ウインドウ処理の基本となる処理をまとめたクラスで、ウインドウメッセージ(SendMessage,PostMessage)とウインドウプロシージャ(WndProc)の処理をカプセル化するための処理が集まって…
サンプルコードNativeWindowSubClass.zip NativeWindowクラスは、ウインドウ処理の基本となる処理をまとめたクラスで、ウインドウメッセージ(SendMessage,PostMessage)とウインドウプロシージャ(WndProc)の処理をカプセル化するための処理が集まっていま…
サンプルコードGlobalInformation.zip .Netでのグローバル変数の持ち方について考えてみます。グローバル変数は、変数の生存期間(ライフタイム)と適用範囲(スコープ)を最小にするという原則に従って極力使わないようにするべきものですが、逆に言えば生…
サンプルコード:LoadAssembley-2.zip Visual Studio 2008 でXMLコメントを打つと以下のように出力されます。 ''' ''' ''' ''' Public Shared Sub Main()Summary(要約)やRemarks(注釈)は記載できますが、プログラムを書いた人(Author)の情報を入力する…
サンプルコードLoadAssembley.zip .Net で作成したDLLを使用するためには、使用したいDLL(アセンブリ)を参照設定して使用します。参照設定したDLLはアプリ起動時にDLLとのリンクを解決するために、メモリ上にロードされ、クラスやメソッドのエントリーポイ…
原文は、thinktecureのサイトの記事です。 http://www.thinktecture.com/resourcearchive/net-remoting-faq/remotingusecasesスケールアウト可能な構成で.Net Remotingを使用するための9つのルールというトピックです。補足説明付きで訳してみます。 Use on…
アトリビュートを付与しているインスタンスであればシリアライズできますが、インスタンスによっては失敗するケースがあります。サンプルコードXMLSerializerTest.zip ■Dictinaryクラス System.InvalidOperationException はハンドルされませんでした。 Mess…
WCFは.Net Remotingの後継技術ですが、同一プロセスで.Net RemotingサービスとWCFサービスをホストすることが出来ます。(但し、ポート番号を変更する必要はあります。)過去に.Net Remotingで作成したシステムを部分的拡張する場合にWCFを利用する。という…
サンプルコードWCFService-10.zip WCFは通信のリクエスト毎にスレッドを立ち上げてクライアントの要求に答えるのでトレースリスナはスレッドセーフである必要があります。System.Diagnostics.XmlWriterTraceListenerはスレッドセーフではないので、カスタム…
サンプルコードWCFService-09.zip WCFでは、アプリケーション構成ファイル(app.config)に、トレースログ出力の設定をするだけでWCFの処理の追跡・クライアントサーバー間でやりとりされるSOAPメッセージをログに出力することができます。通信データをログに…
WCFでは、クライアントとサーバのインタフェースにあたる部分を「コントラクト」と呼んでいます。英語で「Contract」、日本語訳で「契約」です。クライアントとサーバ間での契約ということで、どのようなインタフェースで渡すかという取り決め。ということで…
WSDLをサービス参照の設定で取り込むサンプルコードWCFService-06.zip WCFのサーバーをアプリケーション構成ファイルで構成する方法と、公開するサービスをWSDLで公開する方法を見てきました。今回は公開されたWSDLから、クライアントがサーバに接続するため…
コードを使用してWSDLを公開する。WCFService-05.zip WCFで作成したサービスはWEBサービスのインタフェースの標準規格であるWSDL(Web Services Description Language)で情報を公開することが出来ます。作成したアプリを起動して、ベースアドレスのURLに対し…
アプリケーション構成ファイルを使用してWCFを構成します。WCFService-04.zip アプリケーション構成ファイルを使用すると、WCFのサービスモデルを構成する要素(アドレス・コントラクト・バインディング・ビヘイビア)を外部ファイルに記述することが出来ま…
WCFの基本的な構成のサンプルコードを作ります。WCFService.zip 以下の3つのプロジェクトを作成し、WCFシステムを構成していきます。 WCFサーバー(コンソールアプリケーション:.exe) WCFクライアント(ウインドウアプリケーション:.exe) WCFインタフェース(…
WCFでクライアントからサーバへ、サーバからクライアントで転送するデータのエンコード(符号化)は、以下の3種類から選択することができます。 テキスト(XML1.0) バイナリ(Base64BinaryEncoding) MTOM(SOAP Message Transmission Optimization Mechanism) …
サンプルコード。WCFService-07.zip [サービス参照の追加]を使うとWSDLで公開されたウェブサービスにアクセスするためのアプリケーション構成ファイルとカスタムクラスを作成できますが、WCFサーバーを自作している場合は、WCFインタフェースのクラスライブ…
Visual Studio 2008 の各種右クリックメニューを拡張するには、CommandBarsコレクションの追加したいコンテキストメニューにcommandBarButtonを追加して対応します。今回はソリューションエクスプローラの右クリックメニューを拡張します。ソリューション、…
Visual Studio 2008 のアドインからIDEを操作する場合は、EnvDTE80.DTE2オブジェクトを使います。EnvDTE80.DTE2は、IDEのオブジェクトモデルそのもので基本的な操作が一通りできるようになっています。今回は、指定したファイルを開いて、指定した行番号にカ…
WCF(Windows Communication Foundation)について学習していきます。WCFはMicroSoftの分散オブジェクト技術の実装のひとつですが、ひらたく言うとクライアントとサーバの間でオブジェクトをやり取りするためのフレームワークです。サーバで作成したクラスの…
CommandBarsコレクションのダンプcommandbars.txt Visual Studio 2008 のアドインを作成する場合、IDE上のコマンドバーを拡張して追加機能を付けていきます。コマンドバーにユーザ定義のボタンを追加するコードは以下のようになります。 '''IDTExtensibility…