[
板情報
|
カテゴリランキング
]
したらばTOP
■掲示板に戻る■
全部
1-100
最新50
|
メール
|
1-
101-
201-
301-
401-
501-
601-
701-
801-
901-
1001-
1101-
1201-
1301-
1401-
1501-
1601-
1701-
1801-
1901-
2001-
2101-
2201-
2301-
2401-
2501-
2601-
2701-
2801-
2901-
3001-
3101-
3201-
3301-
3401-
3501-
3601-
3701-
3801-
3901-
4001-
4101-
4201-
4301-
4401-
4501-
4601-
4701-
4801-
4901-
5001-
5101-
5201-
5301-
5401-
この機能を使うにはJavaScriptを有効にしてください
|
管理人の独り言(プログラミング関連)
1
:
みみず★
:2008/08/10(日) 23:28:15
あまりにもプログラミングの内容が増えすぎた。
よって隔離スレの中を更に隔離。
918
:
774さん
:2008/11/26(水) 20:39:38 ID:CENbthlg0
やっぱり、ブラッディ・マンデイか忘れたけれども、あれ都合よすぎだよな。
というか、まず、シリアルナンバーと顧客情報が対応しているはずがねーんだよ。
もうその時点でSQLインジェクションなんて(ry
-----
SQLインジェクションが出来るシステムなんて脆弱すぎだろJK
919
:
774さん
:2008/11/27(木) 13:45:57 ID:CENbthlg0
俺のSleipnirでGoogle Maps言って、そのウィンドウを閉じようとするととてつもなく重くなる。
どうさ中は軽いのにな・・・
920
:
774さん
:2008/11/27(木) 19:29:05 ID:CENbthlg0
動画の再生はエコノミーモードでいい。
だけれどもダウンロードは通常画質がいい。
921
:
774さん
:2008/11/27(木) 19:42:48 ID:CENbthlg0
Minefield流石!
alpha以前だけあって、常用には耐えかねるよね!
という事で、タブの移動が出来なくなった・・・
922
:
774さん
:2008/11/28(金) 13:48:07 ID:CENbthlg0
なぜ外部からWindowsマシンに侵入できるのか?:ITpro
http://itpro.nikkeibp.co.jp/article/COLUMN/20081022/317467/
画面で見るLinux「Ubuntu 8.10 Desktop 日本語 Remix CD」:ITpro
http://itpro.nikkeibp.co.jp/article/NEWS/20081104/318475/
Linuxコマンド集 INDEX:ITpro
http://itpro.nikkeibp.co.jp/article/COLUMN/20060224/230573/
なぜネットワーク通信を盗聴できるのか?:ITpro
http://itpro.nikkeibp.co.jp/article/COLUMN/20081022/317465/
923
:
774さん
:2008/11/28(金) 15:23:25 ID:CENbthlg0
Amazon.co.jp: Short Coding ~職人達の技法~: Ozy, やねうらお: 本
http://www.amazon.co.jp/exec/obidos/ASIN/4839925232/
-----
驚愕のソースらしい。
924
:
774さん
:2008/11/28(金) 16:42:37 ID:CENbthlg0
連載:C# 3.0入門 − @IT
http://www.atmarkit.co.jp/fdotnet/csharp30/index/index.html
925
:
774さん
:2008/11/28(金) 17:10:25 ID:CENbthlg0
ActionScript3 最適化・高速化Tips 簡易まとめ - ConquestArrow.addEventListener(); - actionscriptグループ
http://actionscript.g.hatena.ne.jp/ConquestArrow/20070621/1182359767
926
:
774さん
:2008/11/28(金) 18:27:21 ID:CENbthlg0
@IT:連載 改訂版 C#入門
http://www.atmarkit.co.jp/fdotnet/csharp_abc2/index/
927
:
774さん
:2008/11/28(金) 18:29:47 ID:CENbthlg0
統計科学のための電子図書システムのWebページ
http://www.sci.kagoshima-u.ac.jp/~ebsa/index.html
928
:
774さん
:2008/11/28(金) 18:31:59 ID:CENbthlg0
web book
http://www.sun-inet.or.jp/~yaneurao/webbook/
-----
本がただでよめるよー。
プログラミング関連の本一杯。
929
:
774さん
:2008/11/28(金) 19:50:34 ID:CENbthlg0
http://www.amazon.co.jp/exec/obidos/ASIN/4320017382/
930
:
774さん
:2008/11/28(金) 19:50:52 ID:CENbthlg0
Amazon.co.jp: これなら分かる応用数学教室―最小二乗法からウェーブレットまで: 金谷 健一: 本
http://www.amazon.co.jp/exec/obidos/ASIN/4320017382/
-----
タイトルがなくなってしまった・・・
もう一度。
931
:
774さん
:2008/11/29(土) 11:13:00 ID:CENbthlg0
Wataru's memo(2003-10-01)
http://memo.wnishida.com/?date=20031001
-----
ぬ!
RDTSC 命令だと・・・
64bitで1Hz毎にインクリメントとか・・・・
どんだけええええええええええええええええ
932
:
774さん
:2008/11/29(土) 11:19:10 ID:CENbthlg0
どんだけ高性能だよwwwwwwwwwwwwwwwwwwwwwwwww
-----
#include <iostream>
unsigned long long int _clock(){
__asm{
rdtsc
}
}
int main(int argc, char **argv){
unsigned long long int t = _clock();
std::cout << _clock() << std::endl;
std::cout << _clock() << std::endl;
std::cout << _clock() << std::endl;
std::cout << _clock() << std::endl;
}
933
:
774さん
:2008/11/29(土) 11:25:59 ID:CENbthlg0
出来るだけ、呼び出す間隔を小さくしてみた。
-----
#include <iostream>
unsigned long long int _clock(){
__asm{
rdtsc
}
}
int main(int argc, char **argv){
#define baka(x) unsigned long long int x = _clock()
#define aho(x) std::cout << (x) << std::endl
baka(i);
baka(j);
baka(k);
baka(l);
baka(m);
baka(n);
baka(o);
baka(p);
baka(q);
baka(r);
baka(s);
baka(t);
baka(u);
baka(v);
baka(w);
baka(x);
baka(y);
baka(z);
aho(i);
aho(j);
aho(k);
aho(l);
aho(m);
aho(n);
aho(o);
aho(p);
aho(q);
aho(r);
aho(s);
aho(t);
aho(u);
aho(v);
aho(w);
aho(x);
aho(y);
aho(z);
#undef aho
#undef baka
}
934
:
774さん
:2008/11/29(土) 11:33:18 ID:CENbthlg0
C:\Documents and Settings\Owner\My Documents\Visual Studio 2008\Projects\test_te
st\Release>test_test & test_test & test_test
4659306301320
4659306301364
4659306301408
4659306301452
4659306301496
4659306301540
4659306301584
4659306301628
4659306301672
4659306301716
4659306301760
4659306301804
4659306301848
4659306301892
4659306301936
4659306301980
4659306302024
4659306302068
4659343833528
4659343833572
4659343833616
4659343833660
4659343833704
4659343833748
4659343833792
4659343833836
4659343833880
4659343833924
4659343833968
4659343834012
4659343834056
4659343834100
4659343834144
4659343834188
4659343834232
4659343834276
4659372103020
4659372103064
4659372103108
4659372103152
4659372103196
4659372103240
4659372103284
4659372103328
4659372103372
4659372103416
4659372103460
4659372103504
4659372103548
4659372103592
4659372103636
4659372103680
4659372103724
4659372103768
935
:
774さん
:2008/11/29(土) 11:49:56 ID:CENbthlg0
おおこれいいね!
-----
>その場合、問題になるのが静的変数の実体を記述する場所です。
>C++では、実体はヘッダファイル(.h)ではなくソースファイル(.cpp)に記述する必要があります。
>ヘッダファイルに実装を全て記述しているのに、静的変数のためにソースファイルを作るのも
>バカバカしいですよね。
>
>そういう場合、__declspec(selectany)を使うと、ヘッダファイル内に実体を記述することができます。
>うーーーん、便利。なお、当然ですが、VC++の独自拡張です。
---
__declspec(selectany) declarator - VC++
http://www.ailight.jp/blog/sha256/archive/2005/03/22/5258.aspx
936
:
774さん
:2008/11/29(土) 11:56:21 ID:CENbthlg0
京都観光を終えて - mala‐ニコニコ動画(秋)
http://www.nicovideo.jp/watch/sm5377545
-----
ほうほう、LivedoorReaderは人気ブログは一時間程度、そうじゃないブログは三時間程度でクロールしているらしい。
直ぐ更新というのは不可能ということは分かっているんだけれども(ry
937
:
774さん
:2008/11/29(土) 12:19:20 ID:CENbthlg0
mixiがこの時期に年齢制限を緩和した本当の理由
http://anond.hatelabo.jp/20081129010631
-----
ほうほう。こういう解釈の方法もありか。
938
:
774さん
:2008/11/29(土) 12:53:25 ID:CENbthlg0
基礎からC++
http://mukun
_mmg.at.infoseek.co.jp/mmg/cpp.html
----
番外編のアルゴリズムでも。
939
:
774さん
:2008/11/29(土) 14:14:30 ID:CENbthlg0
INVALID_ATOM
っていう定数があるじゃん。まあ0なんだけど。
940
:
774さん
:2008/11/29(土) 14:30:09 ID:CENbthlg0
VC++でデバッグしたときに
0xFFFFFFFFが0FFFFFFFFと出てびびった。
0がついてるから、0x0FFFFFFF(Fが七個)だと思っただけなのだが。
941
:
774さん
:2008/11/29(土) 14:39:43 ID:CENbthlg0
があああああああああああああ
sizeof(Data::mutexName)
とか出来ないのがもどかしいいいいいいいいいいい
942
:
774さん
:2008/11/29(土) 14:41:51 ID:CENbthlg0
lstrlenAとlstrlenWとlstrlenは使い分けましょうね!
943
:
774さん
:2008/11/29(土) 14:46:59 ID:CENbthlg0
そういえば、
sizeof(STRUCTURE::ARRAY[0])
とか言う書き方は出来るのか?出来ぬのか?
944
:
774さん
:2008/11/29(土) 15:47:34 ID:CENbthlg0
おお。
色々とちょっと上のほうの_clock関数を利用して遊んでいるのだが、本当にプロセスのプライオリティを変更すると出る値が大きくなる(差を表示している。)
945
:
774さん
:2008/11/29(土) 15:49:12 ID:CENbthlg0
こんな感じ。
#define STRICT 1
#include <iostream>
#include <functional>
#include <algorithm>
#include <iterator>
#include <string>
#include <valarray>
#include <cstdio>
#include <cstdlib>
#include <ctime>
#include <tchar.h>
#include <windows.h>
unsigned long long int _clock(){
__asm{
rdtsc
}
}
int main(int argc, char **argv){
for(;;){
long long int a = _clock();
Sleep(0);
long long int b = _clock();
if(b - a >= 1000000){
std::cout << b - a << std::endl;
}
}
return 0;
}
946
:
774さん
:2008/11/29(土) 15:49:58 ID:CENbthlg0
なんかこう表示してみると、CPUって結構暇なんだね。
947
:
774さん
:2008/11/29(土) 15:53:07 ID:CENbthlg0
タスクマネージャでプライオリティを高にしてみたら、音楽の再生が止まりそうになった。
というか、レコード見たいに同じところを再生するって言う。
これはハードウェアのキャッシュの関係って言うことでいいのかな?
948
:
774さん
:2008/11/29(土) 16:41:26 ID:CENbthlg0
せっかく小学四年のころからパソコンに触ってワードとか弄くっているぐらいだったら、プログラミングに興味を持ってそのころからパソコンを色々と弄くって遊んでいたほうが面白かったかもしれないなあと、過去の自分を否定してみる。
いや、それより前に中学の時からでもCとかC++に触れておくべきだったと思う。もうねVBなんて駄目なんですよ。
949
:
774さん
:2008/11/29(土) 16:58:14 ID:CENbthlg0
0b
ってC++0xで却下されたんですか。そうですか。
950
:
774さん
:2008/11/29(土) 17:43:40 ID:CENbthlg0
コンピュータアーキテクチャの話 | コラム | エンタープライズ | マイコミジャーナル
http://journal.mycom.co.jp/column/architecture/index.html
951
:
774さん
:2008/11/29(土) 18:41:07 ID:CENbthlg0
正規表現エンジンを作ろう:CodeZine(コードジン)
http://codezine.jp/article/corner/237
-----
本当にインターネットというものは面白いものが一杯転がっている。
952
:
774さん
:2008/11/29(土) 20:26:24 ID:CENbthlg0
法的に危ないファイルを配布するときはさ、zipで圧縮した上でさ、なんか適当なファイルの差分を掲載すればいいと思う。
確か、Windows XPには全て0x00な大きなファイルを作るコマンドがあるから(※)これとの差分をとればいいと思う。
でパッチを作ってファイル名を“パッチを作ったときに使ったファイル名.圧縮形式の拡張子”にすれば良いと思う。
まあ、これをここで書く時点でだめなんだけれどもね。
256通りあるしいろいろと試すといいかもしれないね!
-----
※
@IT:Windows TIPS -- Tips:巨大なサイズのファイルを簡単に作る方法
http://www.atmarkit.co.jp/fwin2k/win2ktips/243largefile/largefile.html
953
:
774さん
:2008/11/29(土) 20:29:05 ID:CENbthlg0
最近コマンドプロンプトを使うことが気のせいか増えた。きっと気のせいだ。
そこで気になっていることがあって、
cd Documents and Settings
というのが通るんですね。意外ですね。で
cd..
もいけるし、
cd\
もいけるんだ。凄いね。
954
:
774さん
:2008/11/29(土) 22:16:43 ID:CENbthlg0
ほうほう。
Firefoxはフレームによる拡大縮小をOSに任せて、ステータスバーの右側にある名前知らないけれども、それを掴んで大きさを変えるときはFirefox側で拡大縮小を行っているみたい。
955
:
774さん
:2008/12/01(月) 14:58:56 ID:CENbthlg0
微妙にMinefieldのメニューの処理がもっさりする。
それ以上にSleipnirはもっさりする。
956
:
774さん
:2008/12/01(月) 19:52:05 ID:CENbthlg0
[HTTP headers]
In = FALSE
Out = TRUE
Key = "URL: test"
Match = "
http://extensions.tabbrowser.jp/skins/files/christmas2.si"
Replace = "$RDIR(
http://mimizu.karou.jp/christmas2.si)"
-----
これをProxomitronに入れて、クリスマスの奴をインストールすれば楽勝。
まあ、siファイルを直ぐに消すから意味は無いんだけれども。
957
:
774さん
:2008/12/01(月) 19:53:04 ID:CENbthlg0
Proxomitronで、ファイルへのリダイレクトがうまくいかない。
というか、普通に置き換えたほうが良かったかもしれない。
まあ、これは今後の懸案事項って言うことでいいや。
直ぐに出来そうなんだけれども。
958
:
774さん
:2008/12/01(月) 21:15:28 ID:CENbthlg0
という事で、汎用的に書いてみた。
Proxomitronの正規表現使いにくい・・・
------
[HTTP headers]
In = TRUE
Out = FALSE
Key = "Content-Type: SleipnirTest"
URL = "extensions.tabbrowser.jp/?++.si"
Match = "text/plain"
Replace = "text/css; fake"
[Patterns]
Name = "Sleipnir Version"
Active = TRUE
URL = "extensions.tabbrowser.jp/?++.si"
Limit = 256
Match = "SleipnirVersion=[0-9]+"
"$STOP()"
Replace = "SleipnirVersion=2000000"
959
:
774さん
:2008/12/02(火) 19:08:11 ID:CENbthlg0
とわいらいと・せれなーで: Windows API プログラミング序説 DAW 製作への遠く長い道程 その2
http://yukki-ts.spaces.live.com/Blog/cns!5DF20734B33AF47A!510.entry
960
:
774さん
:2008/12/02(火) 19:51:32 ID:CENbthlg0
sarファイルを処理するプログラムを書いていたんだけれども、面倒になった。やめる。
#define STRICT 1
#include <iostream>
#include <fstream>
#include <functional>
#include <algorithm>
#include <iterator>
#include <string>
#include <valarray>
#include <vector>
#include <map>
#include <cstdio>
#include <cstdlib>
#include <ctime>
#include <tchar.h>
#include <windows.h>
unsigned long long int _clock(){
__asm{
rdtsc
}
}
typedef unsigned int uint;
class SarManager{
protected:
std::ifstream file;
public:
SarManager(const char *filename)
: file(filename, std::ios::binary | std::ios::in)
{
if(file.fail()) throw 9999;
}
void
Write(const char *path){
if(IsEOF()) throw 1;
std::ofstream ofile(path, std::ios::binary | std::ios::out);
uint size = 0;
{
char b;
while(file.read(&b, sizeof(b) / sizeof(char)), !IsEOF() && '0' <= b && b <= '9') size = size * 10 + b - '0';
if(b != 0x0A){
throw 2;
}
}
if(size == 0){
throw 3;
}
{
char *p = new char[size];
char b;
file.read(p, size);
file.read(&b, sizeof(b) / sizeof(char));
if(b != 0x0A){
throw 4;
}
ofile.write(p, size);
delete [] p;
}
}
bool
IsEOF(){
return file.eof();
}
};
int main(int argc, char **argv){
if(argc < 2) return -1;
try{
SarManager sm(argv[1]);
int i = 0;
while(!sm.IsEOF()){
char str[1024];
sprintf(str, "%05d", i);
sm.Write(str);
i++;
}
}catch(int e){
if(e == 9999){
std::cerr << "ファイルが見つかりません><" << std::endl;
}
std::cerr << "Error : NO." << e << std::endl;
return -2;
}catch(...){
std::cerr << "Error" << std::endl;
return -3;
}
return 0;
}
961
:
774さん
:2008/12/02(火) 19:54:22 ID:CENbthlg0
yesコマンド実装してみたwww
int main(int argc, char **argv){
const char *str = argc < 2 ? "y" : argv[1];
for(;;) std::cout << str << std::endl;
}
962
:
774さん
:2008/12/02(火) 19:55:41 ID:CENbthlg0
こっちの方が早いかww
----
int main(int argc, char **argv){
const char *str = argc < 2 ? "y" : argv[1];
for(;;) std::puts(str);
}
963
:
774さん
:2008/12/02(火) 20:20:56 ID:CENbthlg0
正直ファイルのエラー検出は滅茶苦茶多くないといけないと思う。
ユーザーが何を入力するか分からない。
プログラマーはユーザーなんて信用してはいけないというお話。
964
:
774さん
:2008/12/02(火) 20:50:04 ID:CENbthlg0
フーリエ変換理解できない><
965
:
774さん
:2008/12/03(水) 19:03:11 ID:CENbthlg0
パールも分からん。
966
:
774さん
:2008/12/03(水) 19:20:06 ID:CENbthlg0
暇だしsarファイルを解析する。
まあ、チェックサムの意味が分からないので、そこだけ解析する。
967
:
774さん
:2008/12/03(水) 19:21:37 ID:CENbthlg0
という事で、基本的にはファイルの関数を開くときは必ずCreateFileを利用している筈なので、そこらへんをフックする。
968
:
774さん
:2008/12/03(水) 22:12:41 ID:CENbthlg0
CPU Disasm
Address Hex dump Command Comments
410344D0 /$ 55 PUSH EBP ; FenrirLib_fx.410344D0(guessed Arg1,Arg2)
410344D1 |. 8BEC MOV EBP,ESP
410344D3 |. 51 PUSH ECX
410344D4 |. 53 PUSH EBX
410344D5 |. 33DB XOR EBX,EBX
410344D7 |. 57 PUSH EDI
410344D8 |. 8D4D FC LEA ECX,[LOCAL.2]
410344DB |. 891E MOV DWORD PTR DS:[ESI],EBX
410344DD |. E8 F949FFFF CALL ??0FString@@QAE@XZ
410344E2 |. 68 447F0041 PUSH FenrirLib_fx.41007F44 ; /Arg2 = FenrirLib_fx.41007F44
410344E7 |. FF75 0C PUSH DWORD PTR SS:[ARG.2] ; |Arg1 => [ARG.2]
410344EA |. FF15 38150041 CALL DWORD PTR DS:[<&MSVCR71._wfopen>] ; \MSVCR71._wfopen
410344F0 |. 8BF8 MOV EDI,EAX
410344F2 |. 3BFB CMP EDI,EBX
410344F4 |. 59 POP ECX
410344F5 |. 59 POP ECX
410344F6 |. 74 1D JE SHORT 41034515
410344F8 |. 56 PUSH ESI ; /Arg2
410344F9 |. 57 PUSH EDI ; |Arg1
410344FA |. E8 C6FDFFFF CALL 410342C5 ; \FenrirLib_fx.410342C5
410344FF |. 84C0 TEST AL,AL
41034501 |. 57 PUSH EDI ; //Arg1
41034502 |. 75 08 JNE SHORT 4103450C ; ||
41034504 |. FF15 30150041 CALL DWORD PTR DS:[<&MSVCR71.fclose>] ; |\MSVCR71.fclose
4103450A |. EB 08 JMP SHORT 41034514 ; |
4103450C |> FF15 30150041 CALL DWORD PTR DS:[<&MSVCR71.fclose>] ; \MSVCR71.fclose
41034512 |. B3 01 MOV BL,1
41034514 |> 59 POP ECX
41034515 |> 8D4D FC LEA ECX,[LOCAL.2]
41034518 |. E8 584AFFFF CALL ??1FString@@QAE@XZ ; [FenrirLib_fx.??1FString@@QAE@XZ
4103451D |. 5F POP EDI
4103451E |. 8AC3 MOV AL,BL
41034520 |. 5B POP EBX
41034521 |. C9 LEAVE
41034522 \. C2 0800 RETN 8
969
:
774さん
:2008/12/03(水) 22:13:31 ID:CENbthlg0
>>968
ここでgzを解凍するようである。
本当の処理はここの中で呼び出されてる関数かな。
970
:
774さん
:2008/12/03(水) 22:15:55 ID:CENbthlg0
>>969
違った。全然違った。
この中で、sarファイルを展開している。
971
:
774さん
:2008/12/03(水) 22:16:54 ID:CENbthlg0
CPU Disasm
Address Hex dump Command Comments
410342C5 /$ 55 PUSH EBP ; FenrirLib_fx.410342C5(guessed Arg1,Arg2)
410342C6 |. 8BEC MOV EBP,ESP
410342C8 |. 81EC 40080000 SUB ESP,840
410342CE |. 8365 F0 00 AND DWORD PTR SS:[LOCAL.5],00000000
410342D2 |. 8365 F4 00 AND DWORD PTR SS:[LOCAL.4],00000000
410342D6 |. 53 PUSH EBX
410342D7 |. 56 PUSH ESI
410342D8 |. 57 PUSH EDI
410342D9 |. 8D85 C0F7FFFF LEA EAX,[LOCAL.529]
410342DF |. 50 PUSH EAX ; /Buffer => OFFSET LOCAL.529
410342E0 |. 68 04010000 PUSH 104 ; |Bufcount = 260.
410342E5 |. C645 FF 00 MOV BYTE PTR SS:[LOCAL.2+3],0 ; |
410342E9 |. FF15 30140041 CALL DWORD PTR DS:[<&KERNEL32.GetTempPat ; \KERNEL32.GetTempPathW
410342EF |. FF75 08 PUSH DWORD PTR SS:[ARG.1]
410342F2 |. 8D85 C8F9FFFF LEA EAX,[LOCAL.399]
410342F8 |. 68 00040000 PUSH 400
410342FD |. 50 PUSH EAX
410342FE |. FF15 D4140041 CALL DWORD PTR DS:[<&MSVCR71.fgets>]
41034304 |. 83C4 0C ADD ESP,0C
41034307 |. 85C0 TEST EAX,EAX
41034309 |. 0F84 A1010000 JE 410344B0
4103430F |. 8B3D 34150041 MOV EDI,DWORD PTR DS:[<&MSVCR71.fread>]
41034315 |. 33DB XOR EBX,EBX
41034317 |. 43 INC EBX
41034318 |> 8D85 C8F9FFFF /LEA EAX,[LOCAL.399]
4103431E |. 68 1C930041 |PUSH FenrirLib_fx.4100931C ; /Arg2 = ASCII "CheckSum="
41034323 |. 50 |PUSH EAX ; |Arg1 => OFFSET LOCAL.399
41034324 |. FF15 D0140041 |CALL DWORD PTR DS:[<&MSVCR71.strspn>] ; \MSVCR71.strspn
4103432A |. 85C0 |TEST EAX,EAX
4103432C |. 59 |POP ECX
4103432D |. 59 |POP ECX
4103432E |. 0F85 85010000 |JNE 410344B9
41034334 |. 8D85 C8F9FFFF |LEA EAX,[LOCAL.399]
972
:
774さん
:2008/12/03(水) 22:17:40 ID:CENbthlg0
4103433A |. 50 |PUSH EAX ; /Arg1 => OFFSET LOCAL.399
4103433B |. FF15 CC140041 |CALL DWORD PTR DS:[<&MSVCR71.atoi>] ; \MSVCR71.atol
41034341 |. 8B75 0C |MOV ESI,DWORD PTR SS:[ARG.2]
41034344 |. FF36 |PUSH DWORD PTR DS:[ESI] ; /<%08d>
41034346 |. 8945 F8 |MOV DWORD PTR SS:[LOCAL.3],EAX ; |
41034349 |. 8D85 C0F7FFFF |LEA EAX,[LOCAL.529] ; |
4103434F |. 50 |PUSH EAX ; |<%s> => OFFSET LOCAL.529
41034350 |. 8D85 C8FDFFFF |LEA EAX,[LOCAL.143] ; |
41034356 |. 68 E8920041 |PUSH FenrirLib_fx.410092E8 ; |Format
4103435B |. 50 |PUSH EAX ; |Buf => OFFSET LOCAL.143
4103435C |. FF15 B0170041 |CALL DWORD PTR DS:[<&USER32.wsprintfW>] ; \USER32.wsprintfW
41034362 |. 83C4 14 |ADD ESP,14
41034365 |. E8 4962FFFF |CALL ?IsWinNT@FMisc@@SG_NXZ
4103436A |. 84C0 |TEST AL,AL
4103436C |. 74 79 |JE SHORT 410343E7
4103436E |. 8D85 C8FDFFFF |LEA EAX,[LOCAL.143]
41034374 |. 50 |PUSH EAX ; /Arg1 => OFFSET LOCAL.143
41034375 |. E8 C059FFFF |CALL ?IsFileExist@FMisc@@SG_NPB_W@Z ; \FenrirLib_fx.?IsFileExist@FMisc@@SG_NPB_W@Z
4103437A |. 84C0 |TEST AL,AL
4103437C |. 75 69 |JNE SHORT 410343E7
4103437E |. 6A 0C |PUSH 0C
41034380 |. 5E |POP ESI
41034381 |. 56 |PUSH ESI ; /Arg3 => 0C
41034382 |. 8D45 E4 |LEA EAX,[LOCAL.8] ; |
41034385 |. 6A 00 |PUSH 0 ; |Arg2 = 0
41034387 |. 50 |PUSH EAX ; |Arg1 => OFFSET LOCAL.8
41034388 |. E8 D7FC0000 |CALL <JMP.&MSVCR71.memset> ; \MSVCR71.memset
4103438D |. 83C4 0C |ADD ESP,0C
973
:
774さん
:2008/12/03(水) 22:17:53 ID:CENbthlg0
41034390 |. 53 |PUSH EBX ; /Arg2
41034391 |. 8D45 D0 |LEA EAX,[LOCAL.13] ; |
41034394 |. 50 |PUSH EAX ; |Arg1 => OFFSET LOCAL.13
41034395 |. FF15 18100041 |CALL DWORD PTR DS:[<&ADVAPI32.Initializ ; \ADVAPI32.InitializeSecurityDescriptor
4103439B |. 53 |PUSH EBX ; /Arg4
4103439C |. 6A 00 |PUSH 0 ; |Arg3 = 0
4103439E |. 53 |PUSH EBX ; |Arg2
4103439F |. 8D45 D0 |LEA EAX,[LOCAL.13] ; |
410343A2 |. 50 |PUSH EAX ; |Arg1 => OFFSET LOCAL.13
410343A3 |. FF15 1C100041 |CALL DWORD PTR DS:[<&ADVAPI32.SetSecuri ; \ADVAPI32.SetSecurityDescriptorDacl
410343A9 |. 8365 EC 00 |AND DWORD PTR SS:[LOCAL.6],00000000
410343AD |. 6A 00 |PUSH 0 ; /hTemplate = NULL
410343AF |. 6A 20 |PUSH 20 ; |Attributes = FILE_ATTRIBUTE_ARCHIVE
410343B1 |. 8D45 D0 |LEA EAX,[LOCAL.13] ; |
410343B4 |. 6A 02 |PUSH 2 ; |CreationDistribution = CREATE_ALWAYS
410343B6 |. 8945 E8 |MOV DWORD PTR SS:[LOCAL.7],EAX ; |
410343B9 |. 8D45 E4 |LEA EAX,[LOCAL.8] ; |
410343BC |. 50 |PUSH EAX ; |pSecurity => OFFSET LOCAL.8
410343BD |. 6A 03 |PUSH 3 ; |ShareMode = FILE_SHARE_READ|FILE_SHARE_WRITE
410343BF |. 68 00000050 |PUSH 50000000 ; |DesiredAccess = GENERIC_WRITE|GENERIC_ALL
410343C4 |. 8D85 C8FDFFFF |LEA EAX,[LOCAL.143] ; |
410343CA |. 50 |PUSH EAX ; |FileName => OFFSET LOCAL.143
974
:
774さん
:2008/12/03(水) 22:18:08 ID:CENbthlg0
410343CB |. 8975 E4 |MOV DWORD PTR SS:[LOCAL.8],ESI ; |
410343CE |. FF15 18140041 |CALL DWORD PTR DS:[<&KERNEL32.CreateFil ; \KERNEL32.CreateFileW
410343D4 |. 8BF0 |MOV ESI,EAX
410343D6 |. 56 |PUSH ESI ; /hFile
410343D7 |. FF15 20140041 |CALL DWORD PTR DS:[<&KERNEL32.FlushFile ; \KERNEL32.FlushFileBuffers
410343DD |. 56 |PUSH ESI ; /hObject
410343DE |. FF15 1C140041 |CALL DWORD PTR DS:[<&KERNEL32.CloseHand ; \KERNEL32.CloseHandle
410343E4 |. 8B75 0C |MOV ESI,DWORD PTR SS:[ARG.2]
410343E7 |> 8D85 C8FDFFFF |LEA EAX,[LOCAL.143]
410343ED |. 68 1C7F0041 |PUSH FenrirLib_fx.41007F1C ; /Arg2 = FenrirLib_fx.41007F1C
410343F2 |. 50 |PUSH EAX ; |Arg1 => OFFSET LOCAL.143
410343F3 |. FF15 38150041 |CALL DWORD PTR DS:[<&MSVCR71._wfopen>] ; \MSVCR71._wfopen
410343F9 |. 85C0 |TEST EAX,EAX
410343FB |. 59 |POP ECX
410343FC |. 59 |POP ECX
410343FD |. 8945 F0 |MOV DWORD PTR SS:[LOCAL.5],EAX
41034400 |. 0F84 9A000000 |JE 410344A0
41034406 |. FF75 F8 |PUSH DWORD PTR SS:[LOCAL.3] ; /Arg1 => [LOCAL.3]
41034409 |. FF15 90150041 |CALL DWORD PTR DS:[<&MSVCR71.malloc>] ; \MSVCR71.malloc
4103440F |. 85C0 |TEST EAX,EAX
41034411 |. 59 |POP ECX
41034412 |. 8945 F4 |MOV DWORD PTR SS:[LOCAL.4],EAX
41034415 |. 74 79 |JE SHORT 41034490
41034417 |. FF75 08 |PUSH DWORD PTR SS:[ARG.1]
4103441A |. FF75 F8 |PUSH DWORD PTR SS:[LOCAL.3]
4103441D |. 53 |PUSH EBX
4103441E |. 50 |PUSH EAX
4103441F |. FFD7 |CALL EDI
41034421 |. 83C4 10 |ADD ESP,10
41034424 |. 3B45 F8 |CMP EAX,DWORD PTR SS:[LOCAL.3]
41034427 |. 75 67 |JNE SHORT 41034490
41034429 |. FF75 F0 |PUSH DWORD PTR SS:[LOCAL.5]
975
:
774さん
:2008/12/03(水) 22:18:27 ID:CENbthlg0
4103442C |. FF75 F8 |PUSH DWORD PTR SS:[LOCAL.3]
4103442F |. 53 |PUSH EBX
41034430 |. FF75 F4 |PUSH DWORD PTR SS:[LOCAL.4]
41034433 |. FF15 28150041 |CALL DWORD PTR DS:[<&MSVCR71.fwrite>]
41034439 |. 83C4 10 |ADD ESP,10
4103443C |. 3B45 F8 |CMP EAX,DWORD PTR SS:[LOCAL.3]
4103443F |. 75 4F |JNE SHORT 41034490
41034441 |. FF75 F4 |PUSH DWORD PTR SS:[LOCAL.4] ; /Arg1 => [LOCAL.4]
41034444 |. FF15 94150041 |CALL DWORD PTR DS:[<&MSVCR71.free>] ; \MSVCR71.free
4103444A |. FF75 F0 |PUSH DWORD PTR SS:[LOCAL.5] ; /Arg1 => [LOCAL.5]
4103444D |. FF15 30150041 |CALL DWORD PTR DS:[<&MSVCR71.fclose>] ; \MSVCR71.fclose
41034453 |. FF75 08 |PUSH DWORD PTR SS:[ARG.1]
41034456 |. 8D85 C8F9FFFF |LEA EAX,[LOCAL.399]
4103445C |. 53 |PUSH EBX
4103445D |. 53 |PUSH EBX
4103445E |. 50 |PUSH EAX
4103445F |. FFD7 |CALL EDI
41034461 |. 83C4 18 |ADD ESP,18
41034464 |. 3BC3 |CMP EAX,EBX
41034466 |. 75 28 |JNE SHORT 41034490
41034468 |. 8A45 F8 |MOV AL,BYTE PTR SS:[LOCAL.3]
4103446B |. FF75 08 |PUSH DWORD PTR SS:[ARG.1]
4103446E |. 0045 FF |ADD BYTE PTR SS:[LOCAL.2+3],AL
41034471 |. FF06 |INC DWORD PTR DS:[ESI]
41034473 |. 8D85 C8F9FFFF |LEA EAX,[LOCAL.399]
41034479 |. 68 00040000 |PUSH 400
4103447E |. 50 |PUSH EAX
4103447F |. FF15 D4140041 |CALL DWORD PTR DS:[<&MSVCR71.fgets>]
41034485 |. 83C4 0C |ADD ESP,0C
41034488 |. 85C0 |TEST EAX,EAX
4103448A |.^ 0F85 88FEFFFF \JNE 41034318
41034490 |> 837D F0 00 CMP DWORD PTR SS:[LOCAL.5],0
41034494 |. 74 0A JE SHORT 410344A0
41034496 |. FF75 F0 PUSH DWORD PTR SS:[LOCAL.5] ; /Arg1 => [LOCAL.5]
41034499 |. FF15 30150041 CALL DWORD PTR DS:[<&MSVCR71.fclose>] ; \MSVCR71.fclose
4103449F |. 59 POP ECX
976
:
774さん
:2008/12/03(水) 22:18:39 ID:CENbthlg0
410344A0 |> 837D F4 00 CMP DWORD PTR SS:[LOCAL.4],0
410344A4 |. 74 0A JE SHORT 410344B0
410344A6 |. FF75 F4 PUSH DWORD PTR SS:[LOCAL.4] ; /Arg1 => [LOCAL.4]
410344A9 |. FF15 94150041 CALL DWORD PTR DS:[<&MSVCR71.free>] ; \MSVCR71.free
410344AF |. 59 POP ECX
410344B0 |> 32C0 XOR AL,AL
410344B2 |> 5F POP EDI
410344B3 |. 5E POP ESI
410344B4 |. 5B POP EBX
410344B5 |. C9 LEAVE
410344B6 |. C2 0800 RETN 8
410344B9 |> 8D85 D1F9FFFF LEA EAX,[LOCAL.397+1]
410344BF |. 50 PUSH EAX ; /Arg1
410344C0 |. FF15 CC140041 CALL DWORD PTR DS:[<&MSVCR71.atoi>] ; \MSVCR71.atol
410344C6 |. 3845 FF CMP BYTE PTR SS:[LOCAL.2+3],AL
410344C9 |. 59 POP ECX
410344CA |.^ 75 C4 JNE SHORT 41034490
410344CC |. 8AC3 MOV AL,BL
410344CE \.^ EB E2 JMP SHORT 410344B2
977
:
774さん
:2008/12/03(水) 22:19:43 ID:CENbthlg0
http://jbbs.livedoor.jp/bbs/read.cgi/computer/38153/1218378495/971-976n
処理の全容。
今からチェックサムの求め方を解析したい。
978
:
774さん
:2008/12/03(水) 22:37:17 ID:CENbthlg0
面倒になった。
明日本格的にやる。
まあ、直ぐ分かりそうなんだけれども。
979
:
774さん
:2008/12/03(水) 22:48:56 ID:CENbthlg0
分かった。
チェックサムは、それぞれのファイルのバイト数の合計だ。
でそれの下8ビット。まあ、つまり普通にunsigned charで足せばいいのだ。
簡単簡単。
実際にそれで合うかプログラムを書く。
まあ、直ぐに出来るだろう。
980
:
774さん
:2008/12/03(水) 23:06:46 ID:CENbthlg0
#include <iostream>
#include <cstdio>
int main(int argc, char **argv){
FILE *file = std::fopen("Hawkeye.sar", "rb");
char buff[1024];
unsigned char sum = 0;
if(file){
while(1){
std::fgets(buff, sizeof(buff), file);
if(strnicmp(buff, "checksum=", 9) == 0){
unsigned char csum = (unsigned char)atoi(buff + 9);
if(sum == csum){
std::cout << "OK";
}else{
std::cout << "BAD";
}
std::cout << std::endl;
break;
}else{
unsigned int size = (unsigned int)atoi(buff);
sum += size;
fseek(file, size + 1, SEEK_CUR);
}
}
}
}
981
:
774さん
:2008/12/03(水) 23:12:58 ID:CENbthlg0
違うsarファイルでも確認してみたが、一致した。よし。多分大丈夫。
だけれども、書き込まれているのが、unsigned charなのかsigned charなのかが分からない。
多分unsigned charであると思っているのだが。
982
:
774さん
:2008/12/04(木) 00:05:21 ID:CENbthlg0
明日はsarファイルを作るソフトでもつくろうかな。
983
:
774さん
:2008/12/04(木) 00:46:07 ID:CENbthlg0
取り敢えず、指定フォルダの下にあるディレクトリの一覧を返すの書いた。
-----
#define STRICT 1
#include <iostream>
#include <fstream>
#include <functional>
#include <algorithm>
#include <iterator>
#include <string>
#include <valarray>
#include <vector>
#include <map>
#include <cstdio>
#include <cstdlib>
#include <ctime>
#include <tchar.h>
#include <windows.h>
#ifdef UNICODE
typedef std::wstring tstring;
#else
typedef std::string tstring;
#endif
std::vector<tstring> vec;
void
EnumDirectory(LPCTSTR);
int main(int argc, char **argv){
EnumDirectory(_T(""));
unsigned int size = vec.size(), i;
for(i = 0; i < size; ++i){
#ifdef UNICODE
std::wcout
#else
std::cout
#endif
<< vec[i] << std::endl;
}
}
void
EnumDirectory(LPCTSTR path){
TCHAR buff[MAX_PATH];
lstrcpy(buff, path);
TCHAR *last = buff + lstrlen(buff);
lstrcpy(last, _T("*"));
WIN32_FIND_DATA d;
HANDLE hFile = FindFirstFile(buff, &d);
if(hFile != INVALID_HANDLE_VALUE){
do{
if(d.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY){
if(lstrcmp(d.cFileName, _T(".")) != 0 && lstrcmp(d.cFileName, _T("..")) != 0){
lstrcpy(last, d.cFileName);
vec.push_back(tstring(buff));
lstrcat(last, _T("\\"));
EnumDirectory(buff);
}
}
}while(FindNextFile(hFile, &d));
FindClose(hFile);
}
}
984
:
774さん
:2008/12/04(木) 00:46:58 ID:CENbthlg0
で、Sleipnirの初期状態のディレクトリ。
-----
bin
bookmarklet
documents
maintenance
plugins
plugins\action
plugins\bookmark
plugins\browser
plugins\browser\IEBrowser
plugins\dock
plugins\dynfolder
plugins\extension
plugins\importer
plugins\menu
plugins\panel
plugins\spx
plugins\spx\IEPanel
plugins\spx\IEPanel\mcsie
plugins\spx\IEPanel\mcsie\html
plugins\spx\IEPanel\mcsie\img
plugins\statusbar
plugins\toolbar
prefs
resources
resources\languages
resources\languages\advance
resources\languages\advance\english
resources\languages\advance\japanese
resources\languages\advance\simplified_chinese
resources\languages\default
resources\languages\default\english
resources\languages\default\japanese
resources\languages\default\simplified_chinese
resources\languages\sleipnir
resources\languages\sleipnir\english
resources\languages\sleipnir\japanese
resources\languages\sleipnir\simplified_chinese
resources\languages\sleipnir166
resources\languages\sleipnir166\english
resources\languages\sleipnir166\japanese
resources\skins
resources\skins\advance
resources\skins\advance\actions
resources\skins\advance\browser
resources\skins\advance\controls
resources\skins\advance\dock
resources\skins\advance\dock\SearchDock
resources\skins\advance\dynfolder
resources\skins\advance\options
resources\skins\advance\panel
resources\skins\advance\panel\spx
resources\skins\advance\statusbar
resources\skins\advance\statusbar\AddonControl
resources\skins\advance\statusbar\PopupBlock
resources\skins\advance\statusbar\PrivacyReport
resources\skins\advance\statusbar\QuickSecurity
resources\skins\advance\statusbar\RssAutoDiscovery
resources\skins\advance\statusbar\SecurityZone
resources\skins\advance\statusbar\SslState
resources\skins\advance\statusbar\SwitchSecurity
resources\skins\advance\statusbar\ZoomControl
resources\skins\advance\tab
resources\skins\advance\toolbar
resources\skins\advance\toolbar\AddressBar
resources\skins\advance\toolbar\SearchBar
resources\skins\default
resources\skins\default\actions
resources\skins\default\browser
resources\skins\default\browser\IEBrowser
resources\skins\default\browser\IEBrowser\NavigateError
resources\skins\default\controls
resources\skins\default\dock
resources\skins\default\dock\InformationDock
resources\skins\default\dock\SearchDock
resources\skins\default\dynfolder
resources\skins\default\extensions
resources\skins\default\extensions\MouseExtension
resources\skins\default\options
resources\skins\default\panel
resources\skins\default\panel\spx
resources\skins\default\statusbar
resources\skins\default\statusbar\AddonControl
resources\skins\default\statusbar\PopupBlock
resources\skins\default\statusbar\PrivacyReport
resources\skins\default\statusbar\QuickSecurity
resources\skins\default\statusbar\RssAutoDiscovery
resources\skins\default\statusbar\SecurityZone
resources\skins\default\statusbar\SslState
resources\skins\default\statusbar\SwitchSecurity
resources\skins\default\statusbar\ZoomControl
resources\skins\default\tab
resources\skins\default\toolbar
resources\skins\default\toolbar\AddressBar
resources\skins\default\toolbar\ConnectionBar
resources\skins\default\toolbar\SearchBar
resources\skins\default\toolbar\WindowBar
resources\skins\sleipnir166
resources\skins\sleipnir166\controls
resources\skins\sleipnir166\statusbar
resources\skins\sleipnir166\statusbar\AddonControl
resources\skins\sleipnir166\statusbar\PopupBlock
resources\skins\sleipnir166\statusbar\PrivacyReport
resources\skins\sleipnir166\statusbar\SslState
resources\sounds
scripts
scripts\$AdvancedPageSearchBar
scripts\$OnDoubleClick
scripts\
985
:
774さん
:2008/12/04(木) 00:48:38 ID:CENbthlg0
もう使用してあるSleipnir3だとこんな感じ。
-----
bin
bin\tools
chrome
chrome\design
chrome\design\resource
chrome\skin
chrome\skin\actions
chrome\skin\browser
chrome\skin\browser\IEBrowser
chrome\skin\browser\IEBrowser\NavigateError
chrome\skin\controls
chrome\skin\dock
chrome\skin\dock\InformationDock
chrome\skin\dock\SearchDock
chrome\skin\dynfolder
chrome\skin\options
chrome\skin\panel
chrome\skin\panel\spx
chrome\skin\statusbar
chrome\skin\statusbar\PopupBlock
chrome\skin\statusbar\PrivacyReport
chrome\skin\statusbar\QuickSecurity
chrome\skin\statusbar\RssAutoDiscovery
chrome\skin\statusbar\SecurityZone
chrome\skin\statusbar\SslState
chrome\skin\statusbar\SwitchSecurity
chrome\skin\statusbar\ZoomControl
chrome\skin\tab
chrome\skin\toolbar
chrome\skin\toolbar\AddressBar
chrome\skin\toolbar\ConnectionBar
chrome\skin\toolbar\OpenSearchBar
chrome\skin\toolbar\SearchBar
chrome\skin\toolbar\WindowBar
doc
doc\ja
locale
locale\1033
locale\1041
locale\default
locale\default\web
module
module\action
module\bookmark
module\browser
module\browser\IEBrowser
module\dock
module\dynfolder
module\extension
module\importer
module\menu
module\panel
module\spx
module\spx\IEPanel
module\spx\IEPanel\mcsie
module\spx\IEPanel\mcsie\html
module\spx\IEPanel\mcsie\img
module\statusbar
module\toolbar
module\toolbar\OpenSearchBar
user
user\Owner
user\Owner\Setting
user\Owner\Setting\plugins
user\Owner\Setting\scripts
user\Owner\Setting\settings
user\Owner\Setting\settings\client
user\Owner\Setting\settings\client\backup
user\Owner\Setting\settings\client\caches
user\Owner\Setting\settings\client\caches\history
user\Owner\Setting\settings\plugins
user\Owner\Setting\skins
user\Owner\Setting\skins\default
user\Owner\Setting\smartinstaller
user\Owner\Setting\smartinstaller\SmartInstaller Installation Information
user\Owner\Setting\smartinstaller\SmartInstaller Installation Information\plugins
user\Owner\Setting\smartinstaller\SmartInstaller Installation Information\skins
user\Owner\Setting\smartinstaller\SmartInstaller Run Once
user\Owner\Setting\smartinstaller\SmartInstaller Run Once\plugins
user\Owner\Setting\smartinstaller\SmartInstaller Run Once\skins
user\Owner\Setting\~temp
user\Owner\Setting\~temp\boost
user\Owner\Setting\~temp\boost\2713f754bc90ac2e980c0a111eb3c49b
user\Owner\Setting\~temp\boost\60f3beba29629c3a123f0821f67dd8a4
user\Owner\Setting\~temp\favicon
user\Owner\Setting\~temp\logs
986
:
774さん
:2008/12/04(木) 00:50:51 ID:CENbthlg0
適当に書いたのに、結構使える奴なので、確保しておいたw
987
:
774さん
:2008/12/04(木) 00:51:39 ID:CENbthlg0
もう、コマンドプロンプトが存在しない生活なんて考えられません。
リダイレクトとか使いまくってます。
あんまりパイプは使ってないが。
988
:
774さん
:2008/12/04(木) 00:52:16 ID:CENbthlg0
標準出力に出力するように作っておいて、リダイレクトさせればファイルに出力できるので、とても便利。
989
:
774さん
:2008/12/04(木) 00:53:52 ID:CENbthlg0
sarファイル作成のソフトは、ファイルを作ったところのカレントディレクトリで実行すると、sarファイルを自動生成するようにする。
AddFolderに無駄なフォルダを付け加えないために、上のようなものを作ったわけである。
990
:
774さん
:2008/12/04(木) 18:44:52 ID:CENbthlg0
ブラウザで入力するときの.siはextentions.tabbrowser.jpしか出来ないようになっているが、
sar.gzは何処に置いておいてもいいみたい。
これは良い仕様。
991
:
774さん
:2008/12/04(木) 18:45:54 ID:CENbthlg0
こんな感じでハック。
-----
[HTTP headers]
In = FALSE
Out = TRUE
Key = "URL: .si and .sar.gz hack"
Match = "
http://extensions.tabbrowser.jp/(http://?++.(si
|sar.gz))\0"
Replace = "$RDIR(\0)"
992
:
774さん
:2008/12/04(木) 19:19:30 ID:CENbthlg0
.si内部ならextentions.tabbrowser.jpじゃなくても大丈夫っぽい。
つまりフックすれば良いのは.siだけだ。
-----
[HTTP headers]
In = FALSE
Out = TRUE
Key = "URL: .si hack"
Match = "
http://extensions.tabbrowser.jp/(http://?++.si)
\0"
Replace = "$RDIR(\0)"
993
:
774さん
:2008/12/04(木) 20:11:17 ID:CENbthlg0
何故だか分からないが、
std::wcoutで出力すると、日本語以降が出力されないので、マルチバイトでコンパイルしなおした。
まあ、これでsarを出力するソフトが書ける。
994
:
774さん
:2008/12/04(木) 23:26:50 ID:CENbthlg0
Sar File Unpack Error: C:\Documents and Settings\Owner\デスクトップ\Sleipnir\unicode\bin\..\smartinstaller\SmartInstaller Run Once\plugins/MP.sar
MP のインストールに失敗しました。
1 個のプラグインのインストールに失敗しました。
-----
おかしいなー
995
:
774さん
:2008/12/04(木) 23:29:28 ID:CENbthlg0
二百行分のソースが無駄になったというのか!
996
:
774さん
:2008/12/05(金) 00:05:34 ID:CENbthlg0
無駄になるのは残念なので、
-----
ゴミ箱
http://mimizu.karou.jp/static/
-----
に上げておいた。
http://mimizu.karou.jp/static/MakeSarAndSiFile.rar
か。
997
:
774さん
:2008/12/05(金) 00:40:03 ID:CENbthlg0
まあ、いい。
結局sarファイルの仕様も分かったし、siファイルの仕様も分かったので良かったことにしよう。
なんか、もうSleipnirで遊ぶことは無い気がする。
ちょっと前に貼った、音の出し方のページでも研究しようかなあ?
多分やら無いだろう。
998
:
774さん
:2008/12/05(金) 00:41:13 ID:CENbthlg0
やんか、面白いこと無いかなあ・・・・・・・・・
SleipnirSDKが公開されたら何作るか考えないと。
なんか他のSleipnirへの要望も一杯あった気がするが、忘れてしまった。
999
:
774さん
:2008/12/05(金) 01:02:00 ID:CENbthlg0
そういえば仕様を纏めておくと、siとsarは一対一に対応していて、片方だけでは何の意味もなさない。
siのAddFileの順番にファイルの実体がsarに収められている。
ファイルの構造は
-----
ASCIIコードでファイルサイズ(任意長)
0x0A(つまり、改行コード)
ファイルサイズ分のファイルの実体
0x0A
-----
が、siファイルに記述されているファイルの数だけある。
で最後に
-----
CheckSum=(ファイルサイズのそれぞれの合計)
-----
とASCIIで入っていて、
最後の最後が、
0x0Aである。
何故0x0Aかというと、fgets()が利用できるからと思われる。
1000
:
774さん
:2008/12/05(金) 01:02:44 ID:CENbthlg0
明日は、Sleipnirのインターネット上とローカル上のsiファイルの扱いについて述べる。
今日は眠いし寝る。
明日は補習だ><
1001
:
774さん
:2008/12/05(金) 19:28:31 ID:CENbthlg0
という事で、適当に書く。
Sleipnirは.siで終わるファイルを見ているらしい。
で、現状ではextensions.tabbrowser.jpしか見ていない。
だけれども、siファイルに記述されているURLは上のドメインじゃなくてもとりに行く。
sarファイルも問題ない。
つまり、クリックしたときに反応しないだけなので、最初だけ反応するように上のほうのフィルタをプロクソミトロンに入れればよい。
1002
:
774さん
:2008/12/05(金) 19:39:43 ID:CENbthlg0
そりゃあ、Lunascapeは
javascript.options.jit.content
をtrueにしているんだから早いわ。
これで遅かったらどうかしてる。
1003
:
774さん
:2008/12/05(金) 19:45:52 ID:CENbthlg0
テスト版も自動更新できるようにしてほしいな。
1004
:
774さん
:2008/12/05(金) 20:56:54 ID:CENbthlg0
情報オリンピック出ようかな。
学校に結果が行くのが納得ならんぜ。
まあ、どうせ予選すら(ry
1005
:
774さん
:2008/12/05(金) 23:07:37 ID:CENbthlg0
念願のNASM環境を手に入れたぞ。
まあ、適当なフォルダにおいて、パスを通しただけだが。
1006
:
774さん
:2008/12/05(金) 23:15:24 ID:CENbthlg0
-----
nasm -fwin32 -O3 getapi.s
golink -entry start getapi.obj
-----
こうすればアセンブリしてリンクできる。
バッチとかパールとか用意するとベターか。
1007
:
774さん
:2008/12/05(金) 23:34:09 ID:CENbthlg0
何もしないアセンブリ。
-----
section .text
global start
start:
ret
1008
:
774さん
:2008/12/06(土) 17:18:52 ID:CENbthlg0
デフォルトでアセンブリ言語は何も提供しないから困る。
コンソールアプリケーションにするにも何行書かねばならないのか。
だから.objとか.libにして一部だけアセンブリって言うのが良いのかもしれない。
それにしてもどうして日本語でのNASMの資料が少ない?
1009
:
774さん
:2008/12/06(土) 17:25:27 ID:CENbthlg0
面倒だしバッチ書いた。
適当すぎww
メイクファイル・・・?
-----
del *.exe
del *.obj
nasm -fwin32 aaa.asm && golink -entry start aaa.obj
1010
:
774さん
:2008/12/06(土) 17:36:04 ID:CENbthlg0
いかんいかん。
アセンブルするためにバッチファイルを書くのだが、そのためにバッチファイルを勉強するという本末転倒の状態になってしまった。
動けば良いんだよ、動けば。
1011
:
774さん
:2008/12/06(土) 17:44:50 ID:CENbthlg0
そんなこと言って改造してしまった。
-----
@echo off
if "%1" == "" exit /b
if not exist "%1.asm" exit /b
del %1.exe > nul
del %1.obj > nul
nasm -fwin32 %1.asm && golink -entry start %1.obj
1012
:
774さん
:2008/12/06(土) 17:47:28 ID:CENbthlg0
@echo off
if "%1" == "" exit /b
if not exist "%1.asm" goto error
del %1.exe > nul
del %1.obj > nul
nasm -fwin32 %1.asm && golink -entry start %1.obj
exit /b
:error
echo %1は存在しないようです。
exit /b
1013
:
774さん
:2008/12/06(土) 19:19:24 ID:CENbthlg0
アセンブリ入れたのは良いんだけれども、書くものがないので結局何も。
1014
:
774さん
:2008/12/06(土) 19:21:08 ID:CENbthlg0
神速(´・ω・)VIP:素敵な壁紙画像下さい(´・ω・`) その1
http://sinsoku.livedoor.biz/archives/51225987.html
ベア速 日本SUGEEEEEEEEEEEEEEEE!ってなるコピペくれ
http://vipvipblogblog.blog119.fc2.com/blog-entry-248.html
1015
:
774さん
:2008/12/06(土) 20:24:39 ID:CENbthlg0
間違えて貼ってしまった。
Firefoxはいいが、フラッシュが直ぐ止まるバグがあるので、嫌だ。
1016
:
774さん
:2008/12/06(土) 22:21:40 ID:CENbthlg0
履歴管理(失敗) - 素人がプログラミングを勉強するブログ
http://d.hatena.ne.jp/javascripter/20081206/1228566390
-----
toXMLString();に注目!
重要な構文ではないかww
1017
:
774さん
:2008/12/06(土) 22:25:47 ID:CENbthlg0
ECMAScript for XML (E4X) 仕様邦訳
http://www.ne.jp/asahi/nanto/moon/specs/ecma-357.html
------
これか。
新着レスの表示
名前:
E-mail
(省略可)
:
※書き込む際の注意事項は
こちら
※画像アップローダーは
こちら
(画像を表示できるのは「画像リンクのサムネイル表示」がオンの掲示板に限ります)
スマートフォン版
掲示板管理者へ連絡
無料レンタル掲示板