読者です 読者をやめる 読者になる 読者になる

kurukuru-papaのブログ

主に、ソフトウェア開発に関連したメモを書き溜めたいと思います。

listviewを動的に操作してみた

Androidで、PhoneGapとjQuery Mobileを勉強しています。jQuery Mobileのリストビューを動的に生成し、リストビューの選択項目を取得する処理を作成しましたので、メモしておきます。 概要 次のように、リストビューの画面と、リストビューで選択された項目を…

こんなに簡単だとは思わなかった!Viewのドラッグ方法

Viewをドラッグ・アンド・ドロップするというと、どのように実装するのか直ぐには思い浮かばなかったので、調べたところ、Viewをドラッグするだけなら、非常に簡単に実装できることがわかりました。私が作成した実験プログラムを紹介してみます。 画面イメー…

逆コンパイルソフト「ILSpy」

以前、C#.NET用のデコンパイルソフト「Reflector for .NET」を大変便利に使わせて頂いていました。が、Reflectorは、2011/3/10から有償になったようで、そのうち無償の別のデコンパイルソフトを探そうと思っていました。先日機会があり別ソフトを見つけるこ…

Denchin 0.2.4 公開

前回アップデートからかなり時間が空いてしまいましたが、2012/4/12にバージョン0.2.4を公開しました。今回のアップデートでは、バッテリー消費量が軽減されるはずです。見た目は全く変えていないです。ぜひご利用ください。 リンク Denchin 0.1.4 公開 Denc…

SQLiteのトランザクション管理はパフォーマンスに影響するでしょうか?

Androidアプリ開発において、DBのトランザクション管理が、パフォーマンスの観点で、どの程度影響するのか気になりました。トランザクション管理を適切に行うと、パフォーマンスが向上すると思うのですが、それは使用者が体感できるほどでしょうか?今回動作…

アプリポケット 0.2.5 公開

Android用のランチャーアプリを作成しています。本日、Version 0.2.5を公開しました。いくつかの不具合対応になります。不具合対応 特定端末にて電話帳アプリが起動できないなど一部の端末が起動できない、表示されない問題を修正。 複数アプリにタグ付を行…

Aptinaを利用するとAPTのテストが簡単に書けたよ

最近、APT(Annotation Processing Tool)を勉強しています。そのなかで、テストケースはどう書けば良いのか考えていました。特に、Annotation Processorのprocessメソッドの引数として必要な、Set型のオブジェクトと、RoundEnvironment型のオブジェクトの2…

AndroidのO/Rマッパーを題材にAPTを使ってみましたよ

Java6から、APT(Annotation Processing Tool)と呼ばれる便利な機能があることを知りました。とりあえず使ってみようと思い、AndroidのSQLiteでDBアクセスするための、O/Rマッパーのような処理を題材に、APTで実現してみました。 APTで自動生成するクラス A…

Macのメタ情報(EA)を除去するAppleScriptを作ってみました

Mac

Mac OS XのTigerからEA(Extended Attributes)というメタデータ機能が追加されたようですが、このEAと相性が悪いアプリケーションがあったりするような感じがしています。そこで、ファイルのドラッグ&ドロップで、EAを除去するスクリプトを作成しましたの…

AppleScriptでSafari上のフォーム入力を自動化してみた

Mac

MacのSafariで、多数のデータ入力を行う機会がありました。一つの画面で、繰り返し同じような入力を何度も行う作業です。自動化向きの作業だと感じましたので、いくらか試行錯誤し、AppleScriptで半自動化することにしました。「半自動化」です。「完全自動…

実践したい!エリック・エヴァンスのドメイン駆動設計

エリック・エヴァンスのドメイン駆動設計 (IT Architects’Archive ソフトウェア開発の実践)作者: エリック・エヴァンス,今関剛,和智右桂,牧野祐子出版社/メーカー: 翔泳社発売日: 2011/04/09メディア: 大型本購入: 19人 クリック: 1,360回この商品を含むブロ…

擬似的にシステム日時をゆっくり進めるソフトウェアを作成してみたよ

Windowsの管理しているシステム日時を、一時的に、実際の時刻よりもゆっくりと進ませるような簡単なソフトウェアを作ってみました。実際には「ゆっくり」ではなく、一定タイミングごとに少しだけ時間を戻すことで実現しています。そのため、ある瞬間にはシス…

指定セル範囲の文字列を連結する関数

Excelで、セル範囲の文字列を連結する関数を書いてみました。連結時の区切り文字を指定することが可能です。文字列連結は、Excel標準のCONCATENATE関数でも出来ますが、この場合、連結する対象のセルを1つずつ指定する必要があり、区切り文字を指定すること…

Sleep処理の誤差が気になったので動作確認ソフトウェアを作成してみました

C#.Netにおいて、System.Threading.Thread.Sleep()で、数ミリ秒の時間を扱ってプログラムを書いていました。動作させてみると、このSleep処理で思ったタイミングで動作していないように思えました。調べてみるとSleep処理には、ある程度誤差が発生するようで…

TrueCryptでファイル変更できない時の対処法

TrueCryptを使用していてちょっと問題が発生しました。今までTrueCryptを使用していたユーザがいたのですが、今回、別のユーザでファイルにアクセスすると、ファイルを変更することができませんでした。(ただし、フォルダやファイルの追加は出来ました。) …

Windowsにおけるよく使うネットワーク系コマンド

Windowsを使っていてネットワーク絡みに問題があったときに、よく使うコマンドのメモ。 Ping ping [-t] target_name"-t"をつけると、Ctrl+Cを押すまで処理を繰り返す。 Tracert tracert target_nametracertでネットワークの経路を調査する − @IT http://www…

実機内でsqlite3コマンドを使ってみよう

Androidアプリ開発をしていて、実機のDB内容を確認したくなりました。少し手順が必要でしたが、DB内容を見ることが出来るようになりましたので、その手順をメモしておきます。 はじめに 参考にさせて頂いたサイトです。ほぼ記述されているままの手順で出来ま…

Android2.3化後のXperia(SO-01B)に対してRoot化とドコモ化

「ごろーさんスペシャル」というロムを使用すると、次のことが出来るそうなので、早速試して見ました。 純正仕様 日本語フォント(モトヤマルベリ3等幅) *arcと同じ ドコモ化(SPモード配信&絵文字) Mobile Bravia Engine(写真とムービーをくっきりあざやかに…

Xperia(SO-01B)のAndroid2.3化

Sony Ericssonから、公式のAndroid2.3ロムが出ているようなので、Android2.3にチャレンジしてみました。大きな問題もなく、あっさりとAndroid2.3化できちゃいました。 手順 次のページの通りです。記事を読みながら作業をしても30分かからないくらいで出来…

プリンタ設定でスプール使用時は印刷順序が順不同となる

一度に数百件のスプールをプリンタに送るようなソフトウェアを使っていました。何度か動かしていて気づいたのですが、スプールに送っているはずの印刷順序と、実際に印刷される順序が時々異なるようです。原因は、Windowsの印刷ドキュメントのスプール機能に…

Google Chrome拡張のNew Tab to Tasksが使いやすい

PCのブラウザから、GoogleのTasksを使用するとき、GMailのポップアップとしてしか表示できなくて、いまいち使いづらい思いをしていました。Google Chrome拡張のNew Tab to Tasksを使うと、ブラウザ画面一杯に、Tasksを表示できて、使いやすくなりました。 リ…

Denchin 0.1.9 公開

2011/4/20に0.1.9を公開しました。端末あるいはホームアプリによっては、端末起動時にウィジェットが表示されなくなる不具合の対応です。Android Marketでの不具合報告、ありがとうございました! 不具合対応 ウィジェット 端末あるいはホームアプリによって…

私(初心者)向けSimeji設定

Androidでフリック入力に挑戦しています。Simejiでフリック入力する場合、便利な設定があったので、メモしておきます。 ここでメモする事は、Simejiの画面を次のように50音表記にするための設定となります。 Simejiの設定画面を開き、日本語ソフトキーボード…

ステータスバーのアイコン/通知ウインドウのテキストを動的に切り替える方法

いくつかのアプリを使っていると、ステータスバーのアイコンが動的に切り替わっているものがありました。どのように実装しているのでしょう?私も作ってみました。 概要 こんな画面イメージのものを作りました。まずは、ノーティフィケーション初期表示時の…

Denchin 0.1.7/0.1.8 公開

2011/3/31に0.1.7、2011/4/3に0.1.8を公開しました。不具合対応と機能追加をしています。Android Marketでの不具合報告とご要望、ありがとうございました! 新機能(Version 0.1.8) ウィジェット ウィジェットに表示するステータスに、アイコン表記を追加。…

Denchin 0.1.5/0.1.6 公開

2011/3/28に0.1.5、3/29に0.1.6を公開しました。0.1.6は、0.1.5で混入させてしまった不具合対応です。 0.1.5の不具合をいち早くご連絡頂きありがとうございました! 新機能(Version 0.1.5) ウィジェット レイアウト変更。 放電/充電状態がわかるように文言…

Denchin 0.1.4 公開

2010/12/28から、自作Androidアプリのバッテリー残量監視ウィジェットをAndroid Marketへ公開させて頂いています。少しづつ使ってくれるユーザさんが増えてきて、嬉しいやら、恥ずかしいやらです。さきほど、バージョン0.1.4を公開しました。 新機能 ウィジ…

フィルタ操作メモ

フィルタを外す If ActiveSheet.AutoFilterMode Then ActiveSheet.AutoFilterMode = False End Ifフィルタから抽出条件をクリアする If ActiveSheet.FilterMode Then ActiveSheet.ShowAllData End If

プロファイルツール

パフォーマンス改善に非常に有用なツールが、Android SDKに標準で同梱されているのを知りました。 Traceview - グラフィカルログビューア - ソフトウェア技術ドキュメントを勝手に翻訳

メール送信サンプル

Androidで、メール送信アプリを呼び出して、メール送信するサンプルを作成してみました。メール送信には、次の2つの方法があるようですが、今回のサンプルは1です。 1.メールアプリを起動して、メール送信。 2.Google提供のライブラリを使用して、メー…

イベント処理の流れ

C#.NETにおける、イベント処理の処理順序について、基本的なことが分かっていなかったので動作確認してみました。要は、ボタンを2度押しした場合、どのような処理の流れになるの?、という話です。動作確認した内容は、次の3つです。 1.基本パターン 処理…

Visual Studio 2008にて、コマンドラインでビルド実行する方法

call "C:\Program Files\Microsoft Visual Studio 9.0\Common7\Tools\vsvars32.bat" MSBuild プロジェクトファイル名 /property:Configuration=Release /t:Rebuildもしくは set path=path;C:\Windows\Microsoft.NET\Framework\v3.5 MSBuild プロジェクトファ…

.NETリモーティング(IPC版)クライアント

(続きです)クライアント側の実装です。サーバ側の設定に合わせて、チャネルを"ipc://myserver/mymessage"としています。 public partial class ClientForm : Form { private MyMessage myMessage; public ClientForm() { InitializeComponent(); } private…

.NETリモーティング(IPC版)サーバ

(続きです)サーバ側の実装です。ServerForm_Loadメソッドで、チャネル作成、イベント登録をしています。チャネルは"ipc://myserver/mymessage"という名前で登録しています。クライアントから通信があると、OnCalledメソッドが呼ばれます。 チャネルの名前…

.NETリモーティング(IPC版)データ

(続きです)クライアントとサーバ間でやり取りするデータクラスは、次のように記述しました。MarshalByRefObjectクラスを継承して作成します。Callメソッドは、クライアントから呼ばれます。Callメソッドの内部では、callEventフィールドを経由して、サーバ…

.NETリモーティング(IPC版)概要

C#でのプロセス間通信がよくわからなかったので調べてみました。一応、動作するアプリが作成できたので、メモしておきます。 用語 まず、いくつか言葉の定義を確認しました。.NETリモーティング アプリケーション同士の通信を簡単に行うことができる仕組み。…

Windowsのインストーラー(*.msi)を、インストールなしで、ファイル展開する方法

Windowsの標準コマンドでできました。 start /wait msiexec /a setup.msi targetdir="\\server\dir" /qnsetup.msi:ファイル展開対象のインストーラー \\server\dir:ファイル展開先ディレクトリ。ネットワーク上のディレクトリのみ指定できるようです。ネタ…

リモート接続でアカウントロック発生

Windows XP SP3同士のPCで、リモート接続を使用としたら、アカウントロック発生し、ロック解除しても、数秒で再度ロックされてしまう現象が発生しました。 よくわからない現象でしたが、解決したのでメモしておきます。 現象 Windows XP SP3のPCから、別のWi…

逆コンパイルソフト「Reflector for .NET」

.NETアプリを逆コンパイルかけたい時がある。そんなときは、「Reflector for .NET」。 MOONGIFT : .NETアプリケーションをデコンパイル「Reflector for .NET」 オープンソース・ソフトウェア/フリーウェアを毎日紹介 Reflector for .NET の逆コンパイルでア…

データセットを使用したレコード登録・更新・削除

Visual C#.NETのお勉強中です。DB操作には「データセット」というものを良く使うようですが、よくわかっていないので勉強してみました。作成したサンプルアプリの画面イメージです。 使用したテーブルです。 drop table Table01; create table Table01 ( Id …

Excelファイル読み込み方法(遅延バインディング方式)

Visual C#にて、Excelファイルを読み込む処理を書いてみました。ここでは、遅延バインディング方式と呼ばれる方法を使っています。これにより、実行時に、アプリケーションと、ExcelのDLL(Microsoft Excel XXX Object Library。XXXはバージョン)との参照設…

Excelファイル読み込み方法(事前バインディング方式)

Visual C#にて、Excelファイルを読み込む処理を書いてみました。ここでは、事前バインディング方式と呼ばれる方法を使っています。この方法では、ExcelのVBAを使っているのと同じような感覚でプログラミングが出来ました。ただし、開発時点で、Excelアプリケ…

DLL配布しているSQLServer Compact 3.5にSPを当てる場合の注意

SQLServer Compact 3.5を使っています。アプリケーションにDLLを組み込むだけ、インストール不要でデータベースが使えるようになり、お手軽さを実感しています。SQLServer Compactを長く使っていこうとした場合、一度配布したアプリケーションに対して、SQLS…

Windowsバージョンの取得方法

アプリケーションが動作しているWindows環境について、Windowsの種類(Windows XP, Vista, 7, Server 2003, Server 2008など)とService Packを取得する方法を調べたのでメモしておきます。まず、バージョン判定の考え方ですが、これはMicrosoftのサイトに載…

インストールされているExcelのバージョンによって処理を分ける方法

Visual C#で、Excelファイルを読み込むようなことを考えています。Excelファイルの読み込み用のライブラリは、ExcelアプリケーションをCOM経由で呼ぶ想定です。この場合、使用するライブラリ(Microsoft Excel 12.0 Object Libraryなど)は、動作環境によっ…

XperiaのUSBデバッグ接続

少しずつAndroidアプリの開発方法について、勉強しています。ネットをいくつか見ていると、実機でデバッグすることができるらしいですね。手元のXperiaで試してみました。下記のページを参考にして、難しいことなく出来ました。 [Android] Windows Vista にX…

バイナリデータが含まれたQRコード読み込みiアプリ

先日、QRコードのデコードソフトについて調査を行いました。その際、iアプリで作れば良いんじゃない?という案も書いていたかと思います。で、何となく簡単なiアプリを作ってしまいました。iアプリって簡単に作れるんですね。ちょっとビックリしました。次の…

Slim3をはじめてみます

Slim3のVersion 1.0.0がでたということで、遅ればせながら私もSlim3に触れることにしました。少し触れてみて気になったこと、分かったことをメモしてみます。(何分、素人が調べた結果ですので、誤りも含まれているかも知れません。) コントローラーの作成…

QRコードのデコードソフトを探してみた

今まで、QRコードのエンコードについて探したことはあったけど、デコードはあまり気にしたことがありませんでした。デコードは、手元の携帯電話の付属のQR読み取り機能を使っていたので困ることがなかったのです。今回は、少し特殊なデコード、バイナリ情報…

クリップボード操作メモ

#! ruby -Ks # clipboad.rb # クリップボード操作サンプル # # 前提 # ・win32-clipboardライブラリがインストールされていること。 # インストールされていない場合は、次のようにしてインストールしてください。 # gem install win32-clipboard # ・デバッ…