酢ろぐ!

カレーが嫌いなスマートフォンアプリプログラマのブログ。

開発-Windows Mobile

Windows Mobile( .NET Compact Framework)でTwitter APIを使ってPOSTで投稿する

Twitter APIを使ってPost出来ないという声を聞いたので、自前のTwitterクライアントで使っているコードを貼り付けておきますね。Windows Mobile(.NET compact Framwork)でも使えるコードです。 ''' <summary> ''' Twitterへ投稿する ''' </summary> ''' <param name="status">Twitterへ投稿する文字</param>…

Windows Mobile(.NET Compact Framework)でSIP表示時にコントロールのサイズを変更して、SIPと干渉しないようにする

Windows Mobile 6.5 Professionalエディションが搭載されたWindows phoneでは、ハードキーボードを搭載しない端末が増えています。その手の端末では、文字の入力をする為にソフトキーボード(SIP:Soft Input Panel)を使用します。 ソフトキーボードを有効に…

Windows Mobile(.NET Compact Framework)でWinMsg(Windows メッセージ)を拾う

.NET Compact Frameworkは、デスクトップ版.NET Frameworkのサブセットです。省容量のためイベントやプロパティ類が大幅にカットされています。 よって拾えるイベントがものすごく少ないので、Windows Messageによる処理を行なえるようにしました。 一般的な…

Windows Mobile(.NET Compact Framework)でSMSを送信する

本記事では、Windows Mobile上の.NET Compact FrameworkでShort Message Service (SMS)のメッセージを送信する方法をご紹介します。 Microsoft.WindowsMobile.PocketOutlook 名前空間の SmsMessage クラスを利用する事で、簡単にSMSメッセージを送信する事が…

Windows Mobile(.NET Compact Framework)でIconをBitmapオブジェクトへ変換する

.NET Compact Frameworkでは、デスクトップPC版の.NET Frameworkのサブセットですので、容量削減のためにモバイル向けにいくつか機能を削除されています。 今回紹介するIconからBitmapオブジェクトを生成するのもIcon.ToBitmapメソッドが削除されており、Ico…

Windows Mobile(.NET Compact Framework)で高分解能タイマを使う

QueryPerformanceFrequency 関数と QueryPerformanceCounter 関数を使用して、Environment.TickCount よりも高い精度を持つ高分解能タイマを作成する事が出来ます。 これらの実装はOEMメーカ固有となっています。 VB.NET ' 以下の名前空間を指定しておいてく…

Windows Mobile(.NET Compact Framework)でデバイスを再起動(ソフトリセット)する

Windows Mobileでは2種類の「リセット」があります。デバイスの再起動を行う為の「ソフトリセット」、工場出荷状態に戻すための「ハードリセット」です。 ハードリセットの方法に関しては、「Windows Mobile(.NET Compact Framework)でデバイスを工場出荷時…

Windows Mobile(.NET Compact Framework)でバックライトの輝度を設定・取得する

Windows Mobileのコントロールパネルのシステムタブにある「バックライト」で輝度を変更出来ます。今回は、プログラム上からバックライトの輝度を変更する方法をご紹介します。 S11HT(EMONSTER)の「バックライト」の設定画面です。このバッテリィ使用時と、…

Windows Mobile 6.x 用の Windows Marketplace 終了のお知らせ

ついにこの日が…… 2012 年 5 月 9 日から、Windows Mobile 6.x Marketplace サービスはご利用いただけなくまります。この日以降、Windows Mobile 6.x Marketplace アプリケーションやサービスを使用して、アプリケーションを閲覧したり、購入したり、Windows…

今日見つけたMetro Style Apps、Windows Mobile向け情報

和訳されたBUILD のセッション スライドが公開されました 和訳されたBUILD のセッション スライドが公開されました。Windows 8とMetro Style Appsの開発Tipsは今のうちから集めておきたいですね。 日本語翻訳ファイルは、Channel 9 の BUILD 2011 サイトの各…

Windows Mobile 追悼式……

ついに明日、日本でWindows Phoneの発表があります*1。各地ではWindows Mobile追悼式がしめやかに執り行われました。いやー、本当にS11HTは良い機種でした。S11HTがなければTwitterもやってなかったと思います。ただ解像度がQVGAだったこともあって、写真や…

OpenNETCFチームがPocket Outlook UI風のコントロール「OpenNETCF Calendar controls」を公開

I'm still working on cleaning out our code archive and publishing things I feel might still be useful. Today, I published the OpenNETCF Calendar controls, which provide some funtionality that has the look and feel of the Pocket Outlook UI.…

Windows MarketplaceのWM6.xアプリの登録更新は7/15に出来なくなります。

http://blogs.msdn.com/b/shintak/archive/2011/05/17/10165036.aspx:tileを見て、「あれ?」と思ったのでエントリを書いてたら、Marketplalce の 6.5アプリの登録終了は 7/15でしたで訂正されていた。3年前に伊藤店長(当時)が熱く語っていたWindows Marketp…

T-01A(TG01)をAndroidとして動かしてみた

MonoDroid全然弄ってないなぁと思いながら仕事に明け暮れる日々です、こんばんわ。Windows Phone 7を弄り始めてからWindows Mobileに戻れなくなって久しいのですが、T-01AでAndroidが動くと聞いたのでちょっと試してみたいと思います。ちなみにWindows Mobil…

Windows Mobile 6.0 のaygshell.libに含まれるWindowsAPIの関数一覧

関数一覧の取得の仕方は、「Windows Mobile 6.0 のcoredll.libに含まれるWindowsAPIの関数一覧」にて紹介しております。 Windows Mobile 6.0 Proffesional SDKをインストールしている僕の環境では、 C:\Program Files\Windows Mobile 6 SDK\PocketPC\Lib\Arm…

MSDNフォーラムに質問してみたよ > .NET Compact Framework でWindows Mobile 6.5スタイルのコントロールを扱う方法

.NET Compact Frameworkで、テーマが適用されたコントロールを使ってみる - 酢ろぐの対応方法が結局わからなかったので、MSDNフォーラムに初めて質問してみました。http://social.msdn.microsoft.com/Forums/ja-JP/windowsmobiledotnetja/thread/33b091cb-88…

.NET Compact FrameworkでWindows Mobile 6.5ライクなテーマが適用されたコントロールを表示する

久しぶりにWindows Mobileのコードを書いていました。そういえば、WM6.5.3を搭載した端末って日本で売ってたっけ?と思ったら、T-01Bに載ってたや。持ってる端末なのに忘れてた。id:tmyt が「WM6.5.3でサポートされたタッチフレンドリな標準コントロールの使…

Windows Mobile(.NET Compact Framework)でClearTypeを有効にしたフォントを生成する

Windows Mobile 6.5.3になって、フォントオブジェクトを生成するCreateFontIndirect関数がNotSupportedExceptionを返すようになってしまいました。もしかしてWM6.5.3でCreateFontIndirect関数がサポートされなくなったのかな?それにしても同じ機種でも端末…

Windows Mobile(.NET Compact Framework)でSelectPictureDialogクラスを使って静止画/動画を選択する

参照設定からMicrosoft.WindowsMobile.Forms.dllを追加しておきます。 Microsoft.WindowsMobile.Forms名前空間の SelectPictureDialog クラスを利用する事で簡単に静止画や動画を選択する事が出来ます。SelectPictureDialogは、そのままの名前の通り、選択が…

Windows Mobile 6.5.3 のcoredll.libに含まれるWindowsAPIの関数一覧

緊急対応で必要になったのでダンプしてみました。 cd C:\Program Files\Windows Mobile 6.5.3 DTK\PocketPC\Lib\Armv4i link /dump /exports coredll.lib >c:\wm653coredll.txt長すぎるので以下省略。 Microsoft (R) COFF/PE Dumper Version 9.00.21022.08 C…

Windows Phone 特選アプリ 100 - Microsoft Windows Phone

Windows Phone (日本)なんか選ばれていた。。。登録・ログイン関係のバグの原因は、ログインIDにレジストリに暗号化した設定を持ってるからです。使っているネイティブ関数で取得できる値が、うちのEMONSTER以外とは取得値が違っています。特に東芝系の端末(…

pixiqの新バージョン、とりあえず一通り動く形にしたい……

ずいぶん前の2月頃に新UIについて考えていた状態で止まっていました。連載の原稿が終わって一息付いたので、バーッとそれっぽいUIをこしらえてみました。殆ど前回からのコードから変わっていませんが、仕事からのフィードバックでデザイン的な考え方が少し変…

Windows Embedded Handheldが発表されていました

2010年6月17日、Microsoftはビジネス向けのモバイルOSとして「Windows Embedded Handheld」を発表しました。越川さんがWindows Phone 7の発表の際に、「Windows Mobile 6.5にも今後投資していく」と仰っていたのは、これを見据えての発言だったんですね。Win…

Windows Mobile(.NET Compact Framework)でフォーカスが当たったメッセージ(WM_SETFORCUS) を拾う

.NET Compact Frameworkは、デスクトップ.NET Frameworkのサブセットです。拾えるイベントがものすごく少ないですので、Windows Messageによる処理を行なえるようにしました。例として一般的なWM_PAINTだと説明が大変なので、Buttonクラスを継承したCustomBu…

とある実装

http://msdn.microsoft.com/ja-jp/library/cc411203.aspxSetWindowLongと、 [Flags] public enum WS : uint { WS_OVERLAPPED = 0x00000000, WS_POPUP = 0x80000000, WS_CHILD = 0x40000000, WS_MINIMIZE = 0x20000000, WS_VISIBLE = 0x10000000, WS_DISABLED…

Windows Mobile(.NET Compact Framework)でグラデーション描画をおこなう

Windows Mobileの、さらに.NET Compact Frameworkを使って、グラデーションをするのには工夫が必要です。工夫って言ってもよくあるP/Invokeを使います。グラデーションする為には、.NET Compact Frameworkからは使えませんので、ネイティブのGradientFill関…

.NET CF on Symbianを試みるもMS本社に潰された話

JAVAが携帯の標準になる前に、.NETコンパクト・フレームワークをSymbianの上に移植して携帯アプリケーション普及とサービスの拡充をWindows環境から支援すると起案、ドコモ(夏野さん)とアクセス(鎌田さん)と合意、MSR中国で移植終了するもMS本社に潰され…

Windows Mobileで日本語のショートカットを表示するスマートデバイスCABを作成する

Windows Mobile実践プログラミング with .NET Compact Framework作者: 清野竜矢,伊藤伸裕,和田健司出版社/メーカー: 毎日コミュニケーションズ発売日: 2009/10/23メディア: 単行本(ソフトカバー)購入: 1人 クリック: 61回この商品を含むブログ (9件) を見…

SQL Server Compact 3.5がインストールされていなくても、SQL Server Compact 3.5を使う方法

「System.Data.SqlServerCe」を参照すれば使える様になる「SQL Server Compact 3.5」ですが、端末メーカーによってはあらかじめインストールされていない端末があるようです。ひょっとしたらインストールされていないのが通常で、Visual Studioをインストー…

Evernote APIをラップするC#のライブラリEvernoteSharp

Evernoteの容量が月30MBじゃ足りなくなってきたので、プレミアム会員になろうかと検討しています(併せてpixivのプレミアム会員を辞めようかと……)。でもランキング情報は保持しておきたいので、pivixのランキングデータをEvernoteに取り込めないかと考え中。…

C#で位置情報を日本測地系から世界測地系(WGS84)に変換する

緯度経度の2点間の直線距離を求める方法については、「C#で緯度経度の2点間の直線距離を求める - 酢ろぐ!」をごらんください。GPSの位置情報には日本独自の「日本測地系」と「世界測地系(WGS84)」があります。私の使っているデバイスは大抵海外メーカー製で…

Windows Mobileで「FakeGPS」を使ってGPSから位置情報を取得する

Windows Mobile 6 SDK には、FakeGPS というユーティリティ アプリケーションが含まれています。 FakeGPS を利用すると、ダミーのGPS データを使ってアプリケーションをテストすることができます。 FakeGPS のインストールと FakeGPS を使用したテストの詳細…

Windows Mobile(.NET Compact Framework)でPictureBoxに簡単に画像を表示する

今回はPictureBoxに対して画像を表示します。PictureBox.Imageプロパティを利用する事で簡単に画像の表示が出来ます。 最初に、buttonとpictureBoxコントロールを適当な位置に貼り付けておいてください。 VB.NET Private Sub Button1_Click(ByVal sender As …

ClearTypeを有効にする

デスクトップ版の.NET FrameworkからClearTypeでテキストの描画は簡単に出来るのですが、.NET Compact FrameworkからClearTypeを有効にしたフォントを扱う為には、CreateFontIndirect関数で作ったHFontからFontオブジェクトを作る必要があります。 CreateFon…

Windows Mobile(.NET Compact Framework)で連絡先を取得する

.NET Compact Frameworkからは、Microsoft.WindowsMobile.PocketOutlook名前空間のOutlookクラスを使用することで、Outlook Mobileで記録した連絡先や予定、仕事などのプライベートな情報へ簡単にアクセスする事が出来ます。 連絡先を取得する ここでは、連…

Windows Mobile(.NET Compact Framework)でフォームを全画面表示する

Windows Mobileは基本的に携帯端末(モバイル)用のOSであり、近年高解像度の液晶ディスプレイが搭載された端末も発売されていますが、デスクトップに比べるとまだまだ小さいです。限られた表示領域を最大限に大きく使ってみたいと思います。 本記事では、フォ…

Windows Mobile(.NET Compact Framework)で連絡先を追加する

.NET Compact Frameworkからは、Microsoft.WindowsMobile.PocketOutlook名前空間のOutlookクラスを使用することで、Outlook Mobileで記録した連絡先や予定、仕事などのプライベートな情報へ簡単にアクセスする事ができます。 連絡先を追加する ここでは、連…

Windows Mobile(.NET Compact Framework)でWeb上のデータをByte配列で取得する

普段はWebから取得した画像ファイルを表示する場合は、Streamをコンストラクタ引数にしてBitmapオブジェクトを生成するんだけど、画像の保存とBitmapオブジェクトの生成の両方をしたかったので読み込んだストリームを一旦Byte配列として持たせて、上位層でこ…

Windows Mobileで文字列を区切り文字で分割する/区切り文字を付けて結合する

特に.NET Compact Framework向けっていう訳ではないけど、ちょっとコードを書いたのでまとめてみた。 文字列を区切り文字で分割する 「,」で区切られた文字列(string型)を分割してList型のリストを生成する。 以下にサンプルコードを示す。 string str = "犬…

Windows Mobile(.NET Compact Framework)でenumに文字列の属性を付与

enumに文字列の属性を付けてみました。画面IDをenumで持たせているので、enumに画面名を持たせられたら楽だなぁと思ったのがきっかけです。ほとんどいげ太さんのコードを流用しています。.NET Compact Frameworkからの利用だったので、EnumクラスのGetNameメ…

タグ分けしました。

今までWindows MobileとWindows Phoneがごっちゃになっていました。Windows MobileとWindows Phone間で互換性がないので分割してみました。 Windows Phone Classic(Windows Mobile 6.xまでのもの)について http://d.hatena.ne.jp/ch3cooh393/searchdiary?wor…

Windows Mobileで対応しているグラデーションについて

Windows Mobileで対応しているグラデーションについて。GradientFill function (Windows)残念ながらCEでは、GRADIENT_FILL_TRIANGLEはサポートされていないので、上から下への(垂直)グラデーション、もしくは左から右への(平行)グラデーションのみの対応にな…

第9回 Windows phoneで画像エフェクトアプリを作ろう!(2)

告知を忘れていました。gihyo.jpでの連載第9回目が掲載されました。第9回 Windows phoneで画像エフェクトアプリを作ろう!(2)|gihyo.jp … 技術評論社

あとでみる

http://www.codeproject.com/KB/mobile/DeepCast.aspx

.NET Compact Frameworkで描画周りの処理を行う場合に知っておくと良いこと

.NET Compact Frameworkで描画周りの処理を行う場合に知っておくと良いMSDNのページを思い出しました。これです。.NET Compact Framework でのグラフィックスをプログラミングします。この中でも以下の3つは守らないと描画が乱れたりと、ひどい事になってし…

Microsoft .NET Compact Framework ベースのイメージ ボタンを作成する方法

Windows Mobileでイケてる*1UIを作ろうとすると、拡張コントロールを作ったり自前描画したり、オーナードローする必要があります。Microsoft .NET Compact Framework ベースのイメージ ボタンを作成する方法これはイケてるWindows Mobileアプリを作らないと…

Windows Mobileでアプリがインストールされているディレクトリを取得する

Windows Mobileは本体メモリとかMicroSD上とか色んな所にインストールする事が可能です。pixiq lite(仮名)からpixiqの画像キャッシュディレクトリを検索したい場合に、既にpixiqがインストールされているか調べようと思いました。 アプリケーションがインス…

Windows Mobile(.NET Compact Framework)でタスクバーのサイズを取得する

プライマリディスプレイの画面イメージをキャプチャーすると、タスクバーが含まれた状態でキャプチャーされてしまいます。タスクバー領域(オレンジで囲んだ部分)を取り除く為に、タスクバーの矩形情報を取得する方法を調べてみました。 [System.Runtime.Inte…

オーナードローバリバリのリストボックスの高速化・・・

倒れそうです。OnMouseMoveメソッドで設定したScrollWindowExの値が、OnPaintメソッドのPaintEventArgsに反映されなくてどうしようか悩み中。

Windows MobileでのScrollWindowEx関数を使ったときの駄目な例

OnMouseMoveメソッドで移動した量だけをスクロールさせたコード。でも条件が仕様上使えなさげ。 Rectangle clip; if (_scrollHeightEx > 0) { // 下方向へスクロール clip = new Rectangle(0, 0, this.Width - ScrollBarWidth, this.Height - Math.Abs(_scro…