如何让lisp自动在桌面创建一个txt文件
如图,因每个人的电脑名称不一样,比如下图分别是“1”和"Administrator",所以每个人电脑的桌面路径可能不一样,如何让程序能自动获取电脑名称,并成功在每个使用者的桌面上建立一个文件?本帖最后由 muwind 于 2023-7-13 23:21 编辑
用 (getenv "userprofile")获取当前用户文件夹
(strcat (getenv "userprofile")"\\Desktop\\输出结果.txt" ) 应该也可以
命令: (getenv "ALLUSERSPROFILE")
"C:\\ProgramData"
命令: (getenv "APPDATA")
"C:\\Users\\用户名\\AppData\\Roaming"
命令: (getenv "CommonProgramFiles")
"C:\\Program Files\\Common Files"
命令: (getenv "COMPUTERNAME")
"计算机名"
命令: (getenv "COMSPEC")
"C:\\Windows\\system32\\cmd.exe"
命令: (getenv "HOMEDRIVE")
"C:"
命令: (getenv "HOMEPATH")
"\\Users\\用户名"
命令: (getenv "NUMBER_OF_PROCESSORS")
"4"
命令: (getenv "OS")
"Windows_NT"
命令: (getenv "Path")
"c:\\program files\\autocad 2010\\zh-cn;c:\\program files (x86)\\nvidia
corporation\\physx\\common;c:\\windows\\system32;c:\\windows;c:\\windows\\system
32\\wbem;c:\\windows\\system32\\windowspowershell\\v1.0\\;c:\\users\\用户名\\
appdata\\roaming\\autodesk\\autocad 2010\\r18.0\\chs\\support;c:\\program
files\\autocad 2010\\support;c:\\program files\\autocad 2010\\fonts;c:\\program
files\\autocad 2010\\help;c:\\program files\\autocad
2010\\support\\color;c:\\program files\\autocad
2010;c:\\program files\\autocad 2010\\drv"
命令: (getenv "PATHEXT")
".COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC"
命令: (getenv "PROCESSOR_ARCHITECTURE")
"AMD64"
命令: (getenv "PROCESSOR_LEVEL")
"6"
命令: (getenv "PROCESSOR_REVISION")
"2502"
命令: (getenv "ProgramFiles")
"C:\\Program Files"
命令: (getenv "SESSIONNAME")
"Console"
命令: (getenv "SYSTEMDRIVE")
"C:"
命令: (getenv "SYSTEMROOT")
"C:\\Windows"
命令: (getenv "TEMP")
"C:\\Users\\用户名\\AppData\\Local\\Temp"
命令: (getenv "tmp")
"C:\\Users\\用户名\\AppData\\Local\\Temp"
命令: (getenv "USERNAME")
"用户名"
命令: (getenv "USERPROFILE")
"C:\\Users\\用户名"
命令: (getenv "WINDIR")
"C:\\Windows"
已解决,(setq ff (open (strcat (vla-item (vlax-get (vlax-create-object "WScript.Shell" ) 'SpecialFolders) "Desktop") "\\输出结果.txt") "w")) 你图示的方法也是可以创建的。 利用 windows 的用户变量 %userprofile%, %userprofile%/desktop 应该也可以吧。直接写路径要考虑一下系统的安装位置。我记得这个位置是可以搬家移动到别的分区的,用 C:/... 没有通用性。 muwind 发表于 2023-7-13 21:25
用 (getenv "userprofile")获取当前用户文件夹
(strcat (getenv "userprofile")"\\Desktop\\输出结果.t ...
对,这种更简洁 自贡黄明儒 发表于 2023-7-13 14:12
你图示的方法也是可以创建的。
我那种不能自动识别用户名称,用户名称是固定的,使用灵活性欠缺 muwind 发表于 2023-7-13 21:25
用 (getenv "userprofile")获取当前用户文件夹
(strcat (getenv "userprofile")"\\Desktop\\输出结果.t ...
:handshake 学习学习顶一个 muwind 发表于 2023-7-13 21:25
用 (getenv "userprofile")获取当前用户文件夹
(strcat (getenv "userprofile")"\\Desktop\\输出结果.t ...
牛逼佩服大佬
页:
[1]