★【 My Biz Blog 】★

興味のあるビジネス情報を伝えていきます♪
(IoT,Azure,Windows 10, etc...)

リテールテックJAPAN 2014

2014-01-31 18:16:18 | Windows Embedded関連
3/4~3/7にかけて、東京ビッグサイトで開催されるリテールテックJAPANに、

Microsoftが参加するそうです。

リテールテックJAPANの公式HPはこちら


Microsoft社は、インテル社ブース内に出展するようですね。


リテールテックは、流通・小売業向け情報システムに関する国内最大の展示会です。



3/6に同じく東京ビッグサイト 会議棟1階で、

OPOS技術協議会、.NET流通システム協議会が主催で開催するセミナー

『スマーター・リテイリング・フォーラム』では、

Microsoft社のWindows Embeddedやクラウドの担当者が

登壇するそうです。

詳細はこちら



リテール分野では

特にWindows Embedded POSReady(Windows Embedded Industryの前身)が

POS端末に多く搭載されています。

ハンディ端末もWindows Embedded CE / Compact搭載のものがあります。


最近はどんな製品が開発されているのか、

見に行ってみようと思っています。


WEC2013用ツール(2) スタートアップツール

2014-01-29 12:33:35 | Windows Embedded CE/Compact
これも以前から提供されていたんですが、

去年の中旬にはWEC2013対応してたんですね。

AutoLaunch for Windows Embedded Compact



WEC起動時に自動的にアプリを起動するだけであれば、

レジストリファイルにアプリ名と

起動する際の依存関係(どのプロセス起動後にアプリを起動するかを表す)のIDを

記述するだけで可能ですが、

AutoLaunchはDelayも設定することが可能です。

WEC2013 on VMWareは可能か?(3)

2014-01-27 00:45:15 | Windows Embedded CE/Compact
今回からはWCELDRの作り方を説明していきます。


WCELDRはPCアーキテクチャ上でWEC2013のOSイメージをブートする

ブートローダです。

ソースコードは以下のフォルダに提供されています。

C:\WINCE800\platform\CEPC\src\boot



なお、前回の記事で、WEC2013のCEPC用のブートローダは

WCELDRのみ提供されていると記載しましたが、

いちおうLoadCEPCとBIOSLoaderのソースコードは

提供されていましたー。

ソースの場所は、

C:\WINCE800\platform\CEPC\src\retired\bootloader


フォルダ名が「retired」ということで(笑)、

もうサポートしないということなんでしょう・・・。



それはさておき、

まずはWCELDRのビルド方法です。

CEPCのBSPを使用したOSイメージのプロジェクトを

VS2012で開いている状態で、

[Build]メニューから[Open Release Directory in Build Window]を選択してください。




以下のようにコマンドプロンプトが表示されます。




カレントディレクトリは%_FLATRELEASEDIR%となっているので、

cd C:\WINCE800\platform\CEPC\src\bootと入力し、

カレントディレクトリをWCELDRフォルダに移動します。


その後、buildと入力してください。

WCELDRのビルドが行われます。


ビルドが完了すると、%_FLATRELEASEDIR%内に

WCELDRのバイナリが作成されています。


WCELDRのバイナリですが、

実は2種類作成されます。

一つはwceldrSで、もうひとつはwceldrCです。

拡張子はついていません。


Sがついている方が、シリアル出力版です。

Cがついている方が、コンソール出力版です。

⇒コンソール出力版では、デバイスのディスプレイ上に

 メニュー等が表示されます。




次回は、これをブートメディアに組み込む方法を解説します。

C++ REST SDKをWECで(2)

2014-01-24 22:15:08 | Windows Embedded CE/Compact
REST SDKのWECへの移植の途中経過。

移植、難しいですね・・・。



WECはWin32APIのサブセット提供であり、

Windows OSのライブラリセットが一部提供されていません。

Crypt系のAPIはあったけど、

WinHTTP APIあたりが入っていないので、

肝心の通信回りを自作してやる必要がありそうな気が・・・。

⇒適当に作ったSDKの問題で、ヘッダやLibが入っていないのかもしれませんが。

 というか、REST SDKを作るのに必要なLibやらヘッダを含む

 WECのコンポーネントが何かを調べておかないと・・・。



ベースとするプロジェクトは、

もしかするとXP用のcasablanca110.xp.vcxprojをベースにした方が、

APIセットとしては近いのかな・・・。

⇒まだXP版は正式に対応しているわけではないみたいなので、

 もう少し待つ必要があるかな。



あと、SDKのプロジェクトの文字コードの設定がなんか怪しいような・・・

UNICODEを使用する設定なのに、

プロジェクトに_MBCSの定義が入ってたり・・・。


WEC2013 on VMWareは可能か?(2)

2014-01-21 23:23:20 | Windows Embedded CE/Compact
というわけで、VMWare上でCEを起動させることを例題に、

PCアーキテクチャでCEをブートさせるための

WCELDRモジュール カスタマイズ方法を解説しようかと。

⇒どっちが本題かは微妙なところですが(笑)。

 このシリーズも、そのうちステップガイドにしますかね。



WCELDRについては、以下のMicrosoft社のBlogに

とてもわかりやすい解説が記載されています。

Understanding CEPC Boot Sequence in Windows Embedded Compact 7 Part2

もちろん・・・英語ですが(汗)。

上記の解説記事は、Windows Embedded Compact 7について書かれていますが、

Windows Embedded Compact 2013でもほぼ同様です。


ですので、これをベースに解説したいと思います。



■PCアーキテクチャ用のWEC OSイメージのブート方法について

今回説明するのは、WCELDRというローダですが、

WEC7までは、PCアーキテクチャでWECのOSイメージをブートさせる方法が、

3種類提供されていました。


 ・LoadCEPC(DOSアプリ)

 ・BIOSLoader

 ・WCELDR


私がセミナーのデモでよく使用しているeBox-4300というミニPCでは、

内部のROMにLoadCEPCが入っていて、

 BIOS起動⇒DOS起動⇒LoadCEPCがWECのOSイメージをロード

という手順でOSをブートしていました。

ブートデバイスを作りやすいのですが、

DOSを起動するというフェーズが入るため、起動に少し時間がかかります。


なお、WCELDR以外の二つのローダですが、

Windows Embedded Compact 2013からは付属していません。

ですので、基本的にはこのWCELDRを使用して、WEC2013のOSイメージをブートさせます。




WEC2013 on VMWareは可能か?(1)

2014-01-16 19:10:00 | Windows Embedded CE/Compact
以前、WEC2013の動作確認用仮想環境についてで、

VMWare Player上でWEC2013を起動できなかった・・・という記事を書きました。



あれから手が空いたときに少しずつ調べているのですが、

まず、VMWare Playerがエミュレートしている

イーサネットコントローラは、AMD Am79C970Aだそうで。



このチップ自体はもうディスコンみたいですけどね。



また別途記事を書こうと思っていますが、

CEPC用に提供されているブートローダ(WCELDR)は、

KITL用に提供されているイーサネットのライブラリを

流用することができます。


で、KITL用にAM79C973用のライブラリが提供されているので、

これを使うようWCELDRをビルドすればいいんじゃないかと

考えています。

※BSP Porting Guide for Windows Embedded Compact 7.pdfによると、

 WCE6.0まで提供されていたAM79C970用のライブラリは

 AM79C973に新しくリプレースされたそうです。


※KITL用に提供されているEthernetコントローラのライブラリは、

 http://msdn.microsoft.com/en-us/library/ee478866.aspx

 を参照ください。



WCELDRのカスタムビルド方法と合わせて、

結果を後日書きます・・・が、いつ手が空くことやら・・・(-_-;)




C++ REST SDKをWECで

2014-01-13 13:42:23 | Windows Embedded CE/Compact
WindowsおよびLinuxで使用できる、

C++で書かれたREST SDKがMicrosoftから公開されました。

コード名「Casablanca」というプロジェクトで、

Apache 2.0ライセンスのもとでオープンソースとして

CodePlexにて提供されています。

⇒サイトはこちら

コードはC++11で書かれています。



昨今のクラウドサービスをはじめとするWebサービスでは、

多くはREST APIをサポートしています。


これまでWCFといったマネージドコード用のライブラリでは、

比較的容易にクラウドサービスに接続できていましたが、

ネイディブコードでクラウドサービスにアクセスしようと思うと、

便利なライブラリって無かったように思います。



Windows Embedded Compactでは、WCFのサポートはありました。

しかし、リッチUIを開発するためのXAML for Windows Embeddedは、

コードビハインドがネイティブ言語(C++)なので、直接WCFを使用できず、

クラウド連携するアプリを作成するには、少なからず手間がかかります。


C++ REST SDKをWindows Embedded Compactで使用できるようになれば、

クラウド連携アプリの開発がかなり楽になるのかな。


幸いにして、WEC2013からC++11に対応しているので、

何とかWEC2013のアプリ用プロジェクトに移植できるのでは・・・

と思っています。


すでにどこかで誰かチャレンジしていないか、

探してはいるんですけど・・・ぱっと見つからないので、

現在ソースコードをダウンロードして作業中。



片手間作業なので・・・いつできあがることやら・・・。