アプリケーションを正しく起動できませんでした[0xC0000142]

【アプリケーションを正しく起動できませんでした(0xC0000142)。[OK]をクリックしてアプリケーションを閉じてください。】

というダイアログが表示されて、起動できない事象が発生した。

実行した内容としては、バッチファイルから複数のアプリケーション(自分で開発したプログラム)を起動するもの。各アプリケーションはそれぞれ、起動するとコンソールにいろいろと出力している。

結論としては、問題の原因となっていたのは、コマンドプロンプトのバッファサイズであった。

私は、コマンドプロンプトをもつアプリケーションを業務でよく使い、標準出力にログを出す。開発中は、ログに出力する量もかなり多いため、コマンドプロンプトのバッファサイズを大きくしていた。しかも、いちいちサイズを変更するのがめんどくさいため、「既定値」を大きくしていた。 f:id:banchome:20150728112201j:plain f:id:banchome:20150728111907j:plain ※ 小さくした後の画像。幅、高さともに"9999"を指定していた。

これを現状のサイズに変更したところ、問題は発生しなくなった。

おそらく、Windowsのシステムで使用しているバッファサイズをオーバーして、メモリ量を確保できなくなった、ということなのかと推察される。こんなこと(https://support.microsoft.com/ja-jp/kb/184802)と関係しているのか?

ともあれ、極端な設定はするべきではない、というお勉強だった。

『なぜか結果を出す人の理由』を読んで

野村監督が書いた本。

一読して、なるほどと思ったことも多いので、まずはメモ。(も一回見返して、まとめます。)

当たり前のことながら、努力の大切さを身にしみて感じました。そして自分の努力が足りないとも感じました。


  • まず、社会人として一人前になる
  • 真摯な姿勢。
  • 周りが協力したくなる人
  • 正しい努力に比例
  • 間違った努力とは  - 速い球を投げることを目標にする  - ホームランバッターを目指す
  • 正しい努力とは  - 弱点を埋める、補う  - 実戦に則した練習  - すぐには結果の見えないことを継続する
  • モチベーションをあげてあげることは大事
  • 気づかせてあげることが監督の仕事
  • 二流にはスランプはない。
  • 不本意なポジションにつかされた時こそチャンス

エディタ:Atomの導入

エディタとしてAtomを使い始めた。 今は秀丸をメインで使っているけれど、Windowsでしか使えない。 しかし、仕事でLinuxMacでプログラムする際に「秀丸っぽいのー・・・」といつもあれこれ探しているので、いろんな環境で使え、かつ、プログラミングに向いているもの、ということで、Atomにいきついた。

Atomは「GitHub製」とのこと。 「GitHub」は、サービスの名前であり、かつ、運営している会社の名前でもあるようだ。(サービス開始後に「GitHub社」としたもよう。詳しくは別途調べてください。)

目次

  • インストール/初期セットアップ (パッケージなど)
  • 設定の共有
  • 使用感

インストール/初期セットアップ (パッケージなど)

  • OSに応じてインストール.Windows,Macは簡単
  • Ubuntuにインストール

  • インストールパッケージ

    • sync-setting (複数PCでの設定の共有のため)
    • autocomplete-plus (補完してくれる。開発用に。)
    • autocomplete-python (Python予約語とかも補完してくれる。)
    • docblockr
    • file-icons (アイコンが見やすくなる)
    • japanese-menu (メニューの日本語化。localizeなんとかはWindowsでダメだった。)
    • japanese-wrap
    • minimap (長いファイル(ソースコード)を扱う場合にあるといい)
    • project-manager (いくつかの開発環境を切り替えるのにはいい)
    • project-view

設定の共有

atomの設定ファイルを共有することで、複数のPCで同じ設定で使用することができる。

DropBoxを使う方法もあったが、sync-settingパッケージを使って、Github経由で設定の共有ができるもよう。こっちのほうが、設定の更新毎に同期が発生しなくていい(らしい)。

(設定ファイル計はそんなに高頻度でアップデートされないだろうから、Dropboxでもいい気もする。)

以下を参考に共有設定 Atomの設定を共有・移行するときはsync-settingsがオススメ - Qiita

  1. Package機能から、sync-settingパッケージをインストール
  2. GistIDの設定 (Setting画面のsync-settingの設定)
  3. Githubのtokenを設定. (Setting画面のsync-settingの設定) Githubのtoken取得方法はこちら(Creating an access token for command-line use - User Documentation)

この方法で、設定の共有はできたが、Proxyの設定が必要な環境でUpload/Downloadを行うと "Uncaught SyntaxError: Unexpected token c"と言われて同期できない。

使用感

  • やや重い。特に起動が遅い。
  • Projectで開けるので、開発で使う場合、対象のファイルが一覧になって見やすい
  • 僕はあまりショートカットキーを使わないけど、keymapを編集できるのでよいのでは。Ctrl-Shift-Pでコマンドパレットが出るので、そこから探せばよさそう。
  • まだまだ使いこなしてないけれど、慣れれば慣れるほど使い勝手がよくなっていきそう。

USBカメラが使えなくなる

USBカメラが使えなくなる現象が発生したので、メモ。

同じことを試す人は、自己責任でお願いします。

  • 環境:Windows7 32bit
  • USBカメラ:Buffalo BSW3K03Hとかその他USBカメラも含めて
  • 現象:
    • カメラは認識される(デバイスマネージャーに"イメージングデバイス"として表示される)
    • ただし、デバイスマネージャの表示に「!」がついている
    • ドライバーの情報に「コード39」が表示される
    • windowsのイベントログ(アプリケーションログ)に、ドライバの読み込みに失敗した旨のログがある
  • 対処

USBカメラが使えなくならなかったPCにはLowerFiltersがなかったため、参考URLの内容をもとに試してみた。 USBカメラが使えなくなったPCも、もとは使えていたもよう。何かの操作をした際に、LowerFiltersが設定されたのだろうか。 そのあたり、よく仕組みが分からないだけに、若干怪しげな解決方法である。

なんとなくスタート

特に大きな理由があるわけではないが、仕事でも使うプログラミングのことや、ほんとに時々、勉強したり、考えたことを、何かしら残しておいてみようという試みで始めた。

これまでと同じく、途中ですぐやめるかもしれないが、それはそれで。