2009/12/25

チェックアウトエラーか、またはユーザーがキャンセルしました。


ファイルはチェックアウトされていません。

VSS管理プロジェクトにおいて、チェックアウトできないファイルがあった。
なぜかと思って調べてみたら、どうもピン設定されているファイルだったようだ。



調べたら色々と便利なことができるらしい。
ただチェックアウトとチェックインしか使っていなかったが、
もっと有効活用しないとだめだな。

2009/12/22

「Google より年末のご挨拶を申し上げます」だそうだ


便利なものをフリーで公開しまくってOSまで視野に入れている。
しかし、すべてにおいて利用者の情報が追跡され、収集され、利用される。
タダをエサに人を集め、それをまたカネに変えていく。
非常にうまいですね。
影響力が大きくなり、すべてを掌握されてしまうことに少々気味の悪さは感じるようになってきましたけどね。

2009/12/21

[.NET] DataTable は既に別の DataSet に属しています。

別々に取得した DataTable を、新しく作った DataSet の中にまとめたい場合、
DataSet ds = new DataSet();
DataTable dt = new DataTable();
ds.Tables.Add(dt)

なとと書くのだが、
DataAdapter で Fill したデータ等の
別の DataSet に属している DataTable をそのまま add しようとするとエラーが発生する。

C#
DataSet ds = new DataSet();
DataSet ds2 = new DataSet();
ds.Tables.Add(ds2.Tables[0].Copy());

VB.NET
Dim ds As New DataSet()
Dim ds2 As New DataSet()
ds.Tables.Add(ds2.Tables(0).Copy())

こんな感じ。

2009/12/15

FirefoxユーザーはGoogleよりもBingを!


という声もあるようで。
ただ、検索窓にBingを追加するのは現時点ではそのままではできず、
アドオンを追加する形になる。



Googleのプライバシーポリシーとしては
ユーザーが検索した情報はすべて米国当局に提出される可能性もあるとのことだそうだ。

Flickrとの連携を強化するChrome拡張機能 fittr


fittr
http://code.google.com/p/fittr/


一応、使用は自己の責任の下で。


「ALL SIZES」を介さなくてもサイズごとのリンクへ一発で飛べたり(飛べるだけだが)。
EXIFデータが読み込めたりする。

サイズごとのリンクのタグを作ってくれればかなり便利なのだが、
今のところEXIFデータの閲覧くらいしか特筆する機能はないというのが正直なところ。今後に期待。

2009/12/10

.NET 処理待ち

プログラムの動きをあえて待機させて待ちたい時もあるが、
それは以下のコードで実現できる。

C#
// 5秒待機
System.Threading.Thread.Sleep(5000);


Visual Basic.NET
' 5秒待機
System.Threading.Thread.Sleep(5000)

面白いことにほぼ同じだ。

ちなみに時間は「1秒=1000」。
10秒なら「10000」という感じだ。

'/'アプリケーションでサーバーエラーが発生しました。


ファイルまたはアセンブリ'xxxx'、またはその依存関係の1つが読み込めませんでした。指定されたアセンブリ名またはコードベースは無効です。(HRESULTからの例外:0x80131047)


詳細は不明だが、binフォルダに中途半端にできてしまったdllを削除(リビルドで再生成)することで直った。

XX(コンピュータ名)'s conflicted copy (YYYY-MM-DD:日付) を削除。

2009/12/03

Google日本語入力

インストール後にMS-IMEに戻したい場合は、
IMEの設定「テキスト サービスと入力言語」から行う。


デフォルト状態ではGoogleに統計情報を送信し続けているので、
嫌な方は「その他」から「使用統計情報と障害レポート」のチェックを外す。


無料という以外はそれほど騒ぐものでもないように思う。
Googleで検索する時にサジェストが出てくるが、それと同じこと。
掲示板に書き込みをするなどの用途ならかなり強力であり、自分で辞書を登録しなくてよいのでATOKやMS-IMEよりは上でしょうが。
辞書のみ注目されていますが、まだまだ操作性が悪いですね。

まぁ、この辞書に慣れて、変換する際に「Tab + 数字」「Tab + 数字」が早くできるようになればけっこう快適でしょうね。


ちなみに、動作中は GoogleIMEJaConverter.exe というプロセスが。
こいつが色々と送ったり受け取ったりする本体なのだろうか?

2009/12/01

Photoshop 無料で使えるオンライン版


PHOTOSHOP.COM

リサイズと簡単なレタッチくらいならこれでいけるかもしれない。
動作がやや重いが、今後は改良されていくのだろう。

使用するには基本的にアドビメンバーが必要だが、「TEST DRIVE」でお試しすることもできる。

2009/11/27

RICHO quanp(クオンプ)を使ってみる

まずは登録。


  1. quanp IDの取得


  2. ご利用料金-新規メンバー登録を行う。
    ここでは仮登録となる。

  3. 本登録


  4. メールに記載されているアドレスをクリックして完了。

  5. ファイルアップロード

  6. ファイルは専用のアプリを使用してもできるが、一番お手軽なのはやはりブラウザからあくせすできるものだろう。これはquanp.netと呼ばれている。




    ログインすると、最近アップしたファイルが一覧表示される。
    プレイスというのはフォルダに近いが、階層の概念はなく、どちらかというと大分類のようなものか。
    タグはファイルの属性と考える。

    プレイスごとに整理をして、タグはプレイス関係なく付けるとうまく分類されると思われる。


ウェブのものしか試していないが、動作も問題なく、ファイルのアップロードもSkyDriveのように50M縛りがないので快適。なかなかの好感触だった。共有についても試してみよう。

2009/11/26

ASP.NET パフォーマンスの改善

CodeProjectより
http://www.codeproject.com/KB/aspnet/aspnetPerformance.aspx

  1. HTTP圧縮を行う

  2. 帯域が細い環境下で有効らしい。
    HTTP圧縮を使用してWebページを取得するには?[@IT]がわかりやすい。

  3. HViewStateを適切に使う

  4. 特にGridViewでViewStateを使っていて何万件も表示させると最悪。ページ線画時に相当時間がかかってしまうViewStateは便利だが、適切に使用しないと遅いだけになってしまう。
    ビュー ステート: 沈黙のパフォーマンス キラー
    ViewState をセッション状態で維持

  5. Web.configを正しく記述

  6. ページキャッシュを有効にする
    不要なhttpModulesは削除
    Traceはfalseに
    profilesのオートセーブを無効にする
    debugはfalseに

  7. キャッシュを使う

  8. SQLやアイテムなどにキャッシュを使う。

  9. スタイルシートの記述を正しく

  10. おかしなスタイルシートだとパフォーマンスが落ちるようだ。

  11. JavaScript最適化

  12. ここで最適化できるそうだ。

  13. JavaScriptとCSSの場所を変える

  14. CSSはマスターページのトップに、JavaScriptはマスターページの最後に。

  15. server.transfer() Instead of response.redirect()

  16. 可能ならserver.transferを使う方が良いらしい。
    10 行でズバリ !! Web アプリケーションの画面遷移 (C#)

  17. 入力チェックはクライアントサイドで

  18. これはケースバイケースだと思うが、最終的にはサーバ側でチェックしないと穴だらけになりそう。

2009/11/25

visual studio ショートカットキー

html編集をしていてデザインとソースを切り替えるコマンドを探していたら発見。
Ctrl + PageUp/PageDownで切り替えられるらしい。Excelなどと同じだ。
2008では同時に表示できたと思ったが。

他にも覚えておくと便利なものがたくさんある。
http://msdn.microsoft.com/ja-jp/library/xte2hh6a%28VS.80%29.aspx

2009/11/16

C# Trim関数いろいろ


string s = " 123,345,678, ";
s = s.Trim(); // "123,345,678,"
s = s.TrimStart(); // "123,345,678, "
s = s.TrimEnd(); // " 123,345,678,"

Trimは先頭と末尾の空白を、TrimStartは先頭の、TrimEndは末尾の、それぞれ空白を除去する。


string s = "A1-A2-A3-A1";
char[] pattern = { 'A', '1' };
s = s.Trim(pattern); // "-A2-A3-"
s = s.TrimStart(pattern); // "-A2-A3-A1"
s = s.TrimEnd(pattern); // "A1-A2-A3-"

これには引数を指定することもできて、パターンに応じて削除を行うこともできる。


string s = "A123,A124,A322,A677,";
s = s.TrimEnd(','); // "A123,A124,A322,A677"

末尾のカンマも簡単に取れる。

2009/11/09

SQLServer 日付計算まとめ

DATEADD(引数, 加減算値, 対象日付)

以下、一般的に使いそうな引数。

SELECT DATEADD(yy, 1, GETDATE()) AS 年加算
SELECT DATEADD(qq, 1, GETDATE()) AS 四半期加算
SELECT DATEADD(mm, 1, GETDATE()) AS 月加算
SELECT DATEADD(dd, 1, GETDATE()) AS 日加算
SELECT DATEADD(wk, 1, GETDATE()) AS 週加算
SELECT DATEADD(hh, 1, GETDATE()) AS 時間加算
SELECT DATEADD(mi, 1, GETDATE()) AS 分加算
SELECT DATEADD(ss, 1, GETDATE()) AS 秒加算

2009/11/04

runuat=server を含む form タグの内側に置かなければ成りません。



型 'TextBox' のコントロール xxxx は、runuat=server を含む form タグの内側に置かなければ成りません。

文字通り、コントロールをform内に置いていない場合に発生する。
formを設置し、form内にコントロールを配置する。

ただ、formにはIDを付け、runuat=server属性を付与すること。

Google Chrome Frameの弊害?

Microsoft Internet Explorer(IE)の中身をChrome化してしまうプラグイン
Google Chrome Frame

これを入れてみて、最初は気持ち「表示が早くなった」くらいに思っていたのだが、Visual Stydioでデバッグする時に表示が変わらない、JavaScriptなどの変更が反映されない等の不都合が散見されてきた。特にASP.NET AJAXで色々と編集し始めてからデバッグ時に意味不明なエラーが出たり、うまく反映されない。
Chrome自体も、デバッグで使うとたまにキャッシュなのか反映されないことがあったので、そういう仕様なのかもしれないが……。

速度が早くしても、こういう現象は論外なので無効にした。



ちなみに、無効化は...
1. [アドオンの管理]-[アドオンを有効または無効にする]
2. 該当するアドオンを選択し、設定ラジオボタンを「無効」に。

2009/10/30

C#時間計算

時間計算はDateTime.Addメソッドを使用する。
DateTime.Add( TimeSpan )

足し算は...

DateTime d = DateTime.Now.Add(new TimeSpan(0, 3, 0, 0, 0)); // 3時間後を取得
DateTime d2 = DateTime.Now.Add(new TimeSpan(1, 0, 0, 0, 0)); // 一日後を取得
DateTime d3 = DateTime.Now.Add(new TimeSpan(1, 0, 0, 3, 0)); // 3分後を取得。カップラーメン用


では、引き算は...

DateTime d = DateTime.Now.Add(new TimeSpan(0, -3, 0, 0, 0)); // 3時間前を取得
DateTime d2 = DateTime.Now.Add(new TimeSpan(-1, 0, 0, 0, 0)); // 昨日を取得

引数をマイナスにする。

では、年は?

DateTime d4 = DateTime.Now.AddYears(1); // 1年後を取得

こんな感じですね。

2009/10/27

Microsoft Office Visioのようなフリーお絵かきツール

gliffy

ユーザー登録をすることで無料で使用できるVisioライクな作図ツール。


Visioを使ったことがある人なら直感的にすぐに使えるはず。
印刷もできるし、svg,jpg,pngとして出力することもできる。


Web環境があればいつでも作業できる手軽さがいいですね。

2009/10/26

iGoogleのタブにある「チャット」を消す


iGoogleはデフォルト状態ではタブに「チャット」が表示されているのだが、使わない人にとってはこれはうっとうしいと思う。
どうやって消せばいいのかよくわからなかったりして、けっこううざい。

これを削除するにはiGoogleの設定ページへ行けばよい。
http://www.google.com/ig/settings


[チャット]-[チャットを非表示]を選択した後に保存。


当然だが、「チャットを表示」をクリックすると復活するので注意(笑)。

2009/10/20

ASP.NET AJAX インストールについて

Visual Studio 2005で使用する場合のメモ。今更だが。

1.ASP.NET 2.0 AJAX Extensionsの入手
ASP.NET 2.0用の「ASP.NET 2.0 AJAX Extensions 1.0」をダウンロードする。Visual Studio 2008 が登場した今となってはアーカイブされている。

本体はMicrosoftのここにあるのだが。

2.ASP.NET AJAX 1.0のインストール



3.web.config書き換え
ここから少し色々しなければならない。

プロジェクトをゼロから作る場合は、新しいプロジェクトを作成する際に「ASP.NET AJAX-Enabled Web Application」がテンプレートつぃて追加されているはずなので、これを選べば良い。


今あるプロジェクトに追加する場合は、Web.configに追記する作業が発生する。追記する個所を確認するためにも、新規のプロジェクトをテスト用に作ってみると便利だと思う。

具体的には...
・configSectionsをごっそり追加
・system.webにpages, controlsの項目を追加
・compilation内にassembliesを追加, httpHandlersを追加, httpModulesを追加
・system.webServerを追加

とりあえず不足分を補うように記述する。

2009/10/19

sqlcmdが使えない

SQLServerをコマンドラインから操作する際に使用する「sqlcmd」だが、Microsoft SQL Server 2005 コマンド ライン クエリ ユーティリティをインストールしないと使えない。


また、これは Microsoft SQL Server Native Client を先にインストールしておく必要がある。


通常はSQLServerをインストールすると入るのだが、SQLServerが入っていない場合は個別にインストールする必要がある。当然だが。

ダウンロード先

Windows Server 2008 Windowsファイアウォールでポートを開ける

1.受信の規則
 [右クリック]-[新しい規則]、もしくは [操作]-[新しい規則]。


2.規則の種類
 「ポート」を選択


3.プロトコルおよびポート
 TCP 1433


4.操作
 接続を許可する


5.プロファイル


6.名前
 わかりやすい名前を付ける

2009/10/16

Google サジェストで遊ぶ

「ごおgぇ」


「bぉっげr」――なんかすごいw


「やほお」――まぬけな響きだ


「sqlせrヴぇr」――もはや何のことかわからない……。


「みcろそft」――ミクロな感じ。


「ふじこ」――広告も"ふじこ"。

セッション状態要求をセッション状態サーバーに対して作成できませんでした。

ASP.NET 状態サービスが開始されていて、クライアントとサーバーのポートが同じであることを確認してください。サーバーがリモート コンピュータ上にある場合、HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\aspnet_state\Parameters\AllowRemoteConnection の値を調べて、このコンピュータがリモート要求を受け付けることを確認してください。サーバーがローカル コンピュータ上にあり、上記のレジストリ値が存在していないか 0 に設定されている場合、状態サーバー接続文字列ではサーバー名に 'localhost' または '127.0.0.1' を指定しなければなりません。


→Session State Serverを設定する。




SQLServer: data source=127.0.0.1;Trusted_Connection=yes



tcp 42424
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\aspnet_state\Parameters\AllowRemoteConnection → 1

構成にエラーがあります (vjslib.dll)

vjslib.dllは、J#のライブラリである。
これを参照するためには「Microsoft Visual J# 2.0 再頒布可能パッケージ」をインストールする必要がある。

ただし、これは32bit版と64bit版で異なっており、
正しいライブラリをインストールしなければならない。


Microsoft Visual J# 2.0 再頒布可能パッケージ
http://www.microsoft.com/downloads/details.aspx?FamilyID=f72c74b3-ed0e-4af8-ae63-2f0e42501be1&displaylang=ja

Microsoft Visual J# 2.0 再頒布可能パッケージ Second Edition (x64)
http://www.microsoft.com/downloads/details.aspx?FamilyID=42c46554-5313-4348-bf81-9bb133518945&DisplayLang=ja

IISでPerl

もちろんPerlも問題なく動作する。
途中まではPHPの時と同じ。

1. ActivePerlをインストール



インストールの確認は、コマンドプロンプトから行える。
コマンドは「perl -v」だ。



2. スクリプトマップの追加
[IISマネージャー] - [ハンドラーマッピング] - [スクリプトマップの追加]



要求パス: *.cgi (スクリーンショットは間違っているw)
実行可能ファイル: perl.exe(phpをインストールしたパスを通す)
名前: 自分がわかりやすい名前でOK(CGIとか)

動詞のタブからは特定のアクセスの時のみの制限を付けることができる。
「GET,POST」が通常設定するような制限ですかね。

設定したあとにサンプルプログラムをサーバに置いてアクセスすると動作するはず。

2009/10/15

IISでPHP

Windows Server 2008 R2 (64bit)にて検証したが、動作確認は問題なかった。
FastCGIはPHPとIISを橋渡しするためのものだ。

1.IISをインストール

2.CGIをインストール


3.PHPをインストール

4.モジュールマップの追加
[IISマネージャー] - [ハンドラーマッピング] - [モジュールマップの追加]


要求パス: *.php
モジュール: FastCgiModule
実行可能ファイル: php-cgi.exe(phpをインストールしたパスを通す)
名前: 自分がわかりやすい名前でOK(PHPとか)

5. 動作確認


ローカルなら http://localhost/phpinfo.php でOK。
他のサーバなら localhost をサーバ名にする。


IIS.NETがすごく参考になる。
Related Posts Plugin for WordPress, Blogger...