MakeSureDirectoryPathExists を VB6 でシミュレートする
VB6 で、MakeSureDirectoryPathExists 関数の動きをシミュレートしたものを作ったので、おいときます。
VB6 で、MakeSureDirectoryPathExists 関数の動きをシミュレートしたものを作ったので、おいときます。
WSH でショートカットを作成する方法です。どこにでも転がっているものと同じですが、自分のために。 コマンドラインコピーツール のインストーラとして作成したものです。
VB6 で、エラーをハンドリングする際のスケルトン。例によって VB6 に限定しているのは、.NET はまだ仕事で使ってないので語るものを持たないためです。
エラーを必ずハンドリングする必要があるのは、呼出元を持たないプロシージャ、つまり、Sub Main() 、イベントプロシージャ、またはコールバックプロシージャ(ウインドウをサブクラス化した時のウインドウプロシージャとか、フックプロシージャのこと)などで、自分自身が大元の呼び出し元であるプロシージャ達です。それ以外のエラーは呼出元に返すことができます。
呼出元に返す際に、 Err オブジェクトにプロシージャ名をセットしていくと、前述の呼出元プロシージャでは、呼出順をとることができます。
あまりにもコメントスパムが多くなってきたので、mt-comments.cgi に急遽自前フィルタを追加してみた。結構いい感じ。
下記は 'sex' と 'porn' を含むコメントをポストできなくした例。
実際にはスパム業者はある程度絞れるので、具体的に特定の URL を本文に含むもの、などとしている。
EXTRACT という関数がある。Oracle や PostgreSQL に実装されているが、Oracleでの挙動が少々わかりにくい。
注意: 抽出を実行するフィールドは、datetime_value_expr または interval_value_expr フィールドである必要があります。たとえば、DATE 値からは、YEAR、MONTH およびDAY のみを抽出できます。同様に、TIMESTAMP WITH TIME ZONE データ型からは、TIMEZONE_HOUR および TIMEZONE_MINUTE のみを抽出できます。
という注意書きが付いているが意味が良くわかんないのである。確かに、SELECT EXTRACT(SECOND FROM SYSDATE) FROM DUAL を実行しようとすると
ORA-30076: 抽出ソースの抽出フィールドが無効です
と叱られる。じゃあいったい SECOND ってキーワードは何なの? である。