我有一个创建无效目录的应用程序...例如c:\Program Files\somedirectory. - 句点是目录名称的一部分.
现在,我已经尝试了所有关于在delphi中重命名文件的知识.
我试过让Windows短路径,ExtractShortPathName但这只是返回一个空字符串.(调用commandPrompt:"RENAME ShortOldName NewName")
现在我知道我可以在cmd中手动执行它,但我不打算花时间浏览所有文件并执行它;)
这是我的一些代码:
xshortname := ExtractFileName(ExtractShortPathName(ns + oldName));
xNewName := newName;
cmdTxt := PWideChar('/C cd ' + ns);
cmdTxt2 := PWideChar(cmdTxt + '&&' + ' RENAME ' + xshortname + ' ' + #34 + xNewName + #34);
ShellExecute(0, nil, 'cmd.exe', cmdTxt2, nil, SW_SHOWNORMAL);
Run Code Online (Sandbox Code Playgroud)
我知道shellExecute不是这里使用的最佳方法.我只是想让臭味发挥作用.我将担心以后优化和正确的Delphi编码.
所以我的问题是:有没有人知道一个允许我重命名无效目录的功能?