技術者派遣の技術日誌ブログ

November 29, 2007

Silverlight 1.1 Tools Alpha for Visual Studio 2008

Filed under: ALL — Tags: — Sayuri @ 7:36 am

Silverlight 1.1 Tools Alpha for Visual Studio 2008 Available for Download より

VS2008 正式版用の Silverlight 1.1 Tools Alpha も出てます。

November 28, 2007

ViewState の情報を Session に保存する方法

Filed under: ALL, Asp.Net — Tags: , , — Sayuri @ 2:40 am

ViewState の情報を Session に保存する方法

November 26, 2007

固定heightページにグリッド

Filed under: ALL, Javascript/Xhtml/Css — Tags: , — Sayuri @ 7:33 am

HTML TABLE スクロール

で、いろいろ出ます、基本は同じで
css レイアウト属性の固めかた、Javascriptの扱い、さまざま。

November 24, 2007

ASPからWebサービスを利用する方法

Filed under: ALL — Tags: — citiszo @ 10:53 pm

ASPからWebサービスを利用する方法

Microsoft SOAP Toolkit 2.0 SP2 をダウンロードし、インストールする。

あとは、コード内で SOAPClient のインスタンスを生成し、Webサービスのメソッドを呼ぶだけ。

  Dim objSoapClient
  Dim strResult

  Set objSoapClient = CreateObject(“MSSOAP.SoapClient”)
  Call objSoapClient.mssoapinit(“http://localhost/WebServices/Hogehoge.asmx?WSDL“)
  strResult = objSoapClient.HogehogeMethod(“Hoge”)

ASP から呼び出すと次のエラーが発生して、呼び出しが行なえない。

  'Client: WSDLReader:Loading of the WSDL file failed HRESULT=0×80070057 – WSDLReader:XML Parser failed at linenumber 0, lineposition 0, reason is: 要求されたリソースのデータは使用できません。

  HRESULT=0×1' の種類の例外はハンドルできません。

どうも、WSDL ファイルは、WSDLReader の中の DOM に対して、MSXML の HTTP インターフェイスを使ってロードされるらしい。
ASP ページ内で MSXML HTTP スタックを実行するためには、ServerHTTPRequest オプションを使用する必要があるみたい。
次のコードをmssoapinitの前に呼びだせば、問題なく呼び出しが行なえるようになる。

  objSoapClient.ClientProperty(“ServerHTTPRequest”) = True

Outlook でメール送信時に件名や添付ファイルのチェックを行う方法

Filed under: C# — Tags: , , , , , , — Sayuri @ 6:42 am

この Tips では、 Outlook でメールを送信する時に件名 (Subject) や添付ファイルのチェックを行う方法について説明します。 Outlook を利用していると、メールの送信後に件名の入力漏れやファイルの添付漏れに気づく場合があります

では、マクロ (VBA) を使った方法を説明します。以下のマクロを ItemSend イベントへ関連づけてください。 (Tips 用にシンプルにしたため、関数化などを行っていません。各自で機能拡張を行うときにリファクタリングしてください。リファレンスとして MSDN の Outlook の VBA を使用した Outlook イベントへの応答やその周辺が参考になります。)

Private Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean)

November 22, 2007

JavaScript で undefined と null を同時に判定する方法

Filed under: ALL, Javascript/Xhtml/Css — Tags: — Sayuri @ 11:49 pm

「JavaScript で undefined と null を同時に判定する方法」と書くと大げさですが、内容は非常に単純です。 undefined と null を同時に判定するには、以下のようにします。

// 変数 != undefined && 変数 != null と同じ
if (変数)
{

November 16, 2007

PHP5、PHPエラーを例外(Exception)へ変換

Filed under: ALL, LAMP, PHP — Tags: , , — Sayuri @ 11:27 pm

PHP5で例外(Exception)が使えるようになった。
PHPエラー(NOTICEとか)を例外へ変換することで、PHPに関する全てのエラーを
例外として扱うことができる。


ネタ元では、PHPエラーが発生したファイル名、行番号を
Exception へ変換する処理が無いので、これを実装することを考えてみた。


流れは次の通り。


PHPエラー

[HOWTO] ASP.NET、ADO.NET、および Visual C# .NET による Excel データの取得と表示方法

Filed under: ALL — Tags: , , , , — SixYo @ 10:28 pm

Excel ワークシートのサンプルを作成する
1. Microsoft Excel を起動し、新しいワークシートを作成します。

PHP、文字列比較で「==」は禁止

Filed under: ALL, LAMP, PHP — Tags: , — Sayuri @ 10:05 pm

php数年やってますが、知らなかったという話。
単に私の知識不足なのかもしれませんが、
おそらく知らない人の方が圧倒的に多いと思う(妄想?)ので、
もっと宣伝?すべきだと思う。


結論から言うと、
文字列比較に「==」を使ってはいけません!
絶対に「===」を使いましょう。


ネタ元は、
がるの健忘録 – 素晴らしき自動的な世界~或いは「型のない」世界~:
http://d.hatena.ne.jp/gallu/20061108/p1


ようは「==」と「===」の違いの話、そんなことはわかってる。
数値対文字列で比較してるから、想定しづらい状況になってるだけで
型を意識しておけばよいこと。(だとこのときは思ってた)


ところが、上記ネタ元のコメント欄みて愕然とした。


文字列対文字列の比較なら「==」で比較しても何ら問題ない。
と思っていませんか?
私は思ってました。


しかし、それは間違いなんです。
なぜならPHPでは ('100' == '10e1') が true になってしまうから。
なぜならPHPでは ('100' == '100.0') が true になってしまうから。
なぜならPHPでは ('100' == '0100') が true になってしまうから。


PHP: 比較演算子 – Manual:
http://www.php.net/manual/ja/language.operators.comparison.php


数値形式の文字列を比較する場合、それは整数として比較されます。

これはかなりショックです。


文字列対文字列の比較であっても、数値と解釈できるとき
(is_numericでtrueになるかどうかってことかな)には
数値対数値 で評価されてしまうんですね。


「===」もしくはstrcmpを使いましょう。


$ echo “” | php
array(3) {

[HowTo] C#、Excel2000 COM 操作クラス

Filed under: C# — Tags: , , , — doku @ 10:01 pm

C#からExcelCOM使うとリークしてしまうのが難点。
[Visual Studio .NET 2005 C#、Excel COM 操作]
のようにVBS経由でExcelCOM使うことで回避もできるが、
C#からVBS、VBSからC# へのパラメータ渡しに
手間がかかる。
ここでは正攻法(?)でExcelCOMに1枚クラスを被せることで
使いにくいExcelCOMの存在をできるだけ隠蔽することを試みます。


COMは「Microsoft Excel 9.0 Object Livraly 1.3」を使用します。
細かな話はソースのコメントにも記述してます。
クラスを被せることのメリット
COMの開放のことを考えなくてよくなる。
わずらわしいリークに悩まされることが激減する。
COMの戻り値を適切な型にキャストしたりしなくてよい。
キャストミスによるトラブルに悩まされることが激減する。
インテリセンス(入力支援)が効くので作業効率アップ。
クラスを被せることのデメリット
ExcelのCOMオブジェクト、メソッド、プロパティを1つずつラッピングする必要がある。
膨大なので全てをラッピングするのは不可能です。

使用例
private void button1_Click(object sender, System.EventArgs e)
{

Older Posts »

Powered by WordPress