注:这个脚本只给一些对游戏制作有特殊要求的人
在完善RGSSHIDE的时候
发现如果一些RTP素材没有打入RGSSHIDE
则读取RTP 但是RTP的默认路径在每个系统下的目录都不一样
如window,lunix,vista等。。。。
怎么办呢,还好安装RM的时候在注册表中写入了个安装路径
没办法只好获取注册表来获取RTP路径
这个脚本只给出了一个获取RTP路径范例
其他的注册表操作 比如新建,删除,写入等 没有给出范例 因为风险较大
这些操作 如对注册表不熟悉的人 请谨慎使用~
改出问题了别pia我{/cy}
------------获取RTP路径的范例-----------------
http://rpg.blue/upload_program/f ... 秀秀_99135614.rar
-----------------------------------------------
module Regedit
HKEY_CLASSES_ROOT = 0x80000000
HKEY_CURRENT_USER = 0x80000001
HKEY_LOCAL_MACHINE = 0x80000002
HKEY_USERS = 0x80000003
HKEY_PERFORMANCE_DATA = 0x80000004
HKEY_PERFORMANCE_TEXT = 0x80000050
HKEY_PERFORMANCE_NLSTEXT = 0x80000060
HKEY_CURRENT_CONFIG = 0x80000005
HKEY_DYN_DATA = 0x80000006
STANDARD_RIGHTS_READ = 0x00020000
STANDARD_RIGHTS_WRITE = 0x00020000
KEY_QUERY_VALUE = 0x0001
KEY_SET_VALUE = 0x0002
KEY_CREATE_SUB_KEY = 0x0004
KEY_ENUMERATE_SUB_KEYS = 0x0008
KEY_NOTIFY = 0x0010
KEY_CREATE_LINK = 0x0020
KEY_READ = STANDARD_RIGHTS_READ |
KEY_QUERY_VALUE | KEY_ENUMERATE_SUB_KEYS | KEY_NOTIFY
KEY_WRITE = STANDARD_RIGHTS_WRITE |
KEY_SET_VALUE | KEY_CREATE_SUB_KEY
KEY_EXECUTE = KEY_READ
KEY_ALL_ACCESS = KEY_READ | KEY_WRITE | KEY_CREATE_LINK
MAX_KEY_LENGTH = 514
MAX_VALUE_LENGTH = 32768
@@reg = []
# 0:打开 1:查询 2: 建立 3:枚举(v) 4:枚举(k)
# 5:设置 6:删除(v) 7:删除(k) 8:关闭 9:信息
[
%w/RegOpenKeyEx LPLLP L/, #0
%w/RegQueryValueEx LPLPPP L/, #1
%w/RegCreateKeyEx LPLLLLPPP L/, #2
%w/RegEnumValue LLPPPPPP L/, #3
%w/RegEnumKeyEx LLPPLLLP L/, #4
%w/RegSetValueEx LPLLPL L/, #5
%w/RegDeleteValue LP L/, #6
%w/RegDeleteKey LP L/, #7
%w/RegCloseKey L L/, #8
%w/RegQueryInfoKey LPPPPPPPPPPP L/, #9
].each do |fn|
@@reg > 32 ].pack("VV")
end
def unpackqw(qw)
qw = qw.unpack("VV")
(qw[1] |