avatar
1
2
3
4
5
6
7
8
9
10
function GetSpecialFolderDir(const folderid:integer):string;
var
   pidl:pItemIDList;
   buffer:array [ 0..255 ] of char ;
begin
   //取指定的文件夹项目表
   SHGetSpecialFolderLocation( application.Handle , folderid, pidl);
   SHGetPathFromIDList(pidl, buffer);    //转换成文件系统的路径
   result:=strpas(buffer);
end;

其中:folderid可以取下面的值:但是请注意,有些是虚的文件夹,不是文件系统
的一部分,所以用SHGetPathFromIDList是取不出路径的,但是在此也列出了。打’*’
号的为不是真正的文件系统,应该用作它用。

  CSIDL_BITBUCKET         *   回收站
  CSIDL_CONTROLS          *   控制面板
  CSIDL_DESKTOP           *   桌面

  CSIDL_DESKTOPDIRECTORY      桌面目录       //如C:\WINDOWS\Desktop
  CSIDL_DRIVES            *   我的电脑
  CSIDL_FONTS                 字体           //如C:\WINDOWS\FONTS
  CSIDL_NETHOOD               网上邻居目录   //如C:\WINDOWS\NetHood
  CSIDL_NETWORK           *   网上邻居
  CSIDL_PERSONAL              我的文档       //如C:\My Documents
  CSIDL_PRINTERS          *   打印机
  CSIDL_PROGRAMS              程序组         //如C:\WINDOWS\Start Menu\Programs
  CSIDL_RECENT                最近文档       //如C:\WINDOWS\Recent
  CSIDL_SENDTO                发送到         //如C:\WINDOWS\SentTo
  CSIDL_STARTMENU             开始菜单       //如C:\WINDOWS\Start Menu
  CSIDL_STARTUP               启动           //如C:\WINDOWS\启动
  CSIDL_TEMPLATES             模版           //如C:\WINDOWS\ShellNew

avatar

昨天终于忍不住把我的PSP从2.71SE-C刷成了3.0SE-C了.以下是过程.

由于刷过2.7SEC-CN,所以先把他卸了,然后用RECOVERY模式重新刷回纯净的2.7SEC,这样准备

工作就完毕了.运行刷写程序,一路上非常顺利.刷完后,重启后按住R开机,进入RECOVERY模式.

把plugins中的vshmain.prx设为Enable,退出就OK了.3.0SE-C 中文版就这样诞生了.

XMB的变化:

遥控PS3功能-1

遥控PS3功能-2


Continue Reading…

avatar

1:《蔷薇少女》特别篇

个人评论:我的水银灯啊…..又是经典……必追

2006年12月22日~12月23日

官网:http://www.tbs.co.jp/rozen-maiden/

介绍:
大人气TV动画《蔷薇少女》的特别篇,这部被很多FANS称之为“神作”的作品,可谓走势强劲,特别篇似乎将以水银灯为主角,不知道是不是原创剧情?

原作 : PEACH-PIT
监督 : 松尾衡

2:《圣斗士星矢》冥王篇后章

个人评论:一般般….纯粹看小强去的….

2006年12月15日 全6话

官网:http://www.toei-anim.co.jp/sp/seiya/

介绍:
在243年前圣域和冥界的圣战中,冥王哈迪斯战败,哈迪斯被雅典娜封印在黑暗的深渊里。然而,随着时间的流逝,封印终于渐渐失去了作用,哈迪斯和他的108冥斗士终于迎来了苏醒的一刻,新的圣战又将开始…………

  残破的圣域,淡淡的月色下,一直守护着圣域的圣斗士们突然发现,曾经在“沙加之乱”时的黄金十二宫战斗中死去黄金圣斗士的尸体一夜之间全都没了踪影。更可怕的是,尸体好象是自己从里面出来的…………

  十二宫的第一宫,守护牡羊座的黄金战士穆感到了一股强大且邪恶的小宇宙正渐渐向着圣域逼近。这时,一个黑衣遮面的人出现在穆的面前。黑衣人对穆说到:“穆,已经忘记了吗?我的面容……”看清了黑衣人面容后的穆惊愕不已,跪在了黑衣人面前。黑衣人命令他,12小时内把雅典娜的首级带来给他…………

  已经死去的十二宫黄金战士–巨蟹座的迪斯马斯克和双鱼座的阿布罗狄紧接着出现在穆的面前,穆隐约感到了此事的不寻常。原来,冥王哈迪斯在赋予死去的黄金战士新的生命时,命令他们消灭雅典娜及圣域。在接下来的战斗中,穆施展水晶墙击败了二人。然而,黑衣人轻松地破坏了水晶墙,危急时刻,星矢出现在众人面前…………

  就在星矢对迪斯马斯克和阿布罗狄的出现惊讶不已时,穆告诉了他原委,并让星矢尽快离开圣域,说这是雅典娜的旨意。然而星矢却执意和二人展开了战斗,正当星矢和迪斯马斯克正在战斗中时,穆却发出一道星光射向了星矢,星矢应声倒地…………

原作:车田正美
Continue Reading…

avatar

本服务端特色:
三转无问题,GMSV,客户端主程序汉化完美.
原创仿官方商业道具:
随意工作卡
技能栏增加卡LV1-LV5
时间水晶LV1 LV3 LV6

12月3日

1:更新了对话和NPC
[就职汉化完毕,除了仙人和侦探,还有一些ENEMYMSG]

2:新增修改脚本范例 (新手任务,送的是五色螳螂之一,运气好的可以拿到四鬼之一)
[相关文件:EV_ijk_start005 EV_ijk_start006]

3:新增汉化地图
[116张]

4:GMSV汉化完成90%

5:新增道具
[随意工作卡,技能栏增加卡LV1-LV5,时间水晶LV1 LV3 LV6]
[新物品编号39533-39553 *一些是正在的测试道具,请仔细测试]
[新物品相关文件是/data/npc/Etplay开头的txt文件]
[新物品介绍在MSG里,300000开始,在最后面]

12月6日

1:更新了一些汉化MSG

2:GMSV汉化完成95%

12月8日

1:更新汉化地图 & 随机地图 [80张左右]

2:更新NPC汉化 & 修正 [100个左右]

3:更新物品&宠物的汉化 [80个左右]

4:更新了汉化MSG.TXT [无法统计....]

5:GMSV修正了一些汉化错误

以上更新只提供给合作伙伴的站点.在此感谢一下Heartboy3,蚂蚁,Prodigy,Claudy等人.

12月9日

写了一个屏蔽WPE登陆器,有兴趣的帮我测试下~有BUG请直接回复我!谢谢.

[屏蔽WPE的登陆器]

Donwload

12月10日

对登陆器进行了优化,屏蔽了WPE和变速齿轮.兼容性上稍微比上个版本增强了些.

有兴趣的朋友可以下载试试,把登陆器放在游戏目录下,把CG190.EXE改成QM.EXE,启动游戏.

然后打开WPE或者加速齿轮就知道效果了~呵呵.有BUG也请直接回复我.谢谢!

[屏蔽WPE,变速齿轮的登陆器(测试中)]

Donwload

效果图:

WPE:

变速:

*感谢QQ:308512276 的玩家帮忙测试,以上是他的截图.

12月12日

修正了客户端字体错误问题.让某家引以为豪的字体见鬼去吧~

另附脱壳CG190两款,点此查看

12月15日

更新汉化MSG.TXT
[汉化和一些MSG]

更新汉化NPC.TXT
[修复和更新了NPC]

更新汉化ITEMSET.TXT
[汉化了一些道具]

修复了先前CG主程序汉化所造成的某BUG.

12月27日

更新汉化MSG.TXT
[累计的汉化和一些MSG]

更新汉化NPC.TXT
[累计的汉化NPC]

更新汉化ITEMSET.TXT
[累计的汉化道具]

现已停止提供一切和魔力有关的服务

avatar
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
function FindProcess(AFileName: string): boolean;
var
 hSnapshot: THandle;
 lppe: TProcessEntry32;
 Found: Boolean;
 KillHandle: THandle;
begin
 Result :=False;
 hSnapshot := CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);
 lppe.dwSize := SizeOf(TProcessEntry32);
 Found := Process32First(hSnapshot, lppe);
 while Found do
 begin
   if ((UpperCase(ExtractFileName(lppe.szExeFile))=UpperCase(AFileName)) or (UpperCase(lppe.szExeFile )=UpperCase(AFileName))) then
   begin
     Result :=True;
   end;
   Found := Process32Next(hSnapshot, lppe);
 end;
end;
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
function FindModule(AFileName: string): boolean;
var
 hSnapshot: THandle;
 lppe: tagModuleentry32;
 Found: Boolean;
begin
 Result :=False;
 hSnapshot := CreateToolhelp32Snapshot(TH32CS_SNAPModule, 0);
 lppe.dwSize := SizeOf(TMODULEENTRY32);
 Found := Module32First(hSnapshot, lppe);
 while Found do
 begin
   if ((UpperCase(ExtractFileName(lppe.szModule))=UpperCase(AFileName)) or (UpperCase(lppe.szModule )=UpperCase(AFileName))) then
   begin
     Result :=True;
   end;
   Found :=  Module32Next(hSnapshot, lppe);
 end;
end;
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
procedure EndProcess(AFileName: string);
const
 PROCESS_TERMINATE = $0001;
var
 ContinueLoop: BOOL;
 FSnapShotHandle: THandle;
 FProcessEntry32: TProcessEntry32;
begin
 FSnapShotHandle := CreateToolhelp32SnapShot(TH32CS_SNAPPROCESS, 0);
 FProcessEntry32.dwSize := SizeOf(FProcessEntry32);
 ContinueLoop := Process32First(FSnapshotHandle, FProcessEntry32);
 while integer(ContinueLoop) <> 0 do
 begin
   if ((UpperCase(ExtractFileName(FProcessEntry32.szExeFile))=UpperCase(AFileName)) or (UpperCase(FProcessEntry32.szExeFile )=UpperCase(AFileName))) then
   TerminateProcess(OpenProcess(PROCESS_TERMINATE, BOOL(0),FProcessEntry32.th32ProcessID), 0);
   ContinueLoop := Process32Next(FSnapshotHandle, FProcessEntry32);
 end;
end;
avatar
1
2
3
4
5
6
7
Function pCharToHex(Buf:pChar;Len:Integer):String;
Var
 I:Integer;
Begin
 For I := 0 To Len-1 Do
   Result := Result+IntToHex(Ord(Buf[I]), 2)+' ';
End;
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Function HexTopChar(Const s:String;Var Buf:pChar):Integer;
Var
 D:Array[0..1024] Of Byte;
 I:Integer;
Begin
 Result := 0;
 FillChar(D, (Length(s)+2)Div 3, #0);
 For I := 1 To Length(s) Do Begin
   If ((I Mod 3)=1) Then Begin
     D[Result] := StrToInt('$'+s[I]+s[I+1]);
     Inc(Result);
   End;
 End;
 GetMem(Buf, Result);
 Move(D, Buf, Result);
End;