也谈关于绿色版my.ini相对路径设置的问题
网络科技 2010-11-23 06:51:44 就是关于basedir与datadir设置为相对路径,网上找了下,都说是不能设置为相对路径的。
那直接不能设置,那就只能间接的去设置的了。
我的想法是用批处理去改basedir和datadir的值,理论上应该是可行吧?
在my.ini中,我们先把值设置如下唯一的标记,如:
basedir=basedirDir
datadir=datadirDir
若是用程序的方法,很容易就可以把basedirDir和datadirDir改为需要的值,但我若想用批处理来解决,该如何写呢?
这里有高人做过吗?希望能指点一二,多谢。
我的思路如下,只是对dos命令不是很熟,具体不知道怎么写。
在my.ini的同级目录,新建个bat文件,如:modifyMyINIDir.bat
内容大致是这样的:
1.读取my.ini的内容放在一个临时的变量中,如tmpINI
2.获取当前的路径,可用:set CURRENT_DIR=%cd%
3.类似实现:tmpINI = tmpINI.replace("basedirDir", CURRENT_DIR)
和tmpINI = tmpINI.replace("datadirDir", CURRENT_DIR + "/data")的方法
4.最后再把得到新的tmpINI写入my.ini中,即替换旧的内容,即大功靠成。
其实思路应该不难,只是具体怎么写呢?还有就是,dos命令,能完成这样复杂的功能不?
有兴趣的同学,可以发挥下吧。