ホームページは難しい そう思っていませんか?
「ワードでホームページ」は日本一簡単です!!ブログ - ブログカテゴリのエントリ
緒方です。Windows11を試してみて、ホームページツールの「ホームページを表示」の機能が動かなかったのですが、これは従来の機能ではIEである「Internet Explorer」を起動しているのですが、Windows11ではIEを起動しようとすると、Edgeが起動してくるからです。
Edgeが起動してしまうと、ホームページに管理者としてログインする機能が動かないことから以下のようにエラーになっていました。 ![]() でも、2029年まではWebブラウザコントロール(中身は組み込みのIE)がサポートされるとのことなので、この機能をWindows11の場合は、Webブラウザコントロールを呼び出すように変更しました。 「ホームページを表示」のボタンをクリックすると、以下のように表示されます。 ![]() IEの画面ではないので、画面の上部に「進む」「戻る」等のボタンは無く、フォーム画面にブラウザ画面が貼りついたような表示になりますが、ちゃんと管理者としてログインした状態なので、これで使えると思います。 他にもエラーになる機能があるかもしれないので、これから自動テストを走らせようと思います。
緒方です。
マイクロソフト社から、インサイダープログラムという開発者プログラムに登録すると、最新のWindows11がダウンロードできるということで、早速やってみました。 このように、Windows11がインストールされて起動できたので、Google Clomeや、さくらエディター、Officeをインストールしました。 全体的な印象ですが、きわめて安定して高速に動作しています。アイコンなどのデザインが洗練されてイイ感じです。 ![]() さて問題は、ホームページツールが動くか?なんですが、こんな感じで問題なく起動して、ブログも投稿できます(このブログの投稿はWindows11からです)。 ![]() ところが、IEが起動しなくなっていて、「ホームページを表示」のボタンをクリックすると、こんなエラーが表示されます。 ![]() そして、IEの代わりに起動したEdgeなのですが、「ユーザ情報が見つかりませんでした」というエラーが表示されて、管理者としてログインできない状態です。 ![]() ということで、現在のバージョンでは、Windows11では全部の機能が動かないという結論ですが、どう対応するか? Excelのマクロ(VBA)から、Webを操作する方法はいくつかあるのですが、マイクロソフトが公開している、EdgeのIEモードを使うというのが正当な方法のもようなのですが・・・・ これはEdgeの設定画面で、「IEモードを有効にする」をONにして、Edgeを再起動し、さらに開いたホームページで、「IEモードで開きなおす」をクリックしないといけないらしくて、ちょっとホームページツールから自動で行うには、多少無理があるような感じがします。 他にはWebドライバーというのがあり、これを使うとChromeやFireFoxなどを制御できるようになるみたいです。Edge用のWebドライバーは、マイクロソフト社も提供しているので、これも正当なやり方です。 でもホームページツールを使う前に、Webドライバーをインストールしないといけないというのも、またユーザには敷居の高い方法で、企業のシステム部があるようなところなら、これでもいいのでしょうけど、ホームページツールのお客様は、そんなシステムに詳しい人がいないような企業ですから、なかなか難しいと。 それで、いろいろ調べていくと、Excelには、Webブラウザコントロールと言う、中身はIEなのですが、このWebブラウザコントロールは、2029年まではサポートされると明言していることがわかりました。 つまりExcelのマクロ(VBA)からは、Webブラウザコントロールを使えば、従来のように何も設定とかせずに、IEと同じような制御ができるわけです。 実はホームページツールではWebブラウザコントロールは既に使っていて、オプション設定で、「IEを使う」をチェックしなければ、中身はWebブラウザコントロールで動いています。 この方が、いちいちIEを起動する時間が必要ないことから、高速に動くからなのです。他にもExcelのWebクエリという機能も、Webブラウザコントロールで動いています。 つまり、Excel自身が標準の機能でもWebブラウザコントロールを使ってしまっているので、そうそうIEのモジュールを外すことができないということですね。そのうちEdgeを使うようになるのでしょうけど。 とりあえず2019年までは、このWebブラウザコントロールを使うことにして、「ホームページを表示」の機能を、IEではなく、Webブラウザコントロールを使うように改修しましょうか・・・ もっとも、OSのバージョンを見ることにしていて、Windows11なら全面的にWebブラウザコントロールを使う、Windows10でIEが起動するうちは、IEを使うようにしましょう。 本当にWindows10でも起動しなくなったら、Webブラウザコントロールを使うってことで。
緒方です。1004エラーの件の続報です。
Office2016でも発生することがわかり、2007用に書いていたWord起動の再試行ロジックは、バージョンチェックを外して全バージョンで動かすことにしました。 ネットで検索していても埒が明かないので、金曜日に有料でもいいからとマイクロソフト社に連絡しました。Windows10には「問合せアプリ」というのがインストールされていて、これを使うとマイクロソフト社に問合せができます。 本業の仕事でHyper-Vのライセンスについての質問もこれで行ったことがありますが、Officeの質問は初めてでした。 メニューが出てくるのでOfficeの質問を選んで進んでいくと電話がかかってくるというメニューがあり、それを選択すると、しばらくして本当に(?!) マイクロソフト社のサポートから電話がかかってきました。 Windows Updateで1004エラーが頻発するようになったということで話をしていたのですが、相当レベルの高い方でこちらの言うことをすんなりわかってもらえます。さすがはマイクロソフト社のサポートだなぁと思いながら対応してもらっていました。その方が言うにはWindows Updateが、Officeの環境をどこか壊してしまったのだろうと言うことでした。 対処方法は修復ポイントで戻す手はあるが、さらにOfficeを壊すこともあるので、一番確実なのはWindowsからの新規の再インストールでした。 試しに新しいプロファイルを作るとなおる可能性もあると聞いて、そこでサポートの電話は終了になりました。 あまりブログには書かない方がいいかもしれませんが、今回はお役に立てなかったということで無料となりました。リモートで対応するようなサポートが必要な場合は有料になると言われていましたので、無料で対応してくれるケースは多いのかもしれません(ケースバイケースだと思われます)。 さて、試しに新たなアカウントを作ってみたら(つまり新しいプロファイル)、エラーが発生しないではありませんか!! その夜、3台のPCで新しいアカウントでホームページツールの自動テストを動かしたのですが、どれもエラーがなく、3台ともテストが完了していました!! さすがはマイクロソフト社のサポート!! プロファイルを作り直すというのはドンピシャの回答でした。 だんだん問題がわかってきて、これはWindowsやOfficeのシステム上の問題ではなく、ユーザプロファイルに問題があると言うことです。 そこで、古いアカウントと新しいアカウントでどこが変わってくるのか、ユーザプロファイルのフォルダや、レジストリのユーザ部分を比較していましたが、やっとわかりました。 INetCacheというOfficeのキャッシュ用のフォルダがあるのですが、おかしくなったり、遅くなったら、削除すれば解決するというフォルダです。実はこのフォルダ内のファイルを削除するとエラーが消えました!! と言うことは、ホームページツールを起動する時に、このフォルダを掃除してしまえばいいってことですよね? これをロジックとして組み込んでみようと思ったのですが、既にロジックに組み込まれており、高速化をした時に遅いからとコメントにして外してしまっていました・・・これは私自身のせいでした・・・汗 INetCacheにファイルがたまってくると、1004エラーになるというのは知りませんでしたが、以前はこのロジックが働いてエラーにならなかったということなのでしょう。これは良いことがわかりました。 1004エラーになった場合は、INetCacheフォルダ内のファイルを削除してみてください。 この問題はこれで解決しました!!
緒方です。Office2007で、1004エラーが起こるというブログを書きましたが、テストしていると、Office2016でも発生していることがログから確認できました。
以下の、黄色のところです。 2021/06/23 9:31:41 ブログ HonbunRead 2021/06/23 9:31:41 ブログ 本文をWordから取得 処理実行中... 2021/06/23 9:31:41 ブログ WordObjectxlPrimary 2021/06/23 9:31:41 ブログ WordObjectxlPrimaryGo 2021/06/23 9:31:41 ブログ loop1 k=1 2021/06/23 9:31:42 ブログ ■エラー1219: シート:ブログ ErrNo:1004 Err: このオブジェクトの作成元アプリケーションを起動できません。 2021/06/23 9:31:42 ブログ loop1 k=2 2021/06/23 9:31:45 ブログ WordObjectxlPrimaryGo 成功 2021/06/23 9:31:45 ブログ WordObjectxlPrimary 成功 このログはホームページツールのオプションで、ログを送信するにチェックを入れると出力されます。かなり詳細なログを出力しているので、ONにすると遅くなるかと、デフォルトはOFFにしています。 ![]() このログを見れば、ホームページツールのロジックまで概要くらいはわかってしまうのですが、ソースコードってわけではないので、これを見て真似をしようと思ってもまず無理です。 ソースコード上では、この1004エラーをどう引っかけているか?というのにも秘密(笑)があり、VBA(マクロのこと)での普通の「on Error 」では途中で停止してしまいます。 手動でテストすると大変なのでテストロジックも組み込んであり、自動テストで走るのですが、見た目はエラーは起きてないように見えているので気づきませんでした。 後からログを1004で検索すると気づいたくらいです。Office2007よりは明らかに頻度は少ないものの数回はエラーがあって、ロジックに引っかかって再試行がかかって、何事もなかったように続行していました。 Office2007だからと言って古いからと対応しなかったら、ここでエラーになっていたでしょう。 でも今までこんなエラーは起きていなかったので、WindowsUpdateで何かの問題が発生したのか? 古いバージョンのホームページツールを動かしてみましたが、Wordを起動するところで、1004エラーで停止してしまいます。と言うことはホームページツールのロジックには問題なく、WindowsUpdateでOfficeの環境が変わってしまったと考えます。 ちなみに64ビットのOfficeでもテストしているのですが、こちらでは一回も1004エラーはありませんでした。 なかなかやっかいな問題ですが、なんとか対処したいと思っています。
緒方です。6月18日のブログで、Office2007で「実行時エラー 1004 OLEobject クラスの object プロパティを取得できません」や、「このオブジェクトの作成元アプリケーションを起動できません」と言ったエラーが発生すると書きました。
以前は、こんなエラーは発生せずに長年、2007で開発してきたのに、妙にWindowsUpdateをしたせいで、ExcelからWordを起動した時、2,3回に1回くらいの高頻度で、このエラーが発生します。 ただ、このエラーが発生しても、しばらく待って再度実行すれば、問題なくWordが起動してくることがわかったので、2007の場合だけ5秒ほどのWaitを入れることにして回避できそうです。 このWordを呼び出すロジックは、ホームページツール内のあちらこちらに10か所以上あったので、一つのプロシージャーにして、これを呼ぶようにして、まとめて整理しました。これで品質も上がると思います。 2007という14年も前のOfficeを未だにサポートしているというのは、こういう不具合がExcelで発生しても自前でなんとかしなくてはいけないってことですね。
緒方です。ホームページツールは、ImpressCMSというXoops互換のソフトをサーバー側で使っているのですが、この中にログカウンターというモジュールが組み込まれていて、アクセスログをカウントしています。
でもホームページへの攻撃も一緒にカウントしてしまうので、明らかに今、まさに攻撃を受けているってことが、アクセスカウンターの急増でわかります。 ログを見てみると、「wp-login.php」へのアクセスが多いのですが、これは有名なWordPressというソフトのログイン画面です。WordPressでホームページを作るお客様も業者さんも多いのですが、多いだけに攻撃の対象になりやすいというのが私がImpressCMSを選んだ理由の重要な点です。 ImpressCMSはよくも悪くも普及という点では、海外でも日本国内でもてんで知られていないCMSなので、逆にセキュリティ上の攻撃ではとても有利なのです。 今までホームページツールのImpressCMSに対して、破壊活動とか、侵入とか、コンテンツの改ざんなどは10年近く使ってきて、一度もありません。 唯一、画像が削除されたということがあって、それはImpressCMSのせいではなく、組み込まれていたエディターの画像一覧画面にセキュリティがかかっていなかったのが理由でして、既にセキュアな状態になっているので、今後はありません。 WordPressではないのに、一生懸命(と言っても攻撃プログラムは自動でしょうけど)、「wp-login.php」」へアクセスしてくるのは、無駄ですよーと言いたいところですね。
緒方です。現在、ホームページツール開発プロジェクトは、開発そのものは終了して、細かい不具合修正とかはありますが、ロジックや機能に影響するような修正はもう終わっているところでした・・・のはずだったのですが、マニュアルを書いていて、気づいてしまいました。
予約に新規作成ボタンがないことに(汗)。 これは昔の操作性のなごりで、画面上部に並んでいる機能の切り替えのボタンを押すと、必ず新規作成の追加モードになるようになっていたからです。 このブログでもだいぶ前に、操作性を大きく変えましたと書いているのですが、ブログやニュース、TOPページ、コンテンツといった記事を書く機能については、新規作成ボタン方式にしていたのです。 でも・・・予約については、忘れていました・・・当時は忘れていたというより、思い出さないようにしていたというか封印してしまったのです。 ・・・で、やはり操作の統一性からも同じにしたほうがいいということで、新規作成ボタンを新設しました。 ![]() マニュアル書いていると、こういうすっかり念頭から外してしまっている機能について思い知らされます。 本業のシステムエンジニアでの仕事の場合は、必ず仕様書とか、テストケースを書きますし、それをお客様に出す前に、内部で複数の人でレビューしますから、そういう時に気づくことです。 でも、このホームページツールのプロジェクトは私一人で開発しているわけで、レビューすることもなければ、仕様書もOneNoteに自分が忘れそうな機能についてだけ書いているだけで、全ての機能については書いていません。 テストケースにいたっては、Excel内部に自動テスト用のロジックを書いているだけで、これがテストケースです。 とにかく紙に出力してチェックするような仕様書や、テストケースが無いというのは、こういう問題が後で発覚するということで、何十人も関わっている本業の仕事のプロジェクトでは致命的なスケジュールの遅延につながります。 「プロジェクトは紙でできている・・・」、分厚いキングファイルが何冊もできるような仕事の仕方を無駄だなぁと思ったことが昔ありますが、やはりそれなりに意味があることだなぁと今さらのように思うのでした。 でもホームページツールの場合は、仕様も私が決めるし、仕様書を書いてもすぐに変更になってしまうだろうなと思うので、OneNoteにメモ書きの仕様書って言うのは変わらないでしょう。 もし会社組織にになって、複数の人でプログラム組むようになれば別ですが、今のところは私一人での開発です。私に何かあった場合は、困るかもなんですが。
緒方です。昨日あたりから、Office 2007でホームページツールの挙動がおかしくなり始めて、Wordの新規作成とか、Wordの本文を開くような操作をすると、「実行時エラー 1004 OLEobject クラスの object プロパティを取得できません」や、「このオブジェクトの作成元アプリケーションを起動できません」と言ったエラーが発生するのです。
![]() 「このオブジェクトの作成元アプリケーションを起動できません」は、以前にも発生したことがあったのですが、その時は、WindowsUpdateをかけるとなおったので、ホームページツールのマニュアルの「困った時は?」にも書いておいたのですが、今度は、いくらWindowsUpdateをかけても、Officeの再インストールをしてもなおりません。 でも、別のOffice2007のPCがあるのですが、そちらでは発生しません。開発のメインに使っているPCだけなのです。 Office2010や、Office2016等では発生しないので、明らかにOffice2007特有の問題ですが、何をやったか思い出すと、WindowsUpdateを最近やったことを思い出しました。 それで何かが変わったのだろうなぁ・・・と思うのですが、再インストールでもなおらないことを見ると、Windows側の何かの要素なのか・・・ネットで検索すると、MSForms.exdというファイルがあれば削除というのがあり、確かにあったので削除してみましたが、現象、変わらずです。 そろそろOffice2007をサポートから外すべきなのか・・・マイクロソフトのサポートはとっくに切れている(2017年)し、14年も前の製品なのでサポートしませんと言っても通るような気もします。 ・・・が、2007で開発していると、それ以降のOfficeでは、まず動くので(たまに特定のバージョンだけ問題ある場合もありますが少ない)、これで開発してきたのですが・・・。 一週間前のバックアップがあったので、それをリストアしていますが、それでエラーが発生するようなら、2007での開発をあきらめて、2010にバージョンアップするか・・・悩ましいところです。 リストアするのに一晩かかりそうなので、もう寝て、結果は明日待ちです。
緒方です。
だいぶ以前になりますが、Google広告を使ったことがあり、ほとんど反応がありませんでしたので、止めていました。 まだ、ホームページもそんなにできておらず、ターゲットとしたキーワードは「集客」だったのと、あまりお金をかけなかったことで、反応以前に表示回数が少なかったのです。 それからだいぶ経って、ホームページもだいぶできてきたので、Google広告を再開することにしました。今度のターゲットキーワードは「簡単なホームページ」です。 これでホームページツールが売れることにつながればいいですね!!
緒方です。いよいよ開業とか創業に向かって走り出しているところ(気持ちだけ?)なのですが、実は先日、「開業Free」というFREE株式会社が出しているソフトを使って、オンラインで税務署に行かずに開業届を出してしまいました。
「開業freee | 公式」はこちら |