python ShellExecute在另一台计算机的共享文件夹中找不到文件



最近我使用win32print和win32api模块通过python实现批量打印PDF文件。当我在本地电脑上选择pdf文件时,它做得很好。然而,当我在另一台计算机上的共享文件夹上选择pdf文件时(文件夹路径类似于"\\filepath"(,问题出现了,显示为";pywintypes。错误:(2,"ShellExecute","系统找不到指定的文件(";。我不知道为什么。

错误

# Batch print pdf files
import win32print
import win32api
import os
import tkinter as tk
from tkinter import filedialog
from tkinter import messagebox

def print_file(filename):
open(filename,"r")
win32api.ShellExecute(
0,
"print",
filename,
'/d:"%s"' % win32print.GetDefaultPrinter(),
".",
0
)

root = tk.Tk()
root.withdraw()
files_path = filedialog.askopenfilenames()
num = len(files_path)
if num == 0:
messagebox.showinfo("Prompting","No files selected!")
else:
msg = messagebox.askyesno('Prompting', 'Pring'+ str(num)+"files?")

if msg:
i = 0
for file_path in files_path:
if file_path.endswith("pdf"):
print_file(file_path)
i = i + 1
messagebox.showinfo("Prompting","Done!n" + "Totally printing"+str(i)+"files!")
else:
messagebox.showinfo("Prompting","Nothing done!")

您可能可以使用这些:

import glob
path = r'./folder/folder/'
all_files = glob.glob(path + "/*.pdf")
files = all_files[:-1]
print("number of pdf files: ", len(files))
for filename in files:
//open file

最新更新