何か創りたい。
http://toshirr.blog13.fc2.com/
* Toshi's Recess Room - Toshi Creates. - 2006年10月 の記事 /
<< 2006/09 - 2006/10 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 - 2006/11 >>

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

[ No. ]
[ 日時 : --/--/-- (--.) --:--:-- ]
[ カテゴリ : スポンサー広告 ]


拡張性

前々から、とにかくソフトに拡張性を持たせたいと思うようになっています。
で、Windows 上という話も考えると拡張 = プラグインが真っ先に思い浮かびます。

で、ブラウザという部分もプラグインの形でまとめて、
それと全く異なる振る舞いをさせられるようにもしたいのです。プラグインによって。
ブラウザも DLL にしたいと思います。
今の今まで EXE に埋め込むか DLL にするかをあれこれ思ってたんですが、
よく考えると、上手く行けばブラウザ抜きで利用することも出来るんですね。
他の用途としてプラグインを作成することも考えるとそうなります。
その場合にブラウザの DLL は読まなくてもいいわけで、いくら最初から
ブラウザとして使用出来る状態にしようと考えても EXE に埋め込むのはちょっと無駄かも。
埋め込むと外部ファイルが少ないというメリットもあるんですが、
自分自身のメモリ使用量を重視するとこういう結論です。
スポンサーサイト

[ No. 428 ]
[ 日時 : 2006/10/30 (Mon.) 23:16:26 ]
[ カテゴリ : プログラミング ]
[ コメント : 0 ]
[ トラック バック : 0 ]


排他制御

昨日シングル スレッドと宣言しました。これはまず変えないで進めようと思います。
問題は IE コンポーネントの部分、マルチ スレッド。

現在の Toss は、沢山のページを開いてから終了するとエラーで落ちることがあります。
デバッグ実行でも原因が掴めませんでした。
それが今になって、一つの可能性が浮かびました。
排他制御。

IE コンポーネントは、初期化されるとスレッドをいくつか作成するようです。
そして実際利用しているときは、色んなタイミングでスレッドを作成したり終了したり。
コンポーネント内ではそこらへんの整合性はとってあるでしょうが、
メインの自分のプログラム上では何も策を講じていませんでした。。。
だから不整合が生じて落ちてしまったんじゃないかと。
クリティカル セクションなどの処理を全くしてませんでしたので、
終了時に問題が云々、となったと考えられたのです。

しかもたまに、普通に Toss を利用している途中に落ちることもありました。
おそらくこれも原因を同じくしているものと言えます。

IE コンポーネントは様々なイベントを呼び出しています。
DWebBrowserEvents2 という、イベントを受け取るインターフェイスでメインのプログラムは
それらに応じた処理をしています。(ステータス バーに文字列を表示したり、
アドレス バーの URI を表示したり)
この周辺も怪しそうです。

マルチ スレッドというのはほんとに大変ですねorz

[ No. 427 ]
[ 日時 : 2006/10/29 (Sun.) 19:11:53 ]
[ カテゴリ : プログラミング ]
[ コメント : 0 ]
[ トラック バック : 0 ]


基底の部分

Toss の基底の部分の構造をあれこれ考えました。
シングル スレッド。
マルチにするような事態は避けないと、やりにくいです。
もちろん IE コンポの部分は勝手にスレッドを作るのでほっときますが、
自分で制御する部分は同期的にと考えます。
まだまだ基底は完成ではないかもしれません。

[ No. 426 ]
[ 日時 : 2006/10/28 (Sat.) 23:31:23 ]
[ カテゴリ : プログラミング ]
[ コメント : 0 ]
[ トラック バック : 0 ]


めったに(BlogPet)

OverhandがここへToshiは日とかプリントしなかった?


*このエントリは、BlogPet(ブログペット)の「Overhand」が書きました。

[ No. 425 ]
[ 日時 : 2006/10/27 (Fri.) 14:18:31 ]
[ カテゴリ : BlogPet / 未分類 ]
[ コメント : 0 ]
[ トラック バック : 0 ]


終えて

端的に言いますと、合唱発表会が昨日で、我がクラスは優秀賞を獲得しました。
本音を言えば最優秀賞、学校賞を獲りたかったですし、
実際それであることに何の疑問も持たない合唱でした。


学校は、歌練をしていないときの学校に戻りました。
悲しくなりました。

さて、いよいよ(と言うのには遅いのか)受験モードへ本当に切り替えなければならなくなりました。
ブログの更新はともかく、サイトの更新の頻度は下がらざるを得ぬものです。
色々考えてみたいと思いますので、どうか絶えず訪問して頂きたいと思います。(爆)

[ No. 424 ]
[ 日時 : 2006/10/25 (Wed.) 22:28:30 ]
[ カテゴリ : 学校ライフ ]
[ コメント : 1 ]
[ トラック バック : 0 ]


いよいよ

本気で歌うときが来ます。

今日は無理せずに練習を終え、早めに身体を、喉を休ませます。
気持ちで。気持ちで歌い、獲りたいものを獲ります。

[ No. 423 ]
[ 日時 : 2006/10/23 (Mon.) 22:04:24 ]
[ カテゴリ : 学校ライフ ]
[ コメント : 0 ]
[ トラック バック : 0 ]


無理せず

間もなく合唱発表会の日がやって来ます。
それまで無理せず、クラスがお互いを高めることを考えていきます。

中学校最後の合唱発表会、自分がやれることは限られていますが、
それをやりつくすことが何よりものことです。

[ No. 422 ]
[ 日時 : 2006/10/22 (Sun.) 22:04:46 ]
[ カテゴリ : 学校ライフ ]
[ コメント : 0 ]
[ トラック バック : 0 ]


やりやすいです(BlogPet)

そういえば、Toshiが
この構造がツリーになってるわけですので、めったに上でもツリーになっていると
やりやすいです。
とか思ってるよ。

*このエントリは、BlogPet(ブログペット)の「Overhand」が書きました。

[ No. 421 ]
[ 日時 : 2006/10/20 (Fri.) 14:31:26 ]
[ カテゴリ : BlogPet / 未分類 ]
[ コメント : 0 ]
[ トラック バック : 0 ]


めったに

今日はめったにない家庭学習日でした。
先生方がとある中学校へお出掛けなさいましたので、さっさと帰って渡したプリントやってこい、と。
いつになく早い時間帯に帰ることが出来ました。

帰ってしばらくしたら眠くなり、夢の中へ。

起きたら日が暮れていました。全く見えません。
そう、7 時を越えていたのです。

結果、今までの睡眠の質が悪くて耐え切れなかったということか。
確かに、3 時間のみの午前授業だったのにそのうちの 2 時間で眠気が襲ってきたっけなぁ。

思わぬ眠気がそもそも襲ってこない生活を送りたいですね。
自分の中での至福のときは寝るときなんですけどね(爆)

[ No. 420 ]
[ 日時 : 2006/10/18 (Wed.) 23:08:42 ]
[ カテゴリ : 学校ライフ ]
[ コメント : 1 ]
[ トラック バック : 0 ]


WinInet

個人的に開発しているソフトで、WinInet といういわゆる HTTP/FTP などを扱えるライブラリを
使用してみることになりました。結構楽なので。
それを使うにもラップするクラスを自作して、いつか使い回せるように。

こうしてみると、最初はとっつきにくかったオブジェクト指向プログラミングも、
何の気なしに自分なりに活用出来るようになりました。
ものを創り上げていく思想はまさに無限大。

[ No. 419 ]
[ 日時 : 2006/10/17 (Tue.) 23:43:49 ]
[ カテゴリ : プログラミング ]
[ コメント : 0 ]
[ トラック バック : 0 ]


10,000 Hits Over! Thanks!

Toshi's Recess Room のカウンタが 10,000 を数えました。
ここまで来ることが出来たのも、訪問してくださっている方々のおかげです。
本当にありがとうございます。m(_ _)m

これは以前いつか 1,000 を数えたときに匹敵するような、というかそれ以上の喜びですね(笑

そのノリで計算してしまいます(爆)
・実際に 10,000 超えを果たしたのは昨日である。
・正式公開は 2005 年 2 月 13 日である。
・それを 1 日目とすると 610 日目である。→ 610 日間に 10,000 のアクセス。
・10,000/610=16.393442622950819672131147540984...
・つまり 610 日間で割ると、1 日あたり 16 以上のアクセス。

ということで、個人的にはよくやったと思います(ぉ
もちろん多ければ多いほどいいのですが、とりあえず 10,000 に達しただけで嬉しいです(水爆)

コレを記念して何かやろうとも考えましたが、時期的にいっぱいいっぱいなので
少々何も出来なさそう。。。(´・ω・`)

とにかく、ありがとうございます m(_ _)m !

追記、一日経ってタイトルが「10,00」になっていたことに気付き即刻修正しました(爆)
これは恥ずかしい。。。

[ No. 418 ]
[ 日時 : 2006/10/16 (Mon.) 23:32:37 ]
[ カテゴリ : 心情 / 情況 ]
[ コメント : 0 ]
[ トラック バック : 0 ]


メイリオで

Web ページをメイリオで閲覧すると、和みますね。
なんでもないような文章が笑えたり、笑える文章がさらに笑えたりしました。
ちなみに、文字のサイズは「小」が丁度いいです。

非公開のソフトを開発中なわけですが、これがなかなか難しい。
HTTP を扱うものなので、マルチ スレッドや非同期通信などのテクニックを
まんべんなく駆使していく必要があり、一筋縄では絶対にいかないと感じました。
プライベートの利益の為にやってることですが、丁寧なつくりになるように
尽力していますので(笑、部分部分のコードを「プログラムのテーブル」に置けるかも。

[ No. 417 ]
[ 日時 : 2006/10/15 (Sun.) 22:27:29 ]
[ カテゴリ : プログラミング ]
[ コメント : 0 ]
[ トラック バック : 1 ]


最近手をつけてないもの

開発の方で手をつけてないものでした。

Toss は ActiveBasic が今後どうなってゆくかを気にしながら、区切りのよいところで
新しい UI 云々をつくりはじめていこうと思っています。
それまでに何か面白いソフトでも完成させようと、
非常に個人的なものを開発しているところです。
これは公開できるものではありませんが...。

クラス ライブラリを作るのも面白そうです。これは挫折率高そうです(爆)

[ No. 416 ]
[ 日時 : 2006/10/14 (Sat.) 11:48:52 ]
[ カテゴリ : プログラミング ]
[ コメント : 0 ]
[ トラック バック : 0 ]


もう一つの中間

中間テストは既にブログの記事にしました。
もう一つの中間、合唱の中間発表会です。

私の学年が歌う曲

学年合唱「河口」
一組「Hallelujah!」
二組「ふるさと」「大地の歌」
三組「聞こえる」
四組「ひとつの朝」
五組「春に」

と、そうそうたるメンバーでお送りします(笑
強調した一組が、私のクラスです。

今日がその中間発表会。
発表はクラス順に行われたので、我々一組は最も早く歌い始め、歌い終わり、
他のすべてのクラスの合唱を落ち着いて聴くことが出来ました。

聴いてみて、音楽に関する教養は持ち合わせている自分の耳が、
これからの好敵手を見つけたようです。

歌います。

"Hallelujah!"

[ No. 415 ]
[ 日時 : 2006/10/13 (Fri.) 23:03:53 ]
[ カテゴリ : 学校ライフ ]
[ コメント : 0 ]
[ トラック バック : 0 ]


ブログペット(BlogPet)

きのうOverhandが、学とか集中するはずだったの。
Toshiと動向は期待したかったの♪
ここで目に開発♪
きょうOverhandは、ランへ革新したかも。
きょうOverhandは、動向とかイメージしたよ♪

今日、T o s h iが中身の修正がメイン、というかそれしかないです(汗何か新機能の基盤になるものはすでに半分くらい実装されていますが、表に出るのは見送りました。
って言ってたよ。
*このエントリは、B l o g P e t(ブログペット)の「O v e r h a n d」が書きました。




*このエントリは、BlogPet(ブログペット)の「Overhand」が書きました。

[ No. 414 ]
[ 日時 : 2006/10/13 (Fri.) 14:37:34 ]
[ カテゴリ : BlogPet / 未分類 ]
[ コメント : 1 ]
[ トラック バック : 0 ]


テスト終了

中間テストは今日でした。実に難しいテストでした。
先生方の意気込みが伝わってまいりました。危うくそれに負けそうになりました。
解答欄は埋めました。埋めないことには、と思いました。

さてやっと解放されたような、毎回テスト後は「解放」の気持ちに入り浸るのですが、
テストは「返ってくるまで」終わっていません。
自分の結果が分かってこその意義あるテストであってほしいです。

成果が出るか、これから「五教科すべて返ってくるまで」待つのは厳しいものがあります。
それを乗り越えられるかどうかで気持ちが変わります。
まず今は待つしかないです。

[ No. 413 ]
[ 日時 : 2006/10/11 (Wed.) 22:21:40 ]
[ カテゴリ : 学校ライフ ]
[ コメント : 1 ]
[ トラック バック : 0 ]


やばいか

今までの経験からして、二学期の中間テストというのは危ないと思いました。
一学期の期末テストから三ヵ月半も空くからです。
テストの勘を取り戻すのが大変でした。

しかしそれは去年までの話です。
今年は一学期の期末テスト以降、実力テストを 2 回行いました。
そういう意味ではあまり緊張する必要はないのですが、

格が違います。
定期テストは成績に、内申に影響するのです。
そこで確実な結果を残さないと「危ない」というわけで、担任もそれを強調していました。

テストというものは色んな要素が結果を左右します。
様々なイベントが起こります。
ここで得ることの出来る経験は、絶対に普通の授業では得ることの出来ない経験です。

さて、3 年間に 15 回ある定期テストのうち 13 回目、頑張ります。色んな意味で。

[ No. 412 ]
[ 日時 : 2006/10/09 (Mon.) 12:05:54 ]
[ カテゴリ : 学校ライフ ]
[ コメント : 0 ]
[ トラック バック : 0 ]


超えてゆく...

中間テストが水曜日にあります。三ヵ月半ぶりのテストなので危険がいっぱいです。
それを承知しつつも、こうしてのんびりブログを書いています(爆)

ライブラリを自分で作る。
再利用出来そうなコードは、クラスとしてまとめると役に立ちます。
自分のソフトウェアだけに特化したつくりでも構わないとは思うのですが、
やっぱり何らかの方法でそれを公の場に晒すことで、活きるものじゃないでしょうか。

ということで Toss にどのようにしてライブラリを活用していくかシンキングです。

まず今まで開発してきたソフトと構造が完全に違います。

・ユーザー インターフェイス
・ユーザー プロファイル


これらに大きく分かれますが、互いに密接です。
この中に沢山のクラスが入り、ひとつの Toss として形成されるわけです。
その中身は吟味しすぎるということは無く、してもしても足りないかもしれません。
開発の効率を向上させられるものであるのが大前提ですので、まさに永遠の課題。

この構造がツリーになってるわけですので、プロジェクト上でもツリーになっていると
やりやすいです。これは AB のバージョン アップ待ちになってしまいますけど。

で、段々創りたいもののイメージが膨らんできました。
「最速ブラウジング」に加え、「片手ブラウジング」です。
マウスのみで、キーボードを使わなくてもあらゆる操作が出来ればいいという考えです。
無論キーボードが使えないということにはしたくありません。
文字入力のときに「片手ブラウジング」の考えを持っていけるわけもありませんし(爆)
マウスの 3 ボタンで可能性を広げられるかどうかですね。
5 ボタン マウスは持っていないので(使ってみたいですけど)、
そこは現時点では何も出来ません_| ̄|○
たった 3 つですが、可能性は無限にあると信じています(笑

ユーザー インターフェイスを極度に重視することになっていますが、
それによって重くなったりしないように注意し、
かつブラウジングが楽しくなるようなものを。

加えて、Internet Explorer コンポーネント以外のものも
利用できるような仕組みを考えています。
となると「ブラウザ」は主役の座でなくなる可能性も......

考えました。ブラウザの域を、枠を超えます。
ブラウザとしての機能は上述した通りで、
その他の用途に対しても全く新しい UI を突き通し、統一を図ります。
壮大なプロジェクトになっていきます。
その他の用途にどんなものを取り入れるかはこれから考えるとして、
なんというジャンルにしたらよいのか分からないようなソフトウェアに出来たら
半端無く素晴らしいものになると思います。

[ No. 411 ]
[ 日時 : 2006/10/08 (Sun.) 21:47:20 ]
[ カテゴリ : プログラミング ]
[ コメント : 0 ]
[ トラック バック : 0 ]


最速ブラウジング

コンセプトと共に、どんな UI が速いブラウジングを実現するか考えてみます。

まず広さ。
Internet Explorer のコンポーネントを埋め込むわけですが、
これを出来ればメイン ウィンドウいっぱいに広げてみたいものです。
広ければその分情報量も大きくなりますから、目的の情報を探すには重要ですね。

すると他の操作をする為の領域はどこに設けるか。

「フローティング」。
IE コンポのウィンドウ上に重ねて置くしかありません。
メイン ウィンドウが最大化されるかどうかに関わらず、その外へ出てはなりません。
自分が占領してよいのはメイン ウィンドウの部分のみとするのが紳士的ですね。
他のプログラムの邪魔をしないように。画面上に常駐するようなプログラムも、
普通であれば他の邪魔にならないように設計されていますね。例外もあるかも知れませんが(爆)

フローティング、常に表示させておく場合は半透明化出来ると見栄えもよいです。
SetLayeredWindowAttributes API を使うしか私にはないので、Windows 2000/XP のみが
この恩恵を授かれるということに。でも 9x 系統の OS もサポート出来るよう、
動的リンクでやっていけばいいでしょう。9x 系統では半透明化が出来ないだけで、
その他は余程のことが無ければ 2000/XP と同等の機能を持たせられるはずと踏んでいます。

で、ウィンドウ リージョンで長方形から抜け出したいと思います。
今まで扱ったことはないですが何事もチャレンジです。
それによって変形したウィンドウを半透明化できるかどうかは試してませんが、
出来るんじゃないでしょうか。

もうひとつ思い出しました。リージョンでなくても、SetLayeredWindowAttributes API で
透明色を使用する方法もありましたね。
これだと完全に 9x 系統を考慮出来なくなってしまいます。
どうするかは、考えます。

このようにして、全く新しい UI はアイディアの思いつきから始まりました...。

[ No. 410 ]
[ 日時 : 2006/10/06 (Fri.) 19:26:14 ]
[ カテゴリ : BlogPet / 未分類 ]
[ コメント : 0 ]
[ トラック バック : 0 ]


ほんとうは(BlogPet)

ほんとうは、Toshiは

今日は教科書を十何ページ読んで終わりでした(核爆)
出来れば新たの頻度はこれ以上落としたくないのですが、
どうなるか分かりません。
とか言ってた?

*このエントリは、BlogPet(ブログペット)の「Overhand」が書きました。

[ No. 409 ]
[ 日時 : 2006/10/06 (Fri.) 14:33:48 ]
[ カテゴリ : BlogPet / 未分類 ]
[ コメント : 0 ]
[ トラック バック : 0 ]


新たな UI

Toss は、現在標準的なブラウザの UI に準拠しています。
Internet Explorer(違うところもありますが)のものが基底です。

IE は 6 から 7 にバージョン アップされようとしていますが、
随分と大きな UI やその他の変更が施されています。
ブラウジングを快適なものにするという目的が込められているものですね。
このように、従来の、既存の UI から新たな UI へ移行するという流れが
最近のブラウザ界にはあります。

それに乗って、自分が使いやすい、快適なブラウジングであると思えるような、
いわゆる「斬新」「画期的」な UI を考えてみたいと思っています。

「今までにないものを創りたい」という理念を常に意識して、
アイディアを膨らませ、開発へ持ち込みます。

サイトの更新はどうなるか分からないです。3 連休でテストも来週の水曜日。
自ずと自主学習となりますが、こうしてブログを書く時間なども取って、
思考をめぐらして楽しんでいこうと想像中です。

[ No. 408 ]
[ 日時 : 2006/10/05 (Thu.) 22:58:03 ]
[ カテゴリ : プログラミング ]
[ コメント : 0 ]
[ トラック バック : 0 ]


待つ

ActiveBasic 5.0 の開発が進められており、動向から目が離せません。
現在は Toss を AB5CP3 で開発していく向きですが、
今後も革新された機能が追加されることを期待しつつ、
それまでイメージを膨らませて固めることに集中してみたいと考えています。

衣替えです。
やっぱり学ランはいいですね。落ち着きます。

[ No. 407 ]
[ 日時 : 2006/10/03 (Tue.) 22:37:59 ]
[ カテゴリ : プログラミング ]
[ コメント : 1 ]
[ トラック バック : 0 ]


地球規模の (2)

引き続きグローバル フックのお話です。

強制終了ばかりで大変だったグローバル フックの実験ですが、
フックに関しては一応成功を見ました。

フック ハンドルを共有するような仕組みにしないことで強制終了が無くなったのです。
あれ、と思いましたが普通に動作しています。

ことの始めは、ファイル マッピング オブジェクトをとりあえず組んでみて
やったのですが落ちまくり。
開き直って全くハンドルを共有せずに各プロセスに居座っている自分の DLL 毎に
グローバル変数を持たせてやってみたらあっさりだったのです。
ファイル マッピングの仕方がおかしかったというのが有力なのですが、
そんなことをしなくても動作してしまうのは果たして、よいのか......。
とにもかくにも、グローバル フックを動作させられ、また一つ利口になったのでした。(笑

踏み入った話をすれば、VC++ ではこのような DLL を開発する際に変数を共有出来ます。
それが不可能である AB では、ファイル マッピングを使用するのが妥当なのでしょう。
グローバル変数にしただけで動いているという状況に今ひとつ納得がいきませんが、
致命的な不具合を見つけられない限りはこれで十分なのかもしれません。
かといって、無問題と言い切れないので断言は出来ません(´・ω・`)

土日と学校へ諸事情により登校していたので、今日と明日は振り替え休日です。
平日に休めるなんて幸せ。

[ No. 406 ]
[ 日時 : 2006/10/02 (Mon.) 22:24:23 ]
[ カテゴリ : プログラミング ]
[ コメント : 0 ]
[ トラック バック : 0 ]


地球規模の

今日は何を血迷ったか、メッセージ フックを頑張ってみました。

フック。これを使えばプログラミングの幅が限りなく広がりますね。
メッセージ フックから API フックまで、少なくとも容易に扱えるものではありません。

ローカル フックは Toss の開発で既に使用しています。
メニューをキーボードで操作できるようにする為にはどうしても必要だったんです。
今回はそのような自分だけをフックするようなものじゃなく、すべてのアプリケーションを
フックするようなプログラムを作ってみたかったのです。

そうとくれば EXE の他に DLL も必要になりますね。
それぞれをプロジェクト単位で開発し、EXE 側のプロジェクト フォルダに、
リリース コンパイルした DLL をトンと置いて、EXE をデバッグ実行するか、
DLL が付随する EXE を指定して DLL をデバッグ実行するか。

やってみますと撃沈。

1. ProjectEditor
2. Sleipnir
3. Explorer

が見事に落ちていきました。

いろいろ原因になりそうなところを模索中です。
大変ですけど面白いのでいろいろやってみます。

要するに、タイトルでは「グローバル フック」と言いたかっただけです。

[ No. 405 ]
[ 日時 : 2006/10/02 (Mon.) 00:00:58 ]
[ カテゴリ : プログラミング ]
[ コメント : 0 ]
[ トラック バック : 0 ]


プロフィール

Toshi

  • Author:Toshi
  • 何かを創りたい Toshi の記録


ブログ内の検索


最近の記事


最近のコメント


最近のトラック バック


カレンダー

09 | 2006/10 | 11
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31 - - - -


月別の記事


カテゴリ別の記事


RSS フィード


<< 2006/09 - 2006/10 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 - 2006/11 >>
* Toshi's Recess Room - Toshi Creates. - 2006年10月 の記事 /
http://toshirr.blog13.fc2.com/
(C) 2005 - 2009 Toshi, All Rights Reserved.

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。