開発ブログ - 最新エントリー

VMWare WorkStation Pro でディスクを拡張しようとしたが、以下のエラーが出る

呼び出された機能は部分的なチェーンでは実行できません。親仮想ディスクを開いてください。

どうやらスナップショットの削除がうまくいかずに
スナップショットがあるかのように見えているらしい
たしかにフォルダを眺めると
vmdk ファイルがいくつか残っている

いったんスナップショットの作成を行って
すぐにスナップショットの削除を行って、無事にクリーンアップされてから
ディスクの拡張を行ったらうまくできた!

よかったー
  • コメント (0)
  • トラックバック (0)
とりあえず繋いじゃう

読み取り専用になっている

ターミナルで

% sudo mount

すると

/dev/diskxxxx on /Volumes/USB_SSD (ntfs, local, nodev, nosuid, read-only, ...

的なものが出てくる
(USB_SSD の場所はたぶんディスクに付けた名前?)

finder でマウントを解除
ターミナルで

% sudo mkdir /Volumes/USB_SSD_RW
% sudo mount -t ntfs -o nobrowse,rw /dev/diskxxx /Volumes/USD_SSD_RW/
% ln -s /Volumes/USB_SSD_RW ~/

とすると自分のホームディレクトリに USB_SSD_RW とかできるので
そこを読み書きする

終わったら

% sudo umount /dev/diskxxx
% rm ~/USB_SSD_RW

とかする
(マウントポイント /Volumes/USB_SSD_RW は勝手に消される)


参考
https://qiita.com/amaebi/items/25471c4b494a252dfbde
  • コメント (0)
  • トラックバック (0)
XCode で開発しているときに
以前に使ったシミュレータが分からなくなってしまうことがある

一生懸命データ追加したのに、別のシミュレータ立ち上げてしまって、表示されないとか悲しい

という訳で、以前に使ったシミュレータのデバイスとバージョンを調べたい


cd ~/Library/Developer/CoreSimulator/Devices
find . -name '*.app' -print | awk -F/ '{print $2,$8}'


こうすると、シミュレータで動かしたアプリケーションの一覧とそのデバイス用のフォルダが得られる
(*.app の部分を具体的なアプリケーションの名前にすれば、そのアプリケーションを動かしたシミュレータのフォルダだけが表示される)

xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx foobar.app


判明したdeviceフォルダの中の device.plist を見る

cat xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/device.plist
  • コメント (0)
  • トラックバック (0)

python cgi troubleshoot

カテゴリ : 
技術メモ » Python
執筆 : 
2017/10/28
python cgi でのトラブルシューティング
環境変数の状態などを確認したい場合に
以下を env.cgi として保存し .htaccess でアクセスさせる

...続きを読む

  • コメント (0)
  • トラックバック (0)

python 開発環境

カテゴリ : 
技術メモ » Python
執筆 : 
2017/10/28
python で開発を行う場合に、virtualenv を使うと
固有なパッケージなどを設定した仮想環境を作ることができる

...続きを読む

  • コメント (0)
  • トラックバック (0)

coreserver (xrea) でpython

カテゴリ : 
技術メモ » Python
執筆 : 
2017/10/27
.htaccess に以下を追加
AddHandler cgi-script .py

.py は cgiスクリプトとして実行
#! には 制限なし?
#!/virtual/username/bin/python
などもOK

ヘッダを出力しないと 500 エラーになる
たとえば以下のようなものを出力しておく
print 'Content-type: text/html; charset=UTF-8\n'

RewriteBase は public_html 以下を書く
public_html/test1 なら

RewriteBase /test1/


ちなみに coreserver では .htaccess に
Options
を書くとInternal Server Errorになる?
  • コメント (0)
  • トラックバック (0)

swift で protocol を dict のキーにしたい

カテゴリ : 
技術メモ » swift
執筆 : 
2017/8/25
swift3

swift で protocol を dict のキーにしたい

swift の Dictionary のキーは Hashable でなければならない
そこで protocol に Hashable をつけてみる


protocol Foo: Hashable {
  var a: Int { get }
}

var v: [Foo: Int] = [:]
v[f] = 1


しかしこれでは
Using 'Foo' as a concrete type conforming to protocol 'Hashable' is not supported
Protocol 'Foo' can only be used as a generic constraint because it has Self or associated type requirements

などとエラーになる
そこで ObjectIdentifier を使って

var v: [ObectIdentifier: Int] = [:]
v[ObjectIdentifier(f)] = 1

とするが
Cannot invoke initialize for type 'ObjectIdentifier' with an argument list of type '(Foo)'
となる
おそらく protocol は struct で実装することができ、
ObjectIdentifier は struct などには使えないからダメなのだろう
そこで Foo を class に限定する

protocol Foo: class {
  var a: Int { get }
}

var v: [ObjectIdentifier: Int] = [:]
v[ObjectIdentifier(f)] = 1


これで完成!
  • コメント (0)
  • トラックバック (0)

iOS アプリから外部ディスプレイへの出力

カテゴリ : 
技術メモ » swift
執筆 : 
2017/8/22
[UIScreen screens] count] で画面数を取得?
http://do-gugan.com/~furuta/archives/2012/01/ios_4.html

http://blog.syuhari.jp/archives/2251

swiftだと自動的にreleaseされてしまうので
UIWindow のインスタンスは保持しておかなければダメ!
  • コメント (0)
  • トラックバック (0)

swift coredata メソッド名に注意!

カテゴリ : 
技術メモ » swift
執筆 : 
2017/8/22
長いこと原因が分からなかったトラブルが
ようやくわかった!!!

swift で CoreData を使っていた
元々は ObjectiveC で書かれていたものを swift に書き直していたのだが
なぜか CoreData で relationship しているプロパティに代入をする部分で

NSInvalidArgumentException reason: [NSSet intersectsSet:]: set argument is not an NSSet

というエラーが発生していたのだった

原因は、自分で作成したメソッド名にあった
プロパティが members だとして
members にアクセスすると [Member]として取得できないので
func getMembers() -> [Member]
というメソッドを作成して、それを使っていたのだった
どうも、swift では getXxxxx というアクセッサが生成されているのか、
members にアクセスしたときに、getMembers() が呼ばれてしまい
そのために members が NSSet としてアクセスできなくなったためのようだ

という訳で、プロパティ名に get なんちゃら というようなメソッドを
無意識に使ってしまうのは、とても危険ということ
ちなみに、メソッド名を考えるのが面倒だったので
_getXxxxx としたら、これもダメだったみたい
全然ちがう名前を付けなければダメ
  • コメント (0)
  • トラックバック (0)

Frame には要注意

カテゴリ : 
技術メモ » Delphi » VCL
執筆 : 
2017/5/29
VCL XE7

LiveBindings で CustomFormat を設定しても
一向に反映されない
いや、デザインモードでは見えるのだが
実行してみると反映されていない

LiveBindings のバグなのかと思って、色々と試してみた
全然わからない

結局、フレームのせいだった
フレームで、grid と PrototypeBindSource を設定して
そのフレームをフォームに張り付けていたのだが
どうもメインのフォームに張り付けたフレームで
IfThen などのCustomFormat が削除されてしまうのだ
何度やってもダメ
Bind 関係の uses が足りないせいか?と思って
色々追加するが結局ムダ

張り付けて一回目のコンパイルはOKなのに
その後、すでにデザインモードで動作しなくなっている!!
そして再度コンパイルすると当然ダメ!
これひどい
  • コメント (0)
  • トラックバック (0)
プロダクツ

開発ブログ

Link

AD