全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
16818 13
2008-11-23
似乎现在大家使用的sid都是过时的,每次使用的时候都需要更改系统时间,用完了使用别的程序(如JPM)又需要改到原来的系统时间,这样每次都会很麻烦。

现在好了,只需要一个简单的软件就可以解决问题!

安装并使用autohetkey,编写一个脚本,将以下内容粘贴在内容里面,保存为sas.ahk即可使用。

脚本内容如下:
;Change time to 2005-01-01
run %comspec% /c date 05-01-01
run %comspec% /c time 19:20:50

;Run SAS Program
run "D:\Program Files\SAS\SAS 9.1\sas.exe" -CONFIG "d:\Program Files\SAS\SAS 9.1\nls\en\SASV9.CFG"
WinWait,SAS
WinWaitClose

;If SAS program is closed, change the time to usual
b = 0 ; UTC bias (e.g. -1030, 8000)
t = %A_Temp%\time.dat
UrlDownLoadToFile, http://time.nist.gov:13, %t%
FileRead, ntp, %t%
FileDelete, %t%
If ntp {
   VarSetCapacity(t, 8 * 4, 0)
   StringSplit, t, ntp, -     :
   NumPut(2000 + t2, t, 0, "Short")
   NumPut(t3, t, 2, "Short")
   NumPut(t4, t, 6, "Short")
   NumPut(t5 + b0 := Floor(b / 100), t, 8, "Short")
   NumPut(t6 - b0 * 100, t, 10, "Short")
   NumPut(t7, t, 12, "Short")
   DllCall("SetSystemTime", "UInt", &t)
   PostMessage, 0x1e, , , , ahk_id 0xFFFF ; broadcast WM_TIMECHANGE
}

需要注意的是在Run SAS Program块里面要根据实际情况修改个人sas的安装路径,很简单,可以在桌面上的快捷方式里面找到。

完成了上述工作之后双击该脚本即可运行sas了,而推出之后系统时间则回复正常。

当然,如果你是完美主义者,可以将为该脚本在桌面上建立一个快捷方式,然后更改图标为sas,这样双击一样可以运行,简直可以以假乱真~~~。

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2008-11-23 23:35:00

试试哟

谢谢分享~~~

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2008-11-24 02:26:00
试试9.2可不可以成功
谢谢
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2008-11-24 10:22:00
应该是可以的,因为原理都是一样的,只要sas不改变sid策略,这个方法肯定可行。

一直都这么用,感觉比runasdate要好些,至少定制很简单灵活。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2008-11-24 10:55:00

   请问,楼主,我的sas是9.0版本的,过期时间是2004年12月,能不能用上面的脚本内容呢?

   有没有哪位的确已经成功运行,并能够运行BASE和STAT两个模块的?

    谢谢!  

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2008-11-24 15:21:00
这个和版本无关的,只和sid有关,如果是2004年12月过期的话需要把第二行的时间改为
run %comspec% /c date 04-01-01

其余的不要改动,复制,粘贴运行脚本就好了。

我一直都是这么用的,肯定不会有问题!
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群