*.res 一問 |
尚未結案
|
SuperLowB
初階會員 發表:96 回覆:77 積分:34 註冊:2003-06-11 發送簡訊給我 |
此問是繼續這條問題的,都是我不好...我手快把它結了案
http://delphi.ktop.com.tw/topic.php?TOPIC_ID=49259
問題1.
當我試了mustapha.wang給我的方法後,我發覺如果在coding裡寫上e.g.
{$R Test.res},如果我個Test.res檔內含有一個20MB的avi file,這樣當我complie個program時,個exe差不得要成20多MB,太大了,它把我的avi也一併鑲入了我的program 內.... 如果我有10個一樣大小的avi file,那麼我個exe咪要過一100mb.....! 這樣...我想問有沒有方法可以把這些*. >
|
_CCH_
一般會員 發表:10 回覆:29 積分:7 註冊:2004-04-20 發送簡訊給我 |
找個工具,將EXE 檔的資源擷取出來可不可以啊! Restorator v2.52 build 772(1.29MB)
官方首頁 http://www.bome.com/Restorator/ eXeScope 6.41
http://hp.vector.co.jp/authors/VA003525/emysoft.htm
Download Program (English version)
http://hp.vector.co.jp/authors/VA003525/eXeSc641.zip 秉燭夜遊,大塊文章。
文章是案頭之山水,山水是地上之文章。
------
秉燭夜遊,大塊文章。 文章是案頭之山水,山水是地上之文章。 |
SuperLowB
初階會員 發表:96 回覆:77 積分:34 註冊:2003-06-11 發送簡訊給我 |
|
jest0024
高階會員 發表:11 回覆:310 積分:224 註冊:2002-11-24 發送簡訊給我 |
|
hagar
版主 發表:143 回覆:4056 積分:4445 註冊:2002-04-14 發送簡訊給我 |
|
SuperLowB
初階會員 發表:96 回覆:77 積分:34 註冊:2003-06-11 發送簡訊給我 |
|
jest0024
高階會員 發表:11 回覆:310 積分:224 註冊:2002-11-24 發送簡訊給我 |
範例...進階點的還是要自己找找,我先寫個簡單的好了!! {將bmp檔案轉成自己想要的檔案模式} procedure TForm1.Button1Click(Sender: TObject); var S1,S2:TFileStream; L:Integer; R:Array[0..1023] of Byte; fFile:String; begin fFile:=ExtractFilePath(Application.ExeName) 'test.txt'; L:=$0F0F; if OpenDialog1.Execute then begin S1:=TFileStream.Create(OpenDialog1.FileName,fmOpenRead or fmShareDenyWrite); S2:=TFileStream.Create(fFile,fmCreate); S2.WriteBuffer(L,Sizeof(L)); //寫入檔頭 while S1.Size-s1.Position>0 do begin //或則經過編碼計算過!? L:=Min(Length(R),S1.Size-S1.Position); s1.ReadBuffer(R,L); s2.WriteBuffer(R,L); end; S1.Free; S2.Free; end; end; {將自己的檔案讀入記憶體中,並顯示出來} procedure TForm1.Button2Click(Sender: TObject); var S1,S2:TStream; fFile:String; L:Integer; R:Array[0..1023] of Byte; Bmp:TBitmap; begin fFile:=ExtractFilePath(Application.ExeName) 'test.txt'; S1:=TFileStream.Create(fFile,fmOpenRead); S1.ReadBuffer(L,4);//讀取檔頭 S2:=TMemoryStream.Create; while S1.Size-s1.Position>0 do begin L:=Min(Length(R),S1.Size-S1.Position); S1.ReadBuffer(R,L); S2.WriteBuffer(R,L); end; S1.Free; Bmp:=TBitmap.Create; s2.Position:=0; Bmp.LoadFromStream(S2); PaintBox1.Canvas.Draw(0,0,Bmp); Bmp.Free; S2.Free; end;學而時習之不亦樂乎! |
SuperLowB
初階會員 發表:96 回覆:77 積分:34 註冊:2003-06-11 發送簡訊給我 |
|
OsX
版主 發表:6 回覆:151 積分:111 註冊:2003-05-03 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |