seraphyの日記

日記というよりは過去を振り返るときのための単なる備忘録

2012-01-01から1年間の記事一覧

JNLPのJava AppletをChromeでも使うお作法 一式メモ

JDK1.6u10以降の新しいアプレットでは、 ファイルの読み書き、クリップボードへのアクセス、ローカルマシンのファイルのアクセスが可能になっている JNLP APIを使い、Java Web Startと同じ使用方法 サンドボックスは従来どおり有効、(ファイルアクセス等はユ…

少し古いノートPCにWindows8を入れたらCPUが本気を出してくれなくなったときの対応方法

要約 少し古いノートPCにWindows8を入れたら激遅になってしまった場合、 まず、タスクマネージャかパフォーマンスモニタで現在のCPUの速度を確認する Windows Vista/7/2008/8などの最近のOSはCPUの省電力機能に対応してクロック数を可変できるようにしている…

C#5.0のasync/awaitによる非同期処理の使い方

C#

async/awaitとは async/awaitは、DotNET4.5でC#5.0(とVB)で言語仕様とフレームワークに組み込まれた"非同期処理を同期的に記述できる仕組み"である。 PLINQなどが計算処理などを複数スレッドに分散してCPUを効率よく使うことを目的としているのに対して、asy…

C#アプリケーションの起動時にシフトキーが押されているか判定する方法

Win32のアプリケーションや、MS-ExcelやAccessではシフトキーを押しながらアプリケーションを起動すると、いつもとは違う方法で起動させることができる機能がある。 これをC#のWindowsFormのアプリケーションで実現するには、どうすればいいのかなー、とおも…

MacのVMWare Fusion4で物理ディスクを使う方法

目的 VMWare Fusion 4では、仮想マシンに仮想ディスクvmdkを追加するとき、物理ディスクやパーティションを指定するオプションがない。 しかし、VMWare Fusionのウリの一つである、Boot Campパーティションからの仮想マシンの起動などの機能をみると、Fusion…

Apache Derbyで新規データベースにテーブルを自動構築する簡単な方法

新規データベース作成後の処理 Apache Derbyを埋め込みモードで使う場合、指定したパス上にデータベースが存在しない場合、接続URLのオプションとして、自動的に作成するように指示することができる。 たとえば、以下のような接続URLである。 DriverManager.…

Apache-Derbyのアプリへの組込とUDT/UDFの使い方のメモ(後編)

記事が長くなりすぎたので分割しています。前記事は、こちら。 Derbyにおける自動採番の取得方法とシーケンスオブジェクト Apache Derbyは従来は、プライマリキーとしては「generated always as identity」を指定し、自動採番とする方法と、 SQL:2003準拠、O…

Apache Derby Dbのアプリケーションへの組み込み方と、ユーザー定義型、ユーザー関数の使い方

Apache Derby 10.9.1.0のアプリケーションへの組込方法と、ユーザー定義型とユーザー定義関数の使用例について記述する。 動機 昨今、アプリケーションのバックエンドにSQLite3などの軽量・組み込み型データベースが使われる例が非常に多くなっている。 PCの…

Squirrel SQL ClientをApache Derby(JavaDB)のフロントエンドに使ってみる

Apache DerbyにはGUIの管理ツールが標準では存在しない。 コンソール画面での対話ツールである「ij」で一通りデータベースの管理はできる。 これは、OracleでいうところのSQL*Plusみたいなものである。 DDLのようなものは、たとえばERツールで生成するなどし…

C#でアプリケーション設定を取得・保存する、いくつかの方法

基本はapp.config(web.config)に集約される DotNETではアプリケーション設定の類を扱うには、ざっくりと以下の方法があげられる。 app.config (ウェブアプリケーションの場合は、web.config) appSettingsによる単純な key=value 形式の文字列データによる方…

JavaのJAXBに相当することをC#で行う方法

C#ではXmlSerializerがJavaのJAXBに相当する 前回は、JavaでXMLをあつかう方法に関連してJAXBを調べてみたので、今回は、それと同等なことをC#で試してみる。 DotNET FrameworkはVer1.1のころからXMLには非常に手厚いサポートがあり、 JavaのJAXBに相当する…

設定ファイル等の読み書きにXML形式を使う3つの方法(簡単なもの順)

java.util.Propertiesを使う J2SE5以降のjava.util.Propertiesは、XMLファイル形式をサポートしている。 日本語などを使う場合も、昔ながらの native2ascii のお世話になる手間がなく、 デコードし直さなくても、ちゃんと人間が読める文字なので修正もらくち…

コンパイルされたクラスファイルのターゲットとしていたJavaVMのバージョンを確認する方法

動機 たとえば、コレクションクラスを使っているのにジェネリックでないソースと、そのコンパイル済みのクラスファイルをもらったとする。 日付は2010年あたりになっている。 書き方や使っているクラスからみて、もともとは、かなり古いソースと見受けられる…

[objc] Objective-Cのブロックと、ブロックにキャプチャされたオブジェクトの寿命の確認

上記のObjective-Cのコードでは、ループ中にブロックを作成して配列に格納しているが、 ここで生成されるブロックは本当にループ回数分だけ独自のものが生成されているのか、 ブロックにキャプチャされたローカルスコープのオブジェクトは、ブロックが残存す…

ラムダ/クロージャ/ブロックの覚え書き

C#, C++, Objective-Cのラムダ(匿名関数)の基本的な使い方の覚え書きと、JavaSE7時点のラムダ相当のイディオムについての雑記。(※ プログラムの作用に主眼を置いて、単純に、Lambda ≒ Closure ≒ Block ≒ 匿名関数 という認識で書いてます。) C#4.0のラムダの…

「違法ダウンロード罰則化」

「違法ダウンロード罰則化」は、もっとやばい!? もう一つ、びっくりした法律が試行されようとしています。違反ダウンロードの刑事罰化。 違法ダウンロードは犯罪だよね、そんなこと私はやってないから関係ない、、、とはならない。自分が正規のコンテンツを…

児童ポルノ法が私に及ぼした実害と、今後増えると予想される家宅捜索令状

今回の日記について 大変亀レス的、且つ、私的な話題でネットで晒すのも恐縮なのですが、コンピュータに関係しなくもない経験をしたので、なにかの役に立つかもしれないので日記として残しておきます。 事故や犯罪被害をうけた人は、「まさか自分が、こんな…

JavaSE7でファイルを監視する方法

動機 上記、Windows(C++)でのファイル監視方法を試したので、その流れで、ついでにJavaSE7以降からサポートされるようになったJavaのファイル監視のAPIを試してみる。 いきなり実験コード (JavaSE7 Update4 on Windows7 64ビット版) package fwatch_java7; i…

ファイルの変更を監視する方法

Win32 APIにはファイルの変更を監視する方法として、少なくとも2つの方法がある。私は従来よりファイル監視のためのAPIとして、FindFirstChangeNotification関数を愛用している。 だが、WindowsNT系のUNICODEビルドであれば使えるというReadDirectoryChangeW…

ADO.NETの型つきデータセットを自分で実装する方法

概要 Visual StudioのExpressでない有償版か、もしくはExpressであってもmdfファイルをローカルに持つSQLServerへのデータベースアクセスでは、Visual Studioのアドインまたは内蔵されるツールによって、データベースへのアクセスをタイプセーフにアクセスで…