windows - VB6 Dir ("*.dot") 在一台服务器上通配找到 .dotx,但在另一台服务器上找不到

标签 windows vb6 glob

我有一个非常奇怪的问题,我希望其他人可能知道。

我有一个包含以下代码的 VB6

Dim filename As String: filename = Dir("c:\somepath\*.dot")

Do Until filename = ""
    ...add filename to listbox

    filename = Dir()
loop

当我在一台 Windows Server 2012 R2(称为服务器 A)上运行完全相同的程序时,Dir() 将仅返回以 .dot 结尾的文件。

在不同的 Windows Server 2012 R2(服务器 B)上,Dir() 将另外返回以 .dotx 结尾的文件

两台服务器都有 Microsoft Office 2013 标准版。两台服务器在文件资源管理器中的 AFAICS 设置相同。

服务器区域设置为英语 服务器 B 区域设置是丹麦语

是否有任何注册表设置可以使文件通配行为像这样?我正在特别考虑将 DOTX 作为新的 Office 模板格式?

最佳答案

如果在未列出 .docx 文件的计算机的文件系统上禁用了 8.3 文件名的创建,就会出现您所看到的情况。

您可以使用 fsutil 通过反转指令 here 来重新启用此功能。 .

关于windows - VB6 Dir ("*.dot") 在一台服务器上通配找到 .dotx,但在另一台服务器上找不到,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36597954/

相关文章:

c++ - SLEEP: (Sleep or usleep) 不是在 Linux 中挂起我线程中的所有内容,而是在 Windows 中?为什么?

python - 如何解决安装构建工具的问题

c++ - 按 Enter 后如何防止命令行关闭

regex - 如何使用正则表达式 (glob) 搜索文件树

python - python glob中的大括号扩展

windows - os.File.SetReadDealine : file type does not support deadline

vb.net - VB6 + VB.NET 失去焦点与验证?

vb6 - 对 VB6/Winsock/ADO 应用程序进行逆向工程

windows - 如何强制应用程序以管理员权限运行

linux - bash for循环中的迭代顺序是否得到保证?