python創建桌面快捷方式的代碼

cdfd 9年前發布 | 2K 次閱讀 Python

有了pywin32是不是就能在Windows上為所欲為了?

是的。

    # -- coding: cp936 -- #
import os
import pythoncom
from win32com.shell import shell
from win32com.shell import shellcon

def set_shortcut(filename,lnkname,iconname):#如無需特別設置圖標,則可去掉iconname參數  
    shortcut = pythoncom.CoCreateInstance(  
    shell.CLSID_ShellLink, None,  
    pythoncom.CLSCTX_INPROC_SERVER, shell.IID_IShellLink)  
    shortcut.SetPath(filename)  
    shortcut.SetIconLocation(iconname,0)#可有可無,沒有就默認使用文件本身的圖標  
    if os.path.splitext(lnkname)[-1] != '.lnk':  
        lnkname += ".lnk"  
    shortcut.QueryInterface(pythoncom.IID_IPersistFile).Save(lnkname,0)  

if __name__ == "__main__":  
    #獲取"啟動"文件夾路徑,關鍵是最后的參數CSIDL_STARTUP,這些參數可以在微軟的官方文檔中找到  
    startup_path = shell.SHGetPathFromIDList(shell.SHGetSpecialFolderLocation(0,shellcon.CSIDL_STARTUP))  
    #獲取"桌面"文件夾路徑,將最后的參數換成CSIDL_DESKTOP即可  
    desktop_path = shell.SHGetPathFromIDList(shell.SHGetSpecialFolderLocation(0,shellcon.CSIDL_DESKTOP))  
    file_name=""#要創建快捷方式的文件的完整路徑  
    icon_name=""#圖標文件的完整路徑(非必須)  
    lnk_name1= startup_path+"\\我的桌面快捷方式.lnk"#將要在此路徑創建快捷方式  
    lnk_name2= startup_path+"\\我的啟動組快捷方式.lnk"  
    set_shortcut(file_name,lnk_name1,icon_name)  
    set_shortcut(file_name,lnk_name2,icon_name)  </pre> 


 本文由用戶 cdfd 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!