; 保证文件名的唯一性不重复
; https://www.autohotkey.com/boards/viewtopic.php?f=6&t=76062

MsgBox % PathU(A_ScriptFullPath)               ; 复制此脚本的备份
MsgBox % PathU(A_ScriptName)                   ; A_WorkingDir用于解析完整路径
MsgBox % PathU(A_AhkPath . "\..\License.txt")  ; 相对路径自动解析
MsgBox % PathU(A_ScriptDir)                    ; 也适用于文件夹。。避免尾随斜杠!
MsgBox % PathU(A_Temp . "\ahk.tmp")            ; 创建临时文件的简单方法

PathU(File) {  ; PathU v0.90 by SKAN on D35E/D35F @ tiny.cc/pathu 
  Local Q, F := VarSetCapacity(Q, 520, 0) 
  DllCall("kernel32\GetFullPathNameW", "WStr", File, "UInt", 260, "Str", Q, "PtrP", F)
  DllCall("shell32\PathYetAnotherMakeUniqueName", "Str", Q, "Str", Q, "Ptr", 0, "Ptr", F)
  Return A_IsUnicode ? Q : StrGet(&Q, "UTF-16")
}

 

声明:站内资源为整理优化好的代码上传分享与学习研究,如果是开源代码基本都会标明出处,方便大家扩展学习路径。请不要恶意搬运,破坏站长辛苦整理维护的劳动成果。本站为爱好者分享站点,所有内容不作为商业行为。如若本站上传内容侵犯了原著者的合法权益,请联系我们进行删除下架。