проблема с вновь созданным пользователем - тип файла не распознается программой


3

Строки ниже в пакетном скрипте, который я запускаю, DW_ETL.bat

net use K: /DELETE /yes
net use K: \\SERVEUR-GPAO\Group_share /yes
start "C:\Program Files (x86)\Microsoft Office\root\Office16\MSACCESS.EXE" "K:\BI\Etl\DW_ETL.mdb"

Как видно на рисунке ниже, двоичные файлы доступа установлены в нужном месте, например C:\Program Files (x86)\Microsoft Office\root\Office16\MSACCESS.exe

enter image description here

Тем не менее каждый раз, когда я запускаю скрипт

enter image description here

Это говорит Windows cannot open the file because it did not recognize the type of file

Но когда я открываю файл MDB из Access, он может открыть базу данных.

И последнее, когда я запускаю скрипт от другого пользователя на той же машине, скрипт может работать отлично.

Любые идеи более чем приветствуются.


По какой-то конкретной причине вы указываете весь путь доступа? вообще говоря, существуют ассоциации типов файлов, так что вы можете просто сказать, start /path/to/doc.ext и пусть система выяснит все остальное. Вы работаете с несколькими версиями доступа и MDB, которые должны работать в определенных версиях?
Frank Thomas

Ответы:


3

Одна проблема заключается в том, что start использует первый аргумент в двойных кавычках в качестве заголовка окна.
Увидеть start /? и используйте пустую пару, чтобы обойти это.

net use K: /DELETE /yes
net use K: \\SERVEUR-GPAO\Group_share /yes
start "" "C:\Program Files (x86)\Microsoft Office\root\Office16\MSACCESS.EXE" "K:\BI\Etl\DW_ETL.mdb"

2

Вам необходимо заново связать файлы .mdb с соответствующим двоичным файлом после того, как вы переставили диски.

https://superuser.com/a/29801/38001 лучшее объяснение того, как это сделать через командную строку, я не буду повторять весь ответ здесь

Короче

FTYPE MyCustomType=C:\Program Files\MyCustomProgram\MyProg.exe "%1"
ASSOC .custom=MyCustomType

Вы, вероятно, правы, но какое отношение имеет сетевое сопоставление к ассоциации времени установки типа файла с msaccess.exe?
Frank Thomas

@FrankThomas, которые я не знаю, я полагаю, возможно, существовавший ранее путь к msaccess.exe находился на удаленном существующем сетевом диске.
djsmiley2k
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.