■■■■■■□■■■■■■□■■■■■■□□□□□■■□■■■■■■
■■□□■■□■■□□■■□■■□□□□□■■■■■■□■■□□□□
■■□□■■□■■□□■■□■■□□□□□■■□□■■□■■■■■■
■■□□■■□■■□□■■□■■□□□□□■■□□■■□□□□□■■
■■□□■■□■■■■■■□■■■■■■□■■■■■■□■■■■■■

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
  1. --/--/--(--) --:--:--|
  2. スポンサー広告

ckw mod関係

僕の方からckw modをリリースすることはないと思いますが、
僕は自分でビルドしたものを使っています。

まず、main.cppのSTARTUPINFOを書き換えるところ
craftwaveさんのHP参照(http://craftwave.blogspot.com/2010_05_01_archive.html)

書き換えるべきパラメータは
セグメントFS -> Thread Environment Block-> Process Environment Block -> ProcessParameters
にあるみたいです。
gccだと__readfsdwordが無かったのでアセンブラで書いたんですが、
結局NtCurrentTebを使うことにしました。
また、TEBPEBも構造体が定義されておらず
結局マジックナンバーは消せなかった…

//   DWORD*  pflags = (DWORD*)
0x00020068; /* private memory */
//   WORD*  pshow  = (WORD*)  0x0002006C;

//     INT_PTR peb = (INT_PTR)__readfsdword(0x30);
//     INT_PTR peb; asm("movl %%fs:0x30, %0" : "=q" (peb));
  INT_PTR peb = *(INT_PTR*)((INT_PTR)NtCurrentTeb() + 0x30);
  PRTL_USER_PROCESS_PARAMETERS param = *(PRTL_USER_PROCESS_PARAMETERS*)(peb + 0x10);
  DWORD* pflags = (DWORD*)&(param->dwFlags);
  WORD* pshow = (WORD*)&(param->wShowWindow);


次に設定ファイル(option.cpp)。
変更したかったのは2点。
・nyacusとかvimにあわせて設定ファイルの名前を_ckwにしたい!
・上記と同じ理由で設定ファイルをHOMEディレクトリに置きたい!
ってことで以下。

static bool getconfigfile(const char* env, char *cfgfile, char *path, int size){
  if(GetEnvironmentVariableA(env, path, size)){
    snprintf(path, size, "%s\\%s", path, cfgfile);
    if(PathFileExistsA(path) && !PathIsDirectoryA(path)){
      return true;
    }
  }
  return false;
}

void ckOpt::loadXdefaults()
{
  char path[MAX_PATH+1];

  if(m_config_file[0] == '\0')
  {
    char cfgfile[MAX_PATH] = "_";
    GetModuleBaseNameA(GetCurrentProcess(), NULL, cfgfile+1, MAX_PATH);
    if (char *p = strchr(cfgfile, '.')) *p = '\0';

    // directory execute exists
    if (0 != GetModuleFileNameA(NULL, path, MAX_PATH)){
      char szDrive[MAX_PATH];
      char szDir[MAX_PATH];
      char szBuf[MAX_PATH];
      _splitpath(path, szDrive, szDir, szBuf, szBuf);
      _makepath(path, szDrive, szDir, cfgfile, NULL);
      _loadXdefaults(path);
    }

    // HOME or USERPROFILE
    path[0] = '\0';
    if (!getconfigfile("HOME", cfgfile, path, MAX_PATH)){
      getconfigfile("USERPROFILE", cfgfile, path, MAX_PATH);
    }
    if (path[0] != '\0') _loadXdefaults(path);
  }
  else
  {
    path[0] = '\0';
    strcpy(path, m_config_file);
    _loadXdefaults(path);
  }

  if(GetEnvironmentVariableA("HOME", path, MAX_PATH)) {
    strcat(path, "\\.Xdefaults");
    _loadXdefaults(path);
  }
}


スポンサーサイト

テーマ:フリーソフト - ジャンル:コンピュータ

  1. 2010/05/23(日) 13:12:30|
  2. フリーソフト
  3. | トラックバック:0
  4. | コメント:0

くつしたのぼうけん

靴下_1フンを掃除する間、入っててくれないかな~
って思って誘導したら入ってくれました!靴下。
結構気に入ってる?しばらく入ってゴソゴソと探検していたようです。
でもそれ俺が今日1日はいてた靴下だよ?
靴下_2


テーマ:爬虫類 - ジャンル:ペット

  1. 2010/05/22(土) 22:00:32|
  2. ヘビ
  3. | トラックバック:0
  4. | コメント:0

ckw mod関係

猫ロキPさんから
ckw 0.8.10-mod+deflis-4
のリリースの連絡を頂きました。
DLやら、なんやかんやは以下のサイト参照。
ttp://github.com/deflis/ckw-mod
ttp://wiki.github.com/deflis/ckw-mod/
ttp://deflis.github.com/ckw-mod/

自分のブログにアップしていたのは
消そうと思ってたんだけど、
なんか面倒臭くなってしまったので放置…


コメントへの返信とかアナウンスとか
遅れてしまって申し訳ないです。
先週は丸々飲んだくれてしまっていました…
あー金がない、給料日まであと1週間以上あるっつーのに。

テーマ:フリーソフト - ジャンル:コンピュータ

  1. 2010/05/16(日) 14:55:34|
  2. フリーソフト
  3. | トラックバック:0
  4. | コメント:0

S→M

初M

注) ジップロックのフタは
床材飲まないように
5日ほど前から
プッチのエサのサイズを
ピンクマウスSからピンクマウスMに
サイズアップしました~

ちょっと大きすぎないか心配だったんですが、
全然余裕で飲めてました。
ずっと見てると気付かないけど
徐々に大きくなっているのかな?

大きくしたいとか思っていないし、
無理に急いで大きくする気もないんですが、
わが子(?)の成長は嬉しいものですね!

テーマ:爬虫類 - ジャンル:ペット

  1. 2010/05/16(日) 14:17:58|
  2. ヘビ
  3. | トラックバック:0
  4. | コメント:0

あー

> Nomoroka3.6.5preにしてからウィンドウの最大化から元に戻す
> が出来ないことが頻繁に発生していました。
知らなかったけど、3.6.5もOOPP入ってるらしい。
そういえばLorentz3.6.4pre使ってみたときも
同様の問題が発生していた気がする。
もしかしたら、これが原因なのかな?

テーマ:フリーソフト - ジャンル:コンピュータ

  1. 2010/05/08(土) 06:35:05|
  2. bbLean
  3. | トラックバック:0
  4. | コメント:0

bbLea mod 100507 & bbLeanSkin mod 100507

久しぶり(?)の更新です。てかブログ自体久しぶりの更新w

bbLean mod 100507
僕はayakawaさんのFirefox野良ビルドを使わせてもらってるんですが、
Nomoroka3.6.5preにしてからウィンドウの最大化から元に戻す
が出来ないことが頻繁に発生していました。
とりあえず、bbLeanに問題があることは分かって修正してみたんですが、
なんでこれでOKなのかは不明…
SendMessageTimeoutSC_RESTOREしたあと、
ある処理をしているんですが、
そのある処理を、SendMessageCallbackで処理が終わった後に
コールバック関数内で処理するようにしてみたところ、
ちゃんとウィンドが元のサイズに戻るようになりました。
でも、SendMessageTimeoutも処理が終わるまで制御返ってこないはずなんだけどな~
(ちゃんと確認してないけど、タイムアウトはしてないと思う)。

bbLeanSkin mod 100507
タイトルバーにタイトルが収まりきらない時"..."って表示されますが、
あれが何かはみ出て表示されてて気になってたんですが、
僕が単に間違っていただけでした。ごめんなさい。
InflateRectしなきゃないところをOffsetRectしてました。

DLはこちらから
bbLean::modとか自作plugin最新版まとめ

テーマ:フリーソフト - ジャンル:コンピュータ

  1. 2010/05/07(金) 19:51:20|
  2. bbLean
  3. | トラックバック:0
  4. | コメント:0
home

プロフィール

Author:nocd5
30歳(男)
会社員

Last.fm



最近の記事

--年--月--日 (--)
スポンサーサイト
2010年05月23日 (日)
ckw mod関係
2010年05月22日 (土)
くつしたのぼうけん
2010年05月16日 (日)
ckw mod関係
2010年05月16日 (日)
S→M
2010年05月08日 (土)
あー
2010年05月07日 (金)
bbLea mod 100507 & bbLeanSkin mod 100507

カテゴリー

カレンダー

04 | 2010/05 | 06
Sun Mon Tue Wed Thu Fri Sat
- - - - - - 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 - - - - -

最近のコメント

最近のトラックバック

ブロとも申請フォーム

この人とブロともになる

ブログ内検索

Amazonアソシエイト

RSSフィード

リンク

このブログをリンクに追加する

FC2ブログランキング

FC2Blog Ranking

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