2009-04-01から1ヶ月間の記事一覧

クライアントからコンテキストを送信する

C#

今まではクライアントの情報をサービスに引数で渡してました プロジェクト ID やクライアント ID といったクライアントの情報を、サービスに引数として渡していました。でもこの方法は全然洗練されていません。引数が増えてしまう。できればクライアント情報…

Ruby のシンボル

Ruby のシンボルと文字列の違いがイマイチ理解できなかった。でも下の記事を読んで、もしかしたら理解できたかもしれない。 Rubyのシンボルは文字列の皮を被った整数だ! 文字列の皮を被った整数…。C# の列挙型みたいなものかな?

Firefox の SideBar もどきを作る

C#

はじめに ネタが思いつかないので苦し紛れに始めた「○○もどきを作る」シリーズも今回が3回目。私の中で WPF 熱が再燃しました。というか WCF ちょっと飽きた。今回のターゲットは Firefox の SideBar。お気に入りをツリー表示したりするアレです。Firefox の…

TabControl のタブ位置を固定する

C#

WPF の TabControl は TabItem が増えて横一列に入りきれなくなると多段表示になります。この状態で上段のタブをクリックすると、タブの位置が入れ替わってしまいます。 私はこの動作が大嫌い タブブラウザみたいにタブの位置はそのままに、内容だけ切り替わ…

ジャイアニズム

中国でスゴイ制度が導入されるみたいですね。 中国政府がデジタル家電などの中核情報をメーカーに強制開示させる制度を5月に発足させることが23日、明らかになった。 中国政府は実施規則などを今月中にも公表する方針をすでに日米両政府に伝えた模様だ。…

Git はじめました

Git が熱いようなので、次の記事を参考に Git を導入してみました。 Windows から Git を使う方法 Git の使い方は下記ページのチュートリアルを読めばOK。 Git入門 併せて GitHub のアカウントも作成。 griefworker's Profile GitHub の導入には下の記事を参…

WebBrowser の「戻る」「進む」の履歴を取得する

C#

WebBrowser の GoBack メソッドや GoForward メソッドを呼び出すと過去に見たページに移動します。この「過去に見たページ」の情報はトラベルログとして保存されています。 トラベルログの取得方法を調べたのでメモ。 COM のインタフェース等を定義します [C…

簡単に ZIP ファイルを扱う方法

C#

DotNetZip というライブラリを使えば、ファイルの ZIP 圧縮・解凍や ZIP ファイルの操作が簡単に実現できます。 DotNetZip 似たようなライブラリで SharpZipLib がありますが、DotNetZip の方が簡単に利用できます。 ZIP ファイルの作成 using (ZipFile zip …

TreeOptionDialog を作る(2)

C#

はじめに 前回は XAML を記述して TreeOptionControl の外観を作成しました。 今回はコントロールの中身に着手します。 今回作成したサンプルの実行画面がこちら 作成した手順は次の通りです。 コードを記述します using System.Collections.ObjectModel; us…

TreeOptionDialog を作る(1)

C#

はじめに VisualStudio のオプション等に採用されている、ツリー形式のオプションダイアログを作成してみます。 簡単な仕様を考えてみます 大ざっぱですが、次のような感じで。 当然、ツリーの項目を選択すると対応するページが表示される DotNetMagic の Wi…

“おすすめ”生命保険には入るな!

保険を選ぶときの参考にするため購入。個人的には十分な貯蓄があれば、保険に入る必要は無いと思っています。割に合わない。万が一の事を心配するくらいなら、万が一にならないように今から努力した方がいいです。本書を読んで、その思いは一層強くなりまし…

Ruby 版 LINQ?

少しずつ Ruby の勉強を進めています。今回は Enumerable。Ruby の Enumerable モジュールを include したクラスは、C# の LINQ に似た構文でオブジェクトを検索できます。Array クラスが Enumerable モジュールを include しているみたいなので、このクラス…

WPF の WebBrowser コントロールから IWebBrowser2 インタフェースを取得する

C#

ちょっと強引ですが、リフレクションを使って WPF の WebBrowser コントロールから IWebBrowser2 インタフェースを取得できます。WinForms 版 には ActiveXInstance プロパティがありますが、WPF 版にはそれに相当するものが見当たらないので、これ以外に方…

Firefox の検索バーもどきを作る(2)

C#

はじめに WPF で Firefox の検索バーみたいなコントロールを作ろうという連載。前回は XAML でコントロールの外観を記述しました。今回は動作の方を記述します。 今回作成したサンプルの実行画面がこちら 検索エンジンに Google が選択されているので、Googl…

Firefox の検索バーもどきを作る(1)

C#

はじめに WPF でなら Firefox の検索バーみたいなコントロールが簡単に作れるのではないかと思い挑戦してみました。 今回作成したサンプルの実行画面 Window に貼り付けて実行したのがこちら。 結構いい感じ。 プロジェクトを作成 新規に WPF アプリケーショ…

Vim のカスタマイズ

Vim

_vimrc ファイルの内容をメモしておきます。 Vim のカスタマイズはまだ途中なので、この記事は今後も更新していきます。 syntax on filetype on filetype indent on filetype plugin on set autoindent set expandtab set number set nobackup set backspace…

XML 宣言部を書き変えるスクリプト

私の環境では、Sandcastle を使って HTML ヘルプを生成するとき、XML ドキュメントの宣言部に standalone の記述があると生成に失敗します。例えばこんな風に。 standalone の部分を削除すれば生成に成功します。そこで standalone の部分を削除するスクリ…

タイマー機能で時間を賢く使うグリモン

下の記事を読んで、つい作ってしまいました>< タイマー機能で時間を賢く使うスクリプト(Mac版) 10分おきに注意してくれるグリモンです。2ch まとめサイトばかり読んでしまって仕事がはかどらない人は使うといいんじゃないかな? // ==UserScript== // @n…

リンクを抽出する

C#

Sleipnir などのタブブラウザに付いているリンク抽出機能は、リンクの抽出だけなら .NET Framework の HtmlDocument クラスを使うことで簡単に実現できます。 HtmlDocument document = webBrowser.Document; // リンクを列挙する foreach (HtmlElement eleme…

IE のお気に入りを追加・整理する

C#

ShellUIHelper を使えば IE のお気に入りの追加や整理が可能です。 ShellUIHelper の定義 [ComImport] [Guid("64AB4BB7-111E-11D1-8F79-00C04FC2FBE1")] internal class ShellUIHelper { } [ComImport] [InterfaceType(ComInterfaceType.InterfaceIsIDispatc…

Google でキーワードを検索して結果を WebBrowser に表示する

C#

検索クエリを作成して、WebBrowser に Navigate させればいいです。 // Google 検索用の文字列 string request = "http://www.google.com/search?hl=ja&lr=lang_ja&ie=UTF-8&oe=UTF-8&num=50&q="; // Google で検索する文字列 string searchString = _textBo…

WCF クライアントの作成方法を見直し

C#

Svcutil.exe を使ってコード生成せずに WCF クライアントを作成するとき、いつも次のようにしていました。 var client = ChannelFactory<ICustomerService>.CreateChannel( new NetTcpBinding(), new EndpointAddress("")); var result = client.GetCustomer("0001"); ((IChann</icustomerservice>…

構成ファイルを書かずに WCF サービスを IIS にホストさせる

C#

ServiceHostFactory から派生したクラスを利用すれば、構成ファイルに system.serviceModel の構成を記述をしなくても、IIS に WCF サービスをホストさせることができます。 SampleService.svc <%@ ServiceHost Language="C#" Debug="true" Factory="Service…

体脂肪が落ちるトレーニング

運動不足を解消するために購入。1日10分〈クイック→スロー〉で自在に肉体改造 体脂肪が落ちるトレーニング (カラダをつくる本シリーズ)作者: 石井直方,谷本道哉出版社/メーカー: 高橋書店発売日: 2005/05/26メディア: 単行本(ソフトカバー)購入: 35人 クリ…

はじめての Ruby

プログラミング経験者向けの Ruby の入門本です。初めてのRuby作者: Yugui出版社/メーカー: オライリージャパン発売日: 2008/06/26メディア: 大型本購入: 27人 クリック: 644回この商品を含むブログ (253件) を見るプログラミング初心者を対象にしていないの…

nabeatsu イテレータ

ネタです(ブームはとっくの昔に終わりましたが…)。3の倍数と3のつく数のときだけ、渡されたコードブロックを実行するイテレータを定義してみます。 class Range def nabeatsu self.each do |num| if (num % 3 == 0) || num.to_s.include?("3") then yield(…

FizzBuzz でリハビリ

Ruby に長い間触れていなかったので、リハビリのために FizzBuzz ってみました。まずは普通に for を使って。 for num in (1..100) if num % 15 == 0 print("FizzBuzz") elsif num % 3 == 0 print("Fizz") elsif num % 5 == 0 print("Buzz") else print(num)…

お気に入りへの追加

AddFavorite メソッドで追加できる。ただし IE のみ。 var title = window.document.title; var url = window.document.URL; window.external.AddFavorite(url, title); AddFavorite メソッドの第1引数に渡せる URI はスキームが http か https か ftp のも…

スクロール量の取得と設定

JavaScript の勉強を再開。まず、現在のページのスクロール量を取得してみる。 var obj = new Object(); obj.x = document.documentElement.scrollLeft || document.body.scrollLeft; obj.y = document.documentElement.scrollTop || document.body.scrollTo…

諸悪の根源

C#

Exception クラスには、最も内側の例外(つまり発生源)の情報を取得するために、GetBaseException メソッドが用意されていたんですね。知らなかった。ちょっと実験してみます。 using System; namespace ExceptionSample { class Program { static void Main(…