白峯のソース

IT なことのメモなど

OpenOffice.org Calc JavaScript マクロ

f:id:hakuhou-src:20200518115615p:plain
OpenOffice.org Calc をもう10年以上使い続けている。
もちろん Microsoft Excelも使うし、なんでも無料が良いというわけではないが、気軽に Windows にも Mac にもインストールして実行できるのはツールとして優れている。

個人的な使い方の中心は、ゲームのアイテムやら敵やらのデータ作成ツールがメイン。
そこでは、マクロが欠かせない。
しかし、OpenOffice.orgJavaScript マクロは特殊性が強い。
ネット上の情報も少なく、Apache のリファレンスとの睨めっこの時間が長くかかる。
また、JavaScript マクロといいながらも、どちらかというと Java な Uno も癖が強い。(JavaScript の常識が通用しない。)
「Macroの杜(JavaScript編) 」さんにはお世話になりっぱなしである。

続きを読む

可変長バイト列表現

セーブデータ、BLE等通信処理、データベース…などなど、現在でも数値をなるべく小さなバイト列で扱いたいときはあるもの。
そんな中で、「たいていは小さい自然数なんだけど、たまに大きな値もある」というときに数値の可変長バイト列表現というのは便利。

続きを読む

Bootcamp領域を縮小する

Macbook Pro を買った。
iOS アプリの開発をするためのみだが、Windows を 20 年以上使ってきたため、Windows は必須である。
そこで、Bootcamp を導入。
が、案の定、行ったり来たりが面倒くさくなり、Parallels を導入。
意外と快適なのだが、いかんせん、開発で使うには遅い。
そして、MacAndroid Studio やら Visual Studio やらをインストールする。
これが案外と、Mac の方が開発時のセットアップ等が楽な局面が多々あり(Windows が焦って Unix シェルに対応するのも頷ける…)、しかも、キーボードもカスタマイズしまくって(OS はカスタマイズしない派なのだが…)、Mac の快適度が増した。
結果的に、資料やデータは Windows に、開発や画像編集は Mac に、というスタイルに落ち着いた。

 

だが、困ったことに、当初メインだった Windows の Bootcamp 領域が大きすぎる。
そこで、Bootcamp を Parallels にインポートして、Bootcamp 領域を解放しようと思ったが、Parallels(バージョン15.1.2) のバグなのかうまくいかない。
(インポートが数秒で終了し、Windows を起動しようとすると、BIOS 画面みたいなやつや、ブルー画面で「回復」「エラーコード: 0xc0000225」が出てしまう。どうやら、ろくにファイルをコピーできていないらしい。だいたい、インポート時の [名前と場所]画面で出てくる「XXMB は Boot Camp のインポートに使用されます」のサイズが小さすぎる…)

 

そこで、当初確保した Bootcamp 領域を強引に縮小することにした。
以下が、上手く行った手順である。

 

(0) Windows のバックアップを取る(推奨)
(1) Bootcamp で Windows を起動し、MiniTool Partition Wizard をインストールし、起動
(2) [ディスク&パーティションの管理]から BOOTCAMP 領域を[移動/サイズ変更]で、新しいサイズと位置設定.この際、ディスクの末尾に来るように移動させる
(3) 再起動し、パーティションを実移動
(4) 再び再起動し、MacOS を起動
(5) Finder、[アプリケーション]→[ユーティリティ]→[ディスクユーティリティ]を起動
(6) 左上のアイコンから[すべてのデバイスを表示]
(7) 内蔵 SSD を選択し、[パーティション作成]
(8) 円グラフの空き領域を選択し、[-](マイナス)ボタンを押し、[適用]

 

その後、MiniTool Partition Wizard で領域を見ると、未使用領域は未使用のままだが、「APFS ってそういうもんなんだろう」てことになっている。
実際、「Macintosh HD」は Finder から見てもサイズ大きくなっているし。
また、(2) で BOOTCAMP 領域を末尾に移動したが、APFS は飛び地であっても大丈夫、とかあるかも知れない。
が、おっさんなので気にしないことにする。

 

なお、おっさんなので、Windows のツールは「窓の杜からしかインストールしない。
しかし今回、AVAST アンチウイルスを MiniTool が勝手にインストールしやがりましたので、速攻アンインストールさせていただいた。
でも、そんな Windows の無法地帯っぷりが好き。

WiMax モバイルルーター WX04 を固定回線の代替にする(という遊び)

f:id:hakuhou-src:20190303105839j:plain

はじめに

 

※当記事は、なんやかんやで WiMax sugeee→こっから登録するとお得だよ、のアフィリエイトではありません

 

自宅Bのソフトバンク光の契約が満了した。せっかくなので、しばらくデータ専用SIMで運用してみることにする。

屋内配線は残したが、どうせ転用扱いにはならず新規の工事費がかかるからだ。

 

筆者は、平日は自宅A、休日は自宅Bにいる。

自宅Aは家の造りが特殊で大工事をしないと光回線を引けないことが確定し(エアコン穴も、無い)、しばらくADSL運用が決定した。

最近、ADSL人口が激減したのか、意外とADSLが速くてお得なのだが、しょせんは2023年1月末までの栄光。やはり、長期にはしっかりとした回線を用意しておきたい。

ちなみに、方針としては、決定的にケチりたいわけではないが、無駄は無駄。平日、Webカメラnasneしか駆動しない自宅Bに光回線はいかにも無駄である。

 

そこで、データSIMだ。5Gには固定回線も無線化される(かも)と言われている。

会社は快適な無線LANが設置されており、ソフトウェアアップデートやらは会社でやれば良い。

また、動画もあまり観ない。それに、観たい動画は会社でダウンロードしておくという手もあるだろう。

 

データSIMの選定は、調べに調べた挙句、結局無難(?)なIIJmioになった。

当初、b-mobileの190PadSIM予定だったが、使っただけ課金の段階定額プランは節約意識が強く働く。

むしろ、ガンガン使っても余るのが理想だ。

無駄は省きたいが、窮屈な思いはしたくないのだ。

 

IIJmioになったのは、ヨドバシカメラの店員さんからのオススメだったからなのだが、たまたま初期費1円とギガ増量キャンペーをやっており、試しやすかった。

だが、意外と1,500円や2,500円プランが選びやすく、なかなか気に入っている。

現在は、ファミリーシェアプラン12GB月2,500円で、Docomo SIM × 1 と au SIM × 2で利用している。ひとつは自宅A、ひとつは自宅B、ひとつはDual SIM Androidの#2 SIM(バックアップ)として使う感じ。

 

次はルーター探しだ。

自宅Bは既に持っていたNEC MR04LNとクレードルで固定回線代わりにしており、不都合は感じていない。

自宅AはADSLが通っているが、たまに高速モードが欲しくなるので、こちらも物理切替で利用する形でモバイルルーターが欲しい。

最新機種である必要はないので中古で安いMR04LNとクレードルをまた買おうかと思ったが、同じのを2台買うのもつまらないし、中古とはいえ10,000円超えは確実だ。

そこで、人柱覚悟で別の機種を探すことにした。

 

結果的に、自宅A用ルーターとして、NEC WX04というWiMaxルーターに行きついた。クレードル付きで8,000円強であった。

おそらくこの場合、正攻法では中古4,000円ぐらいで買える Huawai Speed Wi-Fi HOME L01だろうが、いかにも通信傍受チップが入っていそうなフォルムのため国産品にした。

また、モバイル型にしておくと、持ち出して使うこともできる。

買った中古のWX04は【UQWiMAX版】とあった。

WX03まではau LTEは使えないそうだが、WX04は「ハイスピードプラスエリアモード」が使え、au LTE帯も使える。

ネットでざっと調べると、WX04はSIMフリーで、UQモバイルのSIMも使えるとの情報があった。

IIJmioau SIMも使えるのではないかと踏んだのだ。

 

結果

 

前置きが長くなった。さっそく結果である。(試した順)

 

サービス 回線 プラン 合否
UQモバイル au データ高速プラン(3GB/month) ×
LINEモバイル Softbank LINEフリー(1GB/month)+ 音声
docomo docomo ビジネスベーシックシェアパック
+ カケホーダイライトプラン
FUJI Wifi Softbank SIMプラン (20GB/month)
IIJ mio au ファミリーシェアプラン(12GB/month)

 

最初、UQモバイルで使えなくてかなり焦った。「UIMカード未挿入または無効です。」と表示される。

初期不良を疑い返品まで考えたが、「クイック設定 Web」から「現在の情報」を見ると、電話番号は取れている。どうやら端子周りの物理的な不具合ではなさそうだ。

調べてみると、UQモバイルの「IMEI制限」なのではないかという説に至った。

そこで、LINEモバイル等を試したら問題なく使えたのである。

UQWiMAX版なのに?と思ったが、まぁ元は何処で売ってたかわからない中古だ。仕方あるまい。

ちなみに、docomoの△はSIMは認識出来るがインターネットには接続できなかった。WX04のAPN設定画面で、spmode.ne.jpのユーザー名とパスワードが空にできないことによるものだが、回避方法は他にもあったかもしれない。

 

まとめ

 

なんにせよ、初期不良でなくホッと一安心である。使用感も今のところ良好である。(ネットでは散々言われているが…。)

結局、ソフトウェア的には同じNECというところもあり、MR04LNに酷似しており、お試し感は薄い(笑)

速度はそれなりだが、時にADSLより遅い(笑)

…が、この辺りは、昨今のトラフィック事情から考えると仕方ないだろう。

ちなみに、ソフトバンク光もそんなに速くなかった(笑)

自宅Bはそれなりに田舎である。「ハイスピードプラスエリアモード」の効果は高く、電波状況の改善につながっている。

 

結果、WX04は固定回線の代わりとして使えそうだ。

もちろん、周波数帯はauのそれであるため、docomo SIMやSoftbank SIMには向かない。

また、家族で使うなど、月の使用ギガ数が10GBを軽くオーバーする場合はやはり光回線が良いだろう。(筆者はぶっちゃけ、持ち歩き用のFUJI Wifiがあるのでどうとでもなるのだが、FUJI Wifiもときに遅いことがある。)

だがそれよりもなによりも、注意すべきはUQモバイルSIMだろう。

一見、同じau系なので、使えそうな印象があるし、そういう情報も多い。

WX04を使うなら、IIJmio au SIMがオススメである。(今回は未確認だが、おそらくmineo au SIMも使えるのではないか。)

ちなみに、IIJmioauデータSIMは黒色ではなくて白色だった。VoLTE対応SIMではなくてはいけない等の情報があったが、その辺りの真相は不明である…。

error MSB8020 や stdio.h が見つからないエラー

Visual Studio も色々なプラットフォームをサポートするようになって、便利になったと同時に複雑化した。

今までの Visual C++ ではあまり意識しなくてよかった SDKSDK のバージョンを意識しなくてはならなくなった。

 

以下のようなエラーが出たら…

 

・error MSB8020: Visual Studio 20XX (プラットフォーム ツールセット = 'vXXX') のビルド ツールが見つかりません。…

・'stdio.h':No such file or directory

 

プロジェクトのプロパティの[構成プロパティ]→[全般]をチェックしよう。

 

(1) [ターゲット プラットフォーム]は意図したものになっているか?

(2) [Windows SDK バージョン]はインストールされている SDK か?

(3) [プラットフォーム ツールセット]はインストールされているものになっているか?

※ Windows10 なら 10 向けに設定しちゃった方が無難

 ※ (2) と (3) はプルダウンからあるものを選択するのが無難

 

新規作成すればたいていは問題ないが以下の場合は注意が必要かも

・古いプロジェクトを継承している

・Git などで別の環境とソースを共有/管理している

SSD運用などで容量が足りない(無駄な SDK をインストールしたくない)

 

上記のエラー、あまりネットで情報が出てこなかったのでメモ的に記述

役に立ったら Star とかシェアとかお願いします

VAIO Z の SSD を 512GB に交換

f:id:hakuhou-src:20180514232221j:image

VAIO Z (VJZ1311)の SSD を 256GB から 512GB に換装した。

 

作業時間約3時間。ほとんどが待ち時間で、特につっかえたとこなし。

 

手順は以下の通り
1) Windows で回復ドライブ(リカバリディスク)をUSBメモリに作る
2) Windows 標準機能でシステムイメージを外付けHDDに作成
3) SSDを載せ換える → 分解方法は別に検索してね
4) 回復ドライブから、イメージでシステムを復元
5) Windows を起動し、diskpart で不要なパーティション(回復パーティション)を削除する
6) パーティションを最大まで拡張する

 

かかったお金
・512GB SSD (MZVKW512HMJP) 約¥31,000
・32GB USBメモリ 約¥2,000
・ポータブル 2.5インチ 1TB HDD 約¥6,300 → 後にデータバックアップディスクとしても流用

 

買うときのカスタマイズで SSD 512GB を選択すると、+¥65,000 だから、アリかな〜。
分解するときドキドキするけど。

 

あ、そういえば、組むときネジ2本足りなかった…。

Visual Studio 2017 の MSB4044 エラー

f:id:hakuhou-src:20170724154049j:plain

 

はじめに

 Visual Studio 2017 Community ではじめて「共有ライブラリ (Android, iOS)」プロジェクトを Windows から Mac 上でリモートビルドしようとしたら、

 error MSB4044: "GetRemoteClCompileItems" タスクは、必要なパラメーター "RemoteRootDirectory" に対して値を指定されていませんでした。

 というエラーが出て、うまくビルドできなかった。

意外と情報が少なくて困ったのでメモ的に書いておく。

 

iOS を使用してビルドするためのツールのインストールおよび構成

要するに、↑上記リンクの設定を正しくやればよいだけである。

 

ざっくり手順

(0) (Mac 上で…) Xcode, Visual Studio をインストールし、Xcode では iOS アプリをインストールできるようにしておく(証明書のインストールなど)

(1) Node.js をインストー

(2) vcremote をインストー
 ※ sudo npm install -g --unsafe-perm vcremote

(3) vcremote 起動
 ※ homebrew インストールする?なんちゃらを聞かれてたら y キーを押してインストー

(4) 表示された PIN コードをメモる

(5) (Windows 上で…) Visual Studio のメニュー バーで [ツール]、[オプション] 、[クロス プラットフォーム]、[C++]、[iOS]、[ペアリング] に必要な情報を入れる
 ※ 「ピン留めする」はおそらく誤訳で、上記 PIN コードを入れる

(6) ビルドする

 

おわりに

ずっとこれらの Xamarin だと思ってたが、よく考えたら C ソースコードだった、というのが誤解ポイントだった(笑)

天下のゲイツVisual Studio でも、この辺りの新しい、クロスプラットフォームなどの情報はまだまだ少ないですな。