2008年7月22日

 System.AddInを使って、WPFのUIを返すアドイン、アドイン自身がUIであるものが作成できます。

方法 : UI を返すアドインを作成する

  普通にコードを書いてアドインを使うと、呼び出しにものすごく時間がかかります。5~10秒とか。この改善方法を調べてました。結論からいうともろMSDNに書いてあって、MainメソッドにLoaderOptimization属性(LoaderOptimization.MultiDomainHost)を適用します。

Windows Presentation Foundation のアドインの概要 

 でも自分のコードに付けても早くならない。先のUIを返すアドインのサンプルコードでは早い。Contract以外はPipeline Builderを使用して自動生成しているので、そこも含めてどこに差があるのかずーっと調べてました。結果、Visual Studioのプロジェクトのプロパティ デバッグの「Visual Studio ホスティング プロセスを有効にする」にチェック(デフォルト)されていると、早さが変わらない!! チェックをはずしましょう。Pipeline Builderで作成されるコードは、MSDNのサンプルとは若干違うのですが、これは問題ないようですね。少しPipleline Builderの方が記述やファイルが多くなってしまいます。

 また、Mainメソッドは通常、自動生成されたコードに記述されていて編集できません(編集してもリビルドで戻ってしまう)。それについては、WPF と Main メソッド - まめしば雑記 を参照。Twitterで少し話してて試してみてくれたようです。

posted @ 22:08 | Feedback (268)

 Blogコメントからのネタ。複数のPCでWindows Live Writerを使用していると、あるPCから投稿して別のPCから再編集しようとするとタグやコードなどをプラグインを使って挿入したものが再編集できません。これはWLWがローカルに投稿した記事の情報を保存しているので別PCからではそれが参照できないというわけ。これを別PCから再編集できる方法を試してみました。

 投稿された記事の情報は、ドキュメントフォルダの「My Weblog Posts」にあります。このフォルダ以下を両PC間で同期すればOKです。同期するソフトはFolderShareを使ってみました。FolderShareを使うと友人間でファイル共有ができますが、自分のPC間で同期にも使えます。

 FolderShareはサイトのGet started」からクライアントソフトをダウンロードできます。インストール後、次のようなサインインする画面になります。新しくアカウントを作成する場合は、「Sign up for a FolderShare account」をクリックします。

Windows Live FolderShare (Beta)

 以下がアカウント作成画面。E-mail、パスワード(とその確認)、ニックネームを入力します。ちなみに、Windows Live IDのアカウントとは関係ありまえせん。ニックネームはFolderShareサービスで一意である必要があり他人と重複していたら登録できません。

Windows Live FolderShare (Beta) (2)

 完了画面。

Windows Live FolderShare (Beta) (3)

 さて、先の「My Weblog Posts」フォルダを同期設定にします。FolderShareは少し操作が変わっていて基本的に操作はWebから行います。タスクトレイのアイコンからメニューを表示して「FolderShare website」をクリックして、Webページへ移動します。右上の「Create a personal library」をクリックします。

Create a personal llibrary

すると、PC上のフォルダが表示されるのでクリックしていき、Documentsフォルダ内の「My Weblog Posts」までクリックします。「Drafts」と「Recent Posts」フォルダが表示されている状態で右下の「Create library here」ボタンをクリックします。

Create library here

 以上で「My Weblog Posts」が同期フォルダとして登録されました。

 別PCにもFolderShareをインストールして、今度は作成したアカウントでサインインします。するとタスクトレイのアイコンメニューに「My_Weblog_Posts」という灰色の項目があると思います。

FolderShare TaskTray Menu

クリックすると、Webサイトに移動します。別PCでの同期フォルダを選択するわけです。同期フォルダを作成した要領で、別PC上の「My Weblog Posts」を選択してやれば、両PC間でのフォルダ同期設定の完了です。

 実際にWindows Live Writerで確認したところ、きちんと再編集が可能でした。もしかすると記事を開くとき最近投稿した記事から選択しないとダメかもです。また、フォルダの同期にはラグがあるので考慮して使用する必要があります。あと同時に両PCで編集したりとか……、やさしく使ってあげてくださいね!

 余談ですが私は「My Weblog Posts」は邪魔なんで隠しフォルダにして非表示設定にしてます。

posted @ 22:07 | Feedback (2)

 検索でWindows Live Writerのプラグインを見つけたので紹介。手書き文字(手書き風のフォントによる文字)を挿入するためのプラグインです。実際にはフォントを画像として挿入するもので、変わったフォントであっても誰でも同じようにみえるってわけですね。手書き風のフォントは自PCにあらかじめインストールしておく必要があります。WLW Technical Preview Versionでのみ動作します。こんな感じ。詩 向け?

手書き文字を / 挿入するための / プラグイン

 ダウンロードはこちら。InsertTegakiPlugin - www.be-styles.jp 下のダウンロードリンクから最新のBlog記事へ移動します。

WLWプラグイン InsertTegakiPlugin - Windows Live Writer

posted @ 22:06 | Feedback (161)