Xcode11、swiftでのButtonとの紐付けのやり方

Xcode11の使い方

MacでGUIアプリケーションを作りたくて、だいぶ前から考えてたんですがついに始めてみました。それでVisual studio MacとXcodeが今時標準みたいなものらしく、手打ちでボタン一つ一つをプログラミングしていくっていうものでもないようです。

それでVisual Studio一つとってみても複数の言語が扱える総合開発環境というやつで、この中から何言語を使ったらいいだろう、と2、3日調べ物をしていました。

とりあえずMacでGUIアプリケーションを作りたい、ってのとたぶんゆくゆくはiOSアプリにも手を出すか、など考えてswiftかobjective-cのどちらかに絞られました。C#っても良さそうだったんですがMac向けじゃなさそう、というかxcodeでサンプル作ろうとしても色々と出てこない、と、これはただ物を知らないせいかもしれませんが、環境として最初はswiftとxcodeって組み合わせでスタートしてみよっかなっと。やってくうちにC#にも手を出していくでしょう。

選ぶ言語はさておき、初歩の初歩でwindowにボタンを設置から、Google検索で出てくるのはxcode10とかインターフェースが最新でないものばかりで苦戦させられました。今使ってるのはxcode11.xxで、微妙にボタンが違うのです。

“Xcode11、swiftでのButtonとの紐付けのやり方” の続きを読む

テキストファイルの文字化けを元に戻せない状態にするやり方

ハッキング?やられた

という先日バグってなったのか何かしらの標的型攻撃なのかははっきりしないが、突如特定のフォルダ内の.txt拡張子がついたテキストファイルのみ文字化けして、さらには元に戻そうとバックアップしていたUSBメモリに入った.txtファイルまでPCに接続して数秒後一部文字化けしたファイルに変わってしまった。

PCのバグであるなら特定のフォルダ内のみではなく全体がなるはずではあるが、ブログ用に作っておいた.txtで何かちゃんと選んで文字化けさせたかの印象を持ったので何かしらどこぞの気に入らないと思ってる人物でもいて消してやろうと思ったのかもしれない。と、これはただの予想なので全然的外れなことかもしれないから保留。

とりあえずマルウウェアなのかスクリプトを動かしたのか1回しか実行されなかった。(気持ちは標的型攻撃を受けている、という前提で考える)

“テキストファイルの文字化けを元に戻せない状態にするやり方” の続きを読む

pythonのpyenv別バージョンのインストール失敗するのを直すやり方

$ pyenv install 3.7.4

python-build: use openssl@1.1 from homebrew
python-build: use readline from homebrew
Downloading Python-3.7.4.tar.xz…
-> https://www.python.org/ftp/python/3.7.4/Python-3.7.4.tar.xz
Installing Python-3.7.4…
python-build: use readline from homebrew
python-build: use zlib from xcode sdk

BUILD FAILED (OS X 10.14.6 using python-build 20180424)

Inspect or clean up the working tree at /var/folders/fs/yp3b5ks53mvbrgjjfm3s5q7w0000gp/T/python-build.20190915065206.97525
Results logged to /var/folders/fs/yp3b5ks53mvbrgjjfm3s5q7w0000gp/T/python-build.20190915065206.97525.log

“__Py_InitializeFromConfig”, referenced from:
_test_init_from_config in _testembed.o
_test_init_dev_mode in _testembed.o
_test_init_isolated in _testembed.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make: *** [Programs/_testembed] Error 1
make: *** Waiting for unfinished jobs….
make: *** [python.exe] Error 1

初回実行時のエラー内容。

“pythonのpyenv別バージョンのインストール失敗するのを直すやり方” の続きを読む

Seleniumのchromedriverがアップデートして起動しなくなったのを解消する方法

Seleniumが起動しなくなった場合の対処

Selenium::WebDriver::Error::SessionNotCreatedError: session not created: This version of ChromeDriver only supports Chrome version 74
(Driver info: chromedriver=74.0.3729.6 (255758eccf3d244491b8a1317aa76e1ce10d57e9-refs/branch-heads/3729@{#29}),platform=Mac OS X 10.14.5 x86_64)

エラー内容

Google Chromeが76に自動でアップデートしてました。それによりchromedriverが74のままだとSeleniumを使ったプログラムが動作しなくなってます。それでchromedriverをMac上でアップデートして使用可能にするやり方を書いておきます。

“Seleniumのchromedriverがアップデートして起動しなくなったのを解消する方法” の続きを読む

アルミホイルでWi-Fiの電波干渉を解消するDIY

無線LANを使ってる人は多いと思いますが、我が家で三日ほど前からWi-Fiの電波が急に途切れたり通信がものすごく遅くなったりしだしました。ついに無線ルーターの故障かー?と思い三日ほどどう動こうか悩んでいました。

最初原因を考えました。なんで急に、考えられるのは

ルーターが寿命、外部から接続されている、自宅内でいつの間にか家族が別の機器を接続しだした、他のルーターとの混線。

“アルミホイルでWi-Fiの電波干渉を解消するDIY” の続きを読む

zencart1.5.6aで、ドル表示から日本円表示にする方法

1.5.1ja版を入れると円まで全て日本語化されてますが、ちょっと当店自作のzencart1.5.6a日本語化パックはまだ甘く、ところどころ英語版のままになっています。それでそのままの設定でインストールすると米ドルで表示されたままですので、設定変更をしていきます。

zencartのドル表示を日本円にする方法
“zencart1.5.6aで、ドル表示から日本円表示にする方法” の続きを読む

Google chromeがupdateして74になりseleniumもupdateさせないと動作しなくなる不具合を修正

ブラウザ自動化ツールSelenium

chromeブラウザは自動でupdateされてしまうので、気がついたら動作しなくなってた。となります。症状はseleniumを使ったツールを起動すると、chromeが一瞬起動した直後にダウンします。修正方法は、最新のchromedriverに入れ替えるだけです。

Mac OSでの修正方法

ターミナルから

which chromedriver

/usr/local/bin/chromedriver

と前回自分で置いた場所が表示されます。

http://chromedriver.storage.googleapis.com/index.html

こちらから最新版のchromedriver_mac64.zipをダウンロードして

mv /usr/local/bin/chromedriver /usr/local/bin/chromedriver-old

今まで使用していたchromedriverの名前変更(最新版で動作しない場合すぐ戻せるよう削除しない

cp /ダウンロード先/chromedriver /usr/local/bin/chromedriver

で改めて今まで使っていたseleniumのツールを起動すると動作します。

Mac OS Xのbundle installでnokogiri 1.10.1のインストールエラーを解消

ruby gemのnokogiriはインストールでけっこうエラーが出るらしい。頻繁に使うgemでもあるので解消方法を書いておきます。今まで正常に使えていたのにrubyのバージョンを2.6.1にしたら動かなくなったのが原因です。

“Mac OS Xのbundle installでnokogiri 1.10.1のインストールエラーを解消” の続きを読む

Mac OS X でdsniffを入れた時つまづいたので解決方法をメモ

brew install dsniff

これではbrewや、brewのgitを最新にしても出てこなくて、githubからdsniffのソースを取得して自前でコンパイルしてやる必要があった。kali linuxなどでは一発で入るんだろうがMacだと微妙にパスの違いなどで一発ではコンパイルが通らなかったので、Macでdsniffを試してみたい場合、こうしたらうまくいったという方法を書いておきます。

dsniffとは、ARPスプーフィングなどのLAN内のパケットを収集したり、他の接続ユーザーの通信を傍受したりするツールです。一見攻撃ツールのような言い回しで危険な香りがしますが、ネットワーク関係のツールに過ぎません。攻撃だとかハッキングという言葉を使うことによって頭が中学生な人たちに魅力的に見えるようにしてるだけです。

“Mac OS X でdsniffを入れた時つまづいたので解決方法をメモ” の続きを読む

MacのFirefoxとSeleniumでheadless modeでRubyスクリプトを動作させる方法

headless modeというのはブラウザを表示させずに裏方で動作して結果のみを返してくる便利な機能です。Seleniumで作ったスクリプトが通常動作しているならheadlessで結果だけ返ってこいばいいわけです。

“MacのFirefoxとSeleniumでheadless modeでRubyスクリプトを動作させる方法” の続きを読む