趣味っと式 TOPページ
PHP(及びhtml,Javascript,css等)製のWEBアプリが、ローカルアプリのように動かせるようになる「PHP Desktop」。
インストールも不要で、ただGitHubからダウンロードしたものを解凍するだけで使えます、
先日そのPHP Desktopで、知人に依頼された業務用アプリを作成しました。
私の環境では特に問題なく動いていたのですが、知人に配布したところ「動かないよ」と報告あり。
リモートにて確認してみると、Htmlヘッダが二重に生成されてしまっているおかげで、本来のコードがまるでソース画面のように表示されてしまっている。
Node.jsを事前にインストールしておくとか、そういった面倒は一切なく使用できるはずなのに…。
試しに、index.phpに echo 'Hello'; とだけ打ち込んで実行してみた。
結果:
-------------------------------
Transfer-Encoding: chunked
12
Hello
0
---------------------------------
PHPエラーは吐いておらず、echoメソッドは働いておるので、VC++ランタイム等が原因なわけでもなさそう。
あれやこれやと2時間ほど格闘し、ようやく突き止めた原因は、セキュリティソフトでした。
PHP Desktopは、その名の通りPHPが動きます。
つまり、内部的にwebサーバーを通します。
アプリはスタンドアロン”風”ですが、実態は http://127.0.0.1:* で動いているわけです。
その知人が使用していたセキュリティソフトは、Canon ESET NOMAD32。
他のセキュリティソフトは検証しておりません(※1)が、上記のセキュリティソフトでは引っかかります。
知人宅には3台のPCがあり、そのうちの2台にESET NOMAD32が入っており、その2台だけでPHP Desktopが動かないというのですから、ほぼ確実でしょう(※2)。
ESET NOMAD32側で、WEBセキュリティの許可リストに http://127.0.0.1 及び http://localhost を追加することで、無事稼働しました。
※1:私が使用しているWindows Defenderだけは検証済みです。引っかかりません。
※2:Canonさんのこの製品が悪いと言っているわけではありません。いや、むしろ、ローカルホストさえも監視してくれているというのは、セキュリティソフトとしては天晴です。
※2022年11月頃に改めて確認してみたところ、NetBeans8.2は正規の方法では入手不可なようです。私は頭が古くて固いので、現行バージョンをインストールするなどということは試しておりません。よって、当記事は現在ではまったく役に立たない代物だということにご注意くださいませ。
2021年3月頃から、NetBeansの公式サイトからVer 8.2以前のIDEが入手できなくなりました。
なので、Oracleのサイトから JDK付きのNetBeans8.2をダウンロードしてきたわけです。
参考→2021年3月以降 NetBeans8.2をダウンロードする方法
今回は、それをインストールしようとしてハマったお話です。
普通にインストールしようと、インストール用exeをダブルクリックしました。
通常であれば、ここからまずJavaSDKのウィザードが始まるわけです。
が、それは出ずにエラーログファイルが生成される。
(hs_err_pid****.log)****は数値
色々検索し、やれグラフィックドライバの更新だの、やれJREを先にインストールだの試しましたが、ダメー。
このログファイルの中身を見てみると、何やらMSVCR100.DLLが見当たらないというエラーのよう。
そこで、VC++2010再頒布可パッケージなどをインストールしてみようと試みるも「すでにインストールされているので中止します」のメッセージ。
これは困った。
インストールされているのに、MSVSC100が「見当たらない」というのは、環境パスかその辺りかなと思い当たり、ある結論に至りました。
私が今回買い替えたPCのCドライブは小容量のSSD。
そして、Eドライブが2TBのHDD。
なので、SSD圧迫を防ぐべく、「デスクトップフォルダの場所変更」をしていたのです。
これを素直にCドライブに戻し、再度インストールを試してみたところ・・・。
できました(笑)
※2022年11月に改めて試したところ、当記事の方法では入手不可であると判断いたしました。
よって、これ以降は読んでも無駄骨になりますのでご注意ください。
こんにちは。
NetBeans大好き男です。
この度、PCの入れ替えをいたしまして「すわ、NetBeansの環境を作成しよう」と思ったら、いつのまにかVerが12くらいになっていました。
ほぇ~・・・と思っておりますと、どうやらまだまだ日本向けではないようです。
こうなると、8.2が欲しいですよね!
しかしながら、https://netbeans.org/downloads/8.2/にアクセスするも、頑なにver12のダウンロードページに飛ばされてしまいます。
しかし、そのページの下のほうに
がありました。
Find out moreを押しまして、旧版ダウンロードページに飛びます。
そのページをずら~っと下まで見ますと、9.0までしかない。
ように見えます、が
がありました。
Oracleのサイトですが、ここには未だNetBeans8.2が残っている模様。
ライセンスに同意して、x64のexeをダウンロードすべく、クリック。
・・・・が、ダメっ!!
adBlockが悪さしてるのかなと思ってChromeから削除してみましたが、ダメ。
もしかしたらと思って、Edgeでこのページにアクセスし、ダウンロード押してみました。
できましたw
今回のポイント:
NetBeans8.2は、NetBeansのサイトからではなく、Oracleのサイトから Chrome以外のブラウザを使用してダウンロードすべし
中古のGTX960を買いました。
これまでは、GTX570だったので、GeForceExperienceの録画機能が使えなかったためです。
値段も手頃でしたし、どうせレトロゲーム録画しかしないので、GTX960を選びました。
早速PCに取り付けて、起動してみました。
えっと、起動しません 笑
マザーボードのロゴが出た後、黒い画面に
Z77H2-A3 Americanナントカ・・・
PRESS [F7] ENTER BBS POPUP
PRESS [delete] or [F2] ENTER SETUP
とだけ出ます。
キーボードは通電しているものの反応しません 笑
仕方なく、GTX570に戻して再起動。
そして、ググる。
検索の結果、可能性として
・電源が足りていない
・BIOSが古い
電源は、600wのものを搭載しているので、問題ないはずです。
(GTX960のパッケージによると、推奨が400wでしたので)
では、BIOSですね。BIOS。
ちゃっちゃと、「Z77H2-A3 BIOS アップデート win10」で検索。
なんと、win10ではアップデートできないとのこと 笑
そんなわきゃあるかーい!
「Z77H2-A3 BIOS アップデート win10で強行」で検索
詳しく載っているサイトを見つけました。
PCゲーム避難所+α Z77H2-A3 BIOS更新
(勝手にリンクして良いものかどうか判断しかねましたので、ご覧になりたいかたはお手数ですがこのサイト名とページ名でググってください。管理人様からリンク承認をいただけ次第、アンカー張ります)
マザーボードのジャンパーピンの移動や、逆にジャンパーピンを戻す作業などはありましたが、基本的にはダウンロードしたファイルを実行するだけでした。
(が、自己責任でお願いしますとのことです。当然ですが)
では、ここでのハマリポイントを記します。
PCゲーム避難所様の手順でいうところの手順3の前半までは難なく進むと思います。
念のため書いておきますが、途中「CPUEVOのupgrade」という手順がありまして、私の環境では、89%のところで2分くらい止まりました。
しかしその後すぐに100%になったので、焦らずに待ってくださいね。
くれぐれも、強制終了などしてはなりませんよ!><
で、問題はこの後。
PCゲーム避難所様には
<このとき、PCを再起動しようとするとおそらくPCが起動しないであろう。>
<慌てずにBIOSメニューからHDDの接続方法を変更する。>
という世にも恐ろしげな文言が書かれています。
老婆心ながら、わけがわからないという方もおられるかも知れませんので(そもそもそういう人はグラボの換装など試みないとは思いますが)一応、書き留めておきます。
1.起動時にDeleteキーを押すとBIOS設定画面に突入します。(もしかすると[F2]だったり他のキーだったりするかも知れませんが、だいたい電源投入時に右下のほうに書いてあります)
2.Advance(または詳細)にカーソルを合わせ、Enter。
3.(SATA構成)SATA MODE Enter
4.IDEモードになっていたら、AHCIモードに変更
5.ESCキーを押し、save change and reset(変更を保存して再起動)
これで良いはずです。写真を撮っていないので、細かい所は違うかも知れません。
無事に再起動しましたら、手順4へ進みます。
PCゲーム避難所様には
画像の番号に従って OPEN → 30528_W_63EAh.CAP を選択 → Flash 暫く待てばアップデートが完了する。
とありますが、私の環境ではOPENボタンもFlashボタンもありませんでした。
ここが第2ハマリポイントです。
PCゲーム避難所様のコメント欄を見てみました。
すると、そこには
OSはwin10で手順4でOPENが表示されない(クリックで表示されましたが)
という素晴らしい書き込みが 笑
早速、PCゲーム避難所様に掲載されている画面写真を参考に、本来ボタンがあるべきであろう箇所をクリックしてみました。
ボタンが現れました 笑
手順5まで進むと、勝手に再起動されます(ココが第3のハマリポイントでした)
さて、起動しない。困った。
そこで、あることを思い出しました。
私のPCに刺さっているのは、未だGTX570であることに!!
早速、これをGTX960に差し替えて、再起動してみます。
おー!Win10のローディング画面が出た!よし!
と思いきや
INACCSESSIBLE BOOT DEVICE
自動的に再起動します
(ブルースクリーン)
なんということだ・・・。
何度も何度も再起動してもダメ。
こうなったらダメ元でBIOS画面に入ってみよう。
SATA MODE = AHCIモード
問題なかった・・・。EXIT・・・。
すると、さきほどとは様相が違う。
Win10ローディング画面に「PCの修復を試みています」の文字が!
これは期待度アップ!激アツ!
が、ダメっ!!
[再起動]か[詳細オプション]を選べと。
ここで慌てず、どちらも押さずに、セカンドPCにて
「INACCESSIBLE BOOT DEVICE win10 グラボ換装後」でググりました。
すると、OSを再インストールしろだの、なかなかに辟易してしまう答えが出て参りましたが、その中に
セーフモードで立ち上げて、とりあえずその時点で適用されているグラフィックドライバを削除してみなさい
という神の声が!
win10は起動時にセーフモードに入れない?ようですが、そこで、さきほどの画面の「詳細オプション」の出番です。
1.詳細ボタンを押す
2.スタートアップ設定を押す
3.なんか目次みたいなものが出て、ウンともスンとも言いませんが、そのまま再起動
4.黒画面にスタートアップ選択の項目が出ます
5.セーフモードを選択します(該当の数字キーで)
セーフモードで立ち上がりました!
なんか久しぶりに見た気がする「ようこそ」画面。
ここで、デバイスマネージャを開き、「ディスプレイアダプター」を削除しようとしました。
が、右クリックをしても、本来あるはずの「デバイスのアンインストール」がありません 笑
しかし!画面上部に × があります。
それを押すと、無事削除できました!
あとは普通に再起動。
解像度は600X480であるものの、無事に正常起動しました!
で、NVIDIA公式からドライバーをダウンロードしようとブラウザを開いていたら、突然画面が一瞬ホワイトフラッシュ!
いや~~な予感がしておりましたが、なんのことはない。
自動的にGTX960のドライバが当たったようです 笑
で、早速 GeForceExperienceにて、動画が撮れるかどうか試してみました。
ダメでした 笑
あれこれ設定いじっても「録画を開始します」→(0.2秒くらいで)「保存しました」
フォルダを除いても、何にも入っていないという状態です。第4のハマリポイントです。
こりゃダメかな~と諦めかけたのですが、これまたダメ元で、GeForceExperoenceをアンインストール→再インストールしてみました。
出来ました 笑
PHPやHTML5等の開発環境としては、世界三大IDEに数えられることもあるNetBeans。
初回起動に若干時間がかかるものの、作業中はとても軽いので愛用しています。
さて、そのNetBeans(以下NB)で、非常に不可解な現象がおきました。
NBのバージョンは8.2。
これ以前のバージョンでは、起こったことの無い現象です。
(起こったことがないだけで、実は存在はしていたのかも)
まず、NB内でPHPプロジェクト作成。文字コードはUTF-8。
プロジェクト内ソースフォルダにPHPファイル作成。
コードや文章を入力して保存。
で、次回開こうとすると
【エンコーディングUTF-8では正しく開けません。続行して開きますか。】
なんだと!
他の文字コードなど使った覚えはないぞ…。
まぁ、恐らくPHP内のHTML部分で発生したエラーだろうと思ったので、とりあえずHTML部を「上半分」「下半分」に分けたものをコピーして開き直してみる。
「上半分」:何事も無く開いた
「下半分」:
え、じゃぁ下半分に問題個所があるということか。
では下半分をさらに2つに分けて…。
「下半分の前半」:
「下半分の前半部」に原因がありそうなので、一行ずつ削除していって原因を突き止めることに。
ようやく、原因のある行が判明した。
当該行の内容
カレー煮込みうどんは、だしの効いたカレースープにシコシコと張りのある生めんを土鍋で煮込んだものです。
至って普通の文字列である。
改行コードを調べてみるも、ちゃんとCRLFとなっており、問題ない。
では単元ごとに削除して調べてみよう…。
「カレー煮込みうどんは、だしの効いたカレースープにシコシコ」
「カレー煮込みうどんは、だしの効いたカレースープにシ」
「カレー煮込みうどんは、だしの効いたカレースープに」
エラー無し
ここか!ここが原因なのか!
もしかすると、「に」と「シ」を隣接させると、変なコードと認識されてしまうのか?と思い
「カレー煮込みうどんは、だしの効いたカレースープに、」
なんでやねん!
「に」の後に何か一文字でも追加するとエラーが出る。
まさか文字数制限?
・・・ん?まてよ?文字数?
初回で問題なしと切り捨てた「内上半分」に、とても長い一行があることを思い出した。
個人名なども入っているので伏字にしますが、文字数はこんな感じ
現在も、●●氏は○○で手打ち製麺職人として麺食文化普及に取組んでいる一人ですが、当時、手打ち麺の魅力がはっきりわかる"ざるうどん"を世に送り出そうと思いつき、コシがあり、つるつるとしたのどごしの麺の上に揚げたてのアツアツの海老の天ぷらをのせ、新メニューを販売することになったのです。
これ。これだけの文が改行なしで一行に書かれていた。
(私が書いたんだけれども)
なんかここが長すぎるんでエンコーディングエラーとして認識されちゃうってことも無きにしも非ずだったりして、ということで改行してみる。
(HTML的な改行ではなく、IDE内での改行)
現在も、●●氏は○○で手打ち製麺職人として
麺食文化普及に取組んでいる一人ですが、
当時、手打ち麺の魅力がはっきりわかる
"ざるうどん"を世に送り出そうと思いつき、
コシがあり、つるつるとしたのどごしの麺の上に
揚げたてのアツアツの海老の天ぷらをのせ、
新メニューを販売することになったのです。
として「保存」。
それを開き直してみる。
↓
エラー無し…。
こんな場所の文字数のアレが、何十行も下の
「カレー煮込みうどんは、だしの効いたカレースープに」
の部分に関わってくるんですか!?
さっぱりわけがわかりませんが、NBの機嫌が治ったので良しとしましょう。
プロバイダから支給された「HG8045G」というルータに、USB端子が付いていた。
どうやらUSB外付HDDを挿すだけでNAS化出来るというもののようであった。
早速、3TBの外付けHDDを購入。
ファイルシステム FAT32にてフォーマットをせねばならないようだ。
FAT32の仕様は、1ファイルあたり最大4GB、ドライブ総最大容量は2TBまでだった。
そこで、強引に3TBの領域をFAT32でフォーマットできるというアプリを使い、フォーマットしてみた。
windows上では、きちんと3TBが割り当てられている。(実質2.72TB)
HG8045Gに繋いでみる。
HG8045Gの管理ページ(ブラウザからアクセス)で、USBアプリケーション>(HDD名)>ホーム共有を選択。
念のため、一度ルータを再起動し、windows機からネットワークアクセス。
使用可能領域/空き容量 2.72TB
「おっ。うまくいったではないか」
気をよくした私は、ローカルHDD上の動画や音楽などをぶっこんでみた。
総容量はおよそ500GB。
もちろん、NASでのアクセスも良好である。
気をよくした私は、翌日も、そのまた翌日も色々ぶっこんでみた。
そして、3日目…。
なんと、3つのフォルダが0バイトの不可解なファイルと化していた。
アイコンも、フォルダアイコンではなく、無機質な物になっている。
転送順からして、おそらく最新の3つだ。
すわ、一大事、とばかりに、色々試してみた。
PowerShell
(windowsに標準で付いているコマンドプロンプトのようなもの。
ネットワークドライブも覗ける)
にて、remove、rename、deleteなど試してみる。
駄目であった。
shellコマンドでもダメとなると、フォーマットするしかないのか。
そう思い、外付けHDDをHG8045Gからwindows機へ差し替える。
おや……?
windows上では、例のフォルダの中身は消えているものの、ちゃんとフォルダのアイコンだしリネームも削除も出来るではないか。
ということは、つまり、HG8045G側に問題があるようだ。
そこで、色々ググったりして調べていると、有意義なものを発見した。
「3TBのHDDが1TB分しか使えない」という現象が起こった人からのYahoo知恵袋への書き込みであった。
その質問者さんも、FAT32で3TBをフォーマットするアプリを使用したとのことだった。
ベストアンサーは
・1TB分を諦めて2TBでフォーマットする。
・大人しく2TB以下のHDDを買い直す。
笑
言われてみれば、0バイトとなったフォルダは、1TBを越えたあたりからのものだった。
どうやら強引に3TBフォーマットしても、それが使えるのはwindowsだけであって、他のOSでは色々不具合があるらしい。
小生、エンジニアなどという肩書が付いていても、こういった事はからっきしなんだなぁ、と再認識する出来事であった。
最終的には、3TBのHDDは普通に内蔵HDDとして使用することとし、新たに2TBのHDDを購入してNASドライブにするという結論に達した。
初回イベント呼び出し時、DIV要素等では「.val()」でvalue値が取得できなかった。
「.val('hoge')」で書き込みを試みると、動作的には可であったが、consoleを見ると、要素のHTML部(value="hige")が変化していない。
(2度目以降のイベントでは「.val()」で取得できたので、書き込み自体はされているのであろう)
どうやら表に見える【value】と、裏で持っている『value』が違うようだ。
やはり、本来value因子を持つ inputやselectでしか思い通りには使えないのだろう。
このような場合、どうするべきか。
JavaScriptには明るくない私が、しばらくググって達した結論は
『attr()関数を使用する』
ということであった。
$('要素名').attr('value');
と書けば、要素のvalue値を取得可能。
それがdivであってもspanであっても。
$('要素名').attr('value','hogehoge');
と書けば、要素のvalue属性に書込みが可能。
HTMLもきちんと変わる。
主人公:橘健吾(建築士)
-あらすじ-
橘健吾は、押しも押されもせぬ敏腕建築士である。
ある日、一大リゾート開発の設計に携わった彼は、マスコミ相手に記者会見を開く。
会見が終わり、どこかの記者が置き忘れて行った新聞を何気なく手にすると、そこには「和歌山で白骨死体発見」という見出しがあった。
過去の忌々しい記憶が鮮明に甦る。
その昔、橘は、テル子という女性と同棲していた。
仲睦まじく、二人とも、金はなくとも幸福な日々を送っていた。
そんな折、建築界の大家である鶴丸教授自ら、娘との縁談を橘に持ちかける。
御多分に漏れず、橘はテル子と教授の娘とを天秤にかけ、教授の娘との結婚を決意する。
やがてテル子が邪魔になり、殺害するに至った。
場所は和歌山の山中。
念入りに念入りに遺体を埋めた。
それが、今となって白骨死体が発見されたという。
慌てた橘は、殺害現場を確認するため、和歌山へと向かった。
和歌山駅でタクシーを捕まえると、なんと、そのタクシーの運転手は、テル子殺害当日に乗ったバスの元運転手であった。
偶然に偶然が重なり、この運転手をも殺害せしめるは必然となった。
感想
主人公:太地(陶芸職人)
絹江(陶芸職人)
ーあらすじー
陶芸の産地である、とある山村の貧しい家に生まれ育った太地は、県の工芸コンクール(作中では詳らかに書かれていないが、おそらくそれに准ずるもの)で賞を取る。
その作品と太地の純粋さに惹かれた地元の陶芸家が、弟子にしたいと申し出、太地は陶芸家の下で修行をすることになる。
陶芸家には、太地と二つ違いの、絹江という娘がいた。
太地と絹江は、いつからか意識し合う仲になっていた。
太地が青年になる頃、恩師である陶芸家が急死した。
娘の絹江と弟子の太地は、二人で陶芸を守って行くことを決意する。
それから数年後、太地の知らぬところで、絹江は自分たちの陶器を展示会に応募していた。
見事合格し、出展されることを太地に報告する絹江であったが、その時、太地の脳裏には、ある記憶が甦る。
感想
-鬼面山には鬼がいた……。男と女の鬼がいた。-
という始まりのフレーズに尽きます。
歌的リズムと対句で、がっちり掴まれる。
が、読後には、”男と女の”鬼、という部分がどうにも引っ掛かりました。
男と女の鬼、ときて、そのコマ絵と併せて考えると、どうしたって愛欲に塗れた男女のストーリーを想像してしまうわけです。
そういう心持ちで読み進めたので、若干拍子抜けの感があったのは否めません。
(別にエロい話じゃなくて残念とかそういう意味ではなく)
しかしそれにしても、人間交差点ではよくあるコマなのですが、刑務所や拘置所の看守が、囚人を名前(しかも姓でなく名のほう)で呼ぶことは、この昭和中期頃には当たり前にあることだったのだろうか。
それとも、そうまでして姓を書きたくないという矢島先生のお考えがあったのだろうか。