2007年2月18日日曜日

キャプチャ部分作成_002【実況中継】

というワケで


今からCで書くわけですが

また後からこのblog書くのがマンドクサイので
例のごとく実況中継でいきたいと思いますw


とりあえず今はいってるCのコンパイラは

MinGW
Borland C++

この二つ


つかよくコンパイラでググってるとRAD環境と純粋なコンパイラを比較して
しかも貧弱とか言ってるけどあれってすげーナンセンスじゃね?ww

まぁそんな事はどうでもいい

とりあえず今回はボーランドでいくか


とりあえずWindowsプログラミングのHello World的なソースをググって
動かして見るw(だってそうでもしないとわかんねしw)

こんなのね

/***************************************************/
#include <windows.h>

#define MSG "WindowsAPIはじめますた。"
#define TTL "Begin API"

int WINAPI WinMain(
  HINSTANCE hInstance ,
  HINSTANCE hPrevInstance ,
  PSTR lpCmdLine ,
  int nCmdShow )
{
  MessageBox( NULL, MSG, TTL, MB_OK );

  return 0;
}

/***************************************************/

でこれをコンパイルと



C:\widget>bcc32 begin.c
Borland C++ 5.5.1 for Win32 Copyright (c) 1993, 2000 Borland
begin.c:
警告 W8057 begin.c 15: パラメータ 'hInstance' は一度も使用されない(関数 WinMain)
警告 W8057 begin.c 15: パラメータ 'hPrevInstance' は一度も使用されない(関数 WinMain )
警告 W8057 begin.c 15: パラメータ 'lpCmdLine' は一度も使用されない(関数 WinMain)
警告 W8057 begin.c 15: パラメータ 'nCmdShow' は一度も使用されない(関数 WinMain )

Turbo Incremental Link 5.00 Copyright (c) 1997, 2000 Borland
Error: 外部シンボル '_main' が未解決(C:\BORLAND\BCC55\LIB\C0X32.OBJ が参照)




あ、ちょと「爆笑レッドカーペッド」見てきます・・・

MVPの子がすげーツボww

あ、どうも


でコンパイルの結果ワーニングは引数がないから無視するとしてw
エラーでちゃってるよコレ

_mainが未解決だぁ?

ワガンネww


そもそも普通のコンパイルの仕方でいいのかと思いググってみる

やっぱり・・・


windowsプログラミングのバヤイちゃんとコンパイルオプションがあるんだねぃ


-w

ほー!




C:\widget>bcc32 -W begin.c
Borland C++ 5.5.1 for Win32 Copyright (c) 1993, 2000 Borland
begin.c:
警告 W8057 begin.c 15: パラメータ 'hInstance' は一度も使用されない(関数 WinMain)
警告 W8057 begin.c 15: パラメータ 'hPrevInstance' は一度も使用されない(関数 WinMain )
警告 W8057 begin.c 15: パラメータ 'lpCmdLine' は一度も使用されない(関数 WinMain)
警告 W8057 begin.c 15: パラメータ 'nCmdShow' は一度も使用されない(関数 WinMain )

Turbo Incremental Link 5.00 Copyright (c) 1997, 2000 Borland

C:\widget>begin

C:\widget>














きたーーーーーー(・∀・)ーーーーーーーーーーーー!


あぁもう今日はこれができればいいやww(オイ

キャプチャ部分作成_001【Cでバッチで?】

せっかくの休日なのに某絵チャットに入ることができなくて悲しいんです。ぇぇ

入れない

って言ってるのは、サーバにつながらないんです。
でもまぁ、たまにあることだしな・・・

いつも入れない人になってしまいます。

どうやら入れる人は、キャッシュで入れるんじゃないかという噂が・・・

あ・・・

キャッシュ しない設定だわ・・・



どうもlunchfreakです。


つーわけで、PGでもすっかと
つかやれよとwww


放置イクナイ(・д・)


とりあえず、ランタイムエンジンを決められないので、
キャプチャ部分だけ先につくってしまおうかと


キャプチャ機能のロジックは

[PrtScn]押下される
 ↓
クリップボードから画像を取得
 ↓
画像ファイルとして保存



キャプチャ部分は参考にさせて頂いたwidgetがいくつかあるんですが、
みなさんキャプチャ部分はJavaとかexeで走らせてるみたいなんで
自分もそうしようかなと

で、まぁその際になんの言語で書くかプログラマきどりで悩んでみたんですが
(いや、本職もマなんですが)

 
クリップボードの操作は、JavaScriptにも用意されているみたいですが、
あんま豊富ではなさそうなのでWindowsAPI使っちゃったほうがはやそう

ということでwinAPIつかえる言語

なんかスクリプトが多いなぁ・・・


まぁこれも色々あるみたいですね。


Ruby
Delphi
VB
C/C++

つかほとんどできそうなきがするw

この中でやったことあんのは、VBとCか・・・

まぁ、Cを一番最初に学んだ自分としては当然C言語選ぶわなw
処理早いし

なんかバッチっぽいしww

でもCでWindowsプログラミングすんのははじめてww


まぁ、どちらにしろよく知らない言語でやるよりかは
なじみのあるCでAPI部分はググってどうにか対応できるレベルのほうがいいかなとww


なわけでCでキャプチャ処理今から書こうと思います。
まぁバッチにするかはわからないけど

2007年2月12日月曜日

ちょっと仕様検討

どうもlunchfreakです。



Yahoo! Widget Engineをつかって開発を考えていたんですが、
ちょっと問題が発生・・・

あれって

swfを表示できないんっすよねwwww


まったくもって気が付きませんでしたww


今作ろうとしてるのが、某絵チャットのまぁ専ブラみたいなもの
で、その絵チャットはFlashでできていると・・・

ためしにimegeタグのsrc="ファイ名.swf"とかやってみたけどだめだった・・・orz


Flashを表示するためには、HTMLをレンダリングできるランタイムエンジンが必要なわけで
どうしようかと・・・


とりあえず要件定義を考えてみた

まず、アプリケーションの仕様は
・絵チャットを表示する
・キャプチャ機能がある
・画質をボタンで制御できる
・windowの拡大縮小可能
(もしくは縮小、通常、最大化の3サイズを固定)
・スクロールでパレット部分の拡大⇔縮小

まぁちょっと贅沢に欲のまま書いてしまったので、
最低でも上位3つがととのえばいいかな。
あとの機能はおいおいバージョンアップとともに考えるつもり

で要件
絶対的な条件としては
・クロスプラットフォームであること
・swfが表示できること
・HTMLとJavaScriptをレンダリングできる
・GUIがリッチ


とりあえずYahoo! Widgetみたいなランタイムエンジンを
さがしてみたらこんなサイトみつけた

http://diaspar.jp/node/117

W3Cは地味に条件満たしてる気がする・・・なんせ世界標準だし
でもブラウザが対応してるのかを調べないとな・・・
XULRunnerつかってるアプリ(SongBird)を使ってみたけど、
なんかXULRunnerが原因で落ちたしww
もう使う気にならんwww

とりあえずのものならユーザにOperaさえおとしてもらえば作れそう
ついでにXULで書けばFirefox用も作れそう・・・

ちなみに一番Flashと相性が良いのはFlex2だろうな・・・
でもローカル実行環境が実質ないな・・・

Flash Playerって書いてるケド、Adobeでは「Apollo」っていう実行環境を
用意してるみたい

HTMLとFlashとPDFをレンダリングするらしい

でも、

まだリリースしてない・・・orz

でもちょっと期待してFlex2 SDKでも落としてこようかな
と思ったらこのマシン必要スペックみたしてないwwwwww(;д;)

  • 512MB以上のRAM(1GB以上を推奨)
今256Mしかないの・・・
メモリ増設するか・・・mjd・・・


とういワケで今のところ実現できるとしたら
・Opera、FireFox
・W3C(実質全ブラウザ?・・・ブラウザ立ち上げ時のみなのかしら・・・)
・Apollo(リリース待ち&増設待ち)

という状況・・・


でもYahoo! Widget開発してみたいな・・・

キャプチャ機能だけYahoo! Widgetでつくろうかな・・・

2007年2月10日土曜日

Notepad++まとめ

ついでなんでBlogがてら開発中に気づいた使いかたのメモw

Notpad++
とりあえずデフォでは日本語環境ではきつい・・・

文字化け
設定→スライダー設定
フォントスタイルを日本語対応のフォントに汁

コメント関連は特にフォントが設定されてたりするので
コメントも日本語対応のフォントに設定汁

関連付け
Widgetの.konファイルとか、関連付けがされてないファイルは
黒一色でみづらくなるので関連付け汁

設定→スライダー設定
関連付けしたい言語を選択(.konファイルはxmlなのでxmlを選択)
下の方に「ユーザ拡張子」というのがでてくるので拡張子を登録汁

Widget開発仕様
widgetを作ろうって考えるならこれはすごく重要だった
君の書いたWidgetをもしもYahoo! Widget Engine で動かしたかったら
エディタのフォーマットは「UTF-8」に汁

フォーマット→UTF-8フォーマットを選択汁

とりあえずGIMPをインストールしてみる

どうもlunchfreakです。

アプリケーションのGUI作成用にGIMPを使ってみることにしたワケで
今ちょうどインスコ中なんでもうBlog後から書くのがマンドクサイので(ヲイ
実況中継がてらまとめちゃおうかと

なんだかいろんな人がパッケージ化して公開してるみたいなんですが、
なんだかよくわかんないので本家のものを落とすことにします。
以下GIMP(本家のパッケージ)のインストールの仕方です。




りんく
・GIMP本家
http://www.gimp.org/

・GIMP for Windowsダウンロードページ
http://gimp-win.sourceforge.net/stable.html


Download
GIMPを使うにはどうやら GTK+っていうツールキッドがないと実装しないようで
ダウンロードしなきゃいけないのは

・GIMP本体
・ GTK+ らんたいむなんちゃら

インストール
とりあえずふたつのZIPを解凍
セットアップファイルがでてきたので

本体の方からインスコしようとしたらなんか警告が・・・

ちょw

ちゃんと読まなかったけどなんかGTK+がなんちゃらってかいてあるので
GTK+がないとだめなんだと勝手に解釈してGTK+からインスコ

・GTK+
GTK+をインストーラにしたがってセットアップ
最後に言語を選べるみたいなチェックボックスがでてきたのでチェック

言語設定らしきものがでてきたんで
とりあえずカレントユーザとAll User両方日本語にしてみる。


・GIMP本体
で本体のインストール
インストーラに従っていくと、ライセンスやらディレクトリやら見慣れた内容なので
サクサク[Next]を押してると
なんだかチェックボックスがイパーイが画面が・・・

ん?

せれくとふぁいるたいぷあそしえーしょん・・・

多分ファイルの関連付けかと思うのでとりあえずスルーw
GIMPってフォトショのファイルがみれるんだね(・∀・)

ショートカットが嫌いなのでデスクトップアイコン作成のチェックもはずす。

あとはインストーラーに従って終了。


ユーザインストール
これで終わりかとおもいきやなんかまだあんだねw
GTK+の言語設定のおかげなのかちゃんと日本語でかかれてます。

なんかユーザ単位の設定っぽい

なんかディレクトリの説明とかでてきたけど
とりあえずスルーw



途中でパフォーマンスチューニングという画面が

・タイルキャッシュサイズ
・スワップ用ディレクトリ

ディレクトリとかデフォのまんまでいいとして

タイルキャッシュサイズ
これは重要そうだ

なんせ今使ってるマシンはメモリ256Mしかないんで
メモリ関連の設定となると敏感です、えぇ
さすがUNIXのソフトだけあって
アプリケーションがメモリ管理とかしちゃうのか・・・

とりあえずデフォでは128M

多分作業中はfirefoxとiTunesが起動してるので
その二つのプロセスをみてると

iTunes 30M
Firefox 50M

えぇ

どちらもメモリ喰らいなアプリですね・・・
ほんとうにありg(ry

とりあえずFirefoxは見るページによってもっと増えるだろうし
他のプロセスも考えて

つかマンドクセぃので
100Mぐらいと考えて

残り156か・・・

とりあえずこの数値で[次へ]


あ、もう起動しちゃうのね













そしてとてもフレンドリーww


ちなみにタイルキャッシュサイズについてもうちょっとググってみたら
メモリの2/3ぐらいでいいそうです。

2007年2月7日水曜日

とりあえず何のwidget開発するんでつか

最近YAMAHA音楽教室のCMを見てるとつい
そっふぁみそふぁみれ~♪

を一緒に口ずさんでしまいます。
寒いです。



どうもlunchfreakです。




さすがにどんな内容のwidgetをつくるつもりなのか書かないまま話を続けるのはけっこう至難の業かと


lunchfreakは絵チャットによくいるんですが
要はその絵チャットを表示するwidgetをつくろうかと・・・


重くなんない程度に便利そうな機能をつけるつもりです。

専ブラって感じですね。

これをwidgetで実現できればかなり軽いアプリケーションができるかと

2007年2月4日日曜日

とりあえずHello World的な








今このblogを編集中このエラーが出た後、ブラウザが落ち・・・ちょww

いや、おちつけ!
Firefox2.0からセッションの回復が出来るようになったんだ
いつもウザイと思ってたけど、今日はさすがに回復ボタンをポチっとな・・・

問題は途中まで書いたキャッシュが残っているかどうかだ・・・

ハッ!タイトル残テル(・∀・)

本文は・・・


ア・・・(・д・)キャッシュ残さない設定にしてたんだ・・・


ほんとうにあ(ry



さすがに256じゃ限界か・・・
メモリ増設も考えたケドいつもマシン自体を買い換えたいという誘惑に吸収されていく・・・
なもんで最近はいかにメモリをつかわせないか、考えながら使おうかなぁと
思っているだけです、えぇ



もうあれだ



ローカルでエディタで書いてから投稿しよw
こういうときこそ超軽量アプリケーション「メモ帳」を使ってあげないとねw



あ、どうもlunchfreakです。




とりあえず開発環境は整えた(?)ので、もうコード書くしか道はないんだぜ?


でも、みんなどんな書きかたしてるかぐらいはみておきたい
というかそうでもしないと、ワカリマセン>д<



まずは.konファイル

xmlって自分で勝手にタグを定義していいんでつねww
はじめて知った(・∀・)

どうりで検索かけてもでてこないww

みんささんリファレンスに書いてあるのを駆使しつつ、
やっぱデータ定義としてうまく使っている様子です。

こうやって使うのかぁ(∀`

xmlからjsファイルとか呼び出すには、

<action trigger="onLoad" file="ファイル名">

とかやってまつね。


フムフム(ー`


とりあえず、windowタグだけでうごきそうなんで、こんな.konファイルを作ってみた。

/********************************************

<?xml version="1.0" encoding="UTF-8"?>
<widget debug="on">
 <window
  name="test"
  height="120"
  width="120"
  visible="true"
 />
 <text
  name="test_txt"
  data="Widgetはじめますた。"
  alignment="center"
 />
</widget>

*********************************************/


んで、まんまできた.konファイルをダボークリク(・д・)ウゴケー

結果↓


















えぇっと・・・


なんでしょうwww
水色の枠は説明用に画像に書き込んだので、
これどうみても

やっちゃった感がwww

とりあえずにオフセットを設定してみる。
どうやら
 vOffsetが上からの位置で
 hOffsetが左からの位置のよう


あ!よく見たら警告でてるwww

なんだかエンコーディングがだめらしいw
英語わかんないけど、最後こんな状態でリリースすんなって書いてある気がするのは気のせい?w

ほぉ・・・

とりあえず、xml自体はUTF-8を宣言しているので
あとはエディタ?


ということでNotepad++の設定とか見たが、エンコーディングの設定らしき項目がない・・・
困って数秒エディタを眺めていると、「フォーマット」というメニューがるではないか(・∀・)
選択してみると、案の定エンコーディングが「ANSI」になっとりますたw


つーわけで
あとはオフセットの位置やら、フォントサイズやらを調整してできたのがコレ↓

/********************************************

<?xml version="1.0" encoding="UTF-8"?>
<widget debug="on">
 <window
  name="test"
  height="120"
  width="256"
  visible="true"
 />
 <text
  name="test_txt"
  data="Widgetはじめますた。"
  size="14"
  vOffset="20"
  hOffset="120"
  alignment="center"
 />
</widget>

********************************************/



うんでこれを実(ry

















キター(・∀・)ーーーー!!



つか、widgetって実はこの.konファイルだけで動くってことだなw



よし!


今日はもういいやw