Friday, 3. August 2007, 12:00:00
杂七杂八, 身边事
http://www.tianya.cn/New/PublicForum/Content.asp?flag=1&idArticle=646602&strItem=no04&idWriter=0&key=0其实这样的事应该不少,但报道的不多而已。上周末乘车,火车在起点站上晚了半个多小时才发车,空调开始还有问题,那叫一个热呀。估计是车头有问题,因为发现后来调来一个车头,不久就开车了。让人气愤的不是晚点,而是车站的不解释、不说明、不道歉,完全忽略了大家的知情权。开了车还跟没事人是的,继续报着原来到达某站的时间,这不是糊弄人吗。一句话,铁老大就是牛呀!
Thursday, 2. August 2007, 07:13:04
网络资源
感觉很有帮助,呵呵。
原帖及讨论:http://bbs.bc-cn.net/dispbbs.asp?BoardID=6&ID=111538
大家好,下面是我写的关于注册表操作的常用函数,希望对大家有所帮助
'****************************注册表操作函数**********************
'声明:以下代码由轻风工作室REDICE编写,引用时请作一说明。
'****************************************************************
'*****下面先声明一些常量******************************************
Public Const HKEY_CLASSES_ROOT = &H80000000
Public Const HKEY_CURRENT_CONFIG = &H80000005
Public Const HKEY_CURRENT_USER = &H80000001
Public Const HKEY_DYN_DATA = &H80000006
Public Const HKEY_LOCAL_MACHINE = &H80000002
Public Const HKEY_USERS = &H80000003
Public Const REG_OPTION_NON_VOLATILE = 0
Public Const KEY_ALL_ACCESS = (&H20000 Or &H1 Or &H2 Or &H4 Or &H8 Or &H10 Or &H20) And (Not &H100000)
Public Const REG_SZ = 1
Public Const REG_DWORD = 4
'*****************************************************************
'*****下面声明注册表操作中用到的API函数****************************
Public Declare Function RegCreateKey Lib "advapi32.dll" Alias "RegCreateKeyA" (ByVal hKey As Long, ByVal lpSubKey As String, phkResult As Long) As Long
Public Declare Function RegCloseKey Lib "advapi32.dll" (ByVal hKey As Long) As Long
Public Declare Function RegOpenKeyEx Lib "advapi32.dll" Alias "RegOpenKeyExA" (ByVal hKey As Long, ByVal lpSubKey As String, ByVal uloptions As Long, ByVal samDesired As Long, phkResult As Long) As Long
Public Declare Function RegDeleteKey Lib "advapi32.dll" Alias "RegDeleteKeyA" (ByVal hKey As Long, ByVal lpSubKey As String) As Long
Public Declare Function RegSetValueEx Lib "advapi32.dll" Alias "RegSetValueExA" (ByVal hKey As Long, ByVal lpValueName As String, ByVal Reserved As Long, ByVal dwType As Long, lpData As Any, ByVal cbData As Long) As Long
Public Declare Function RegSetValueExLong Lib "advapi32.dll" Alias "RegSetValueExA" (ByVal hKey As Long, ByVal lpValueName As String, ByVal Reserved As Long, ByVal dwType As Long, lpValue As Long, ByVal cbData As Long) As Long
Public Declare Function RegSetValueExString Lib "advapi32.dll" Alias "RegSetValueExA" (ByVal hKey As Long, ByVal lpValueName As String, ByVal Reserved As Long, ByVal dwType As Long, ByVal lpValue As String, ByVal cbData As Long) As Long
Public Declare Function RegDeleteValue Lib "advapi32.dll" Alias "RegDeleteValueA" (ByVal hKey As Long, ByVal lpValueName As String) As Long
'*****************************************************************
'*****下面是我自己写的一些注册表操作中常用的一些函数**************
'*****新键注册表项
Public Function createnewkey(ip As Long, snewkeyname As String)
Dim hnewkey As Long
Dim retval As Long
retval = RegCreateKey(ip, snewkeyname, hnewkey)
If retval = 0 Then
RegCloseKey (hnewkey) '关闭上面建立或打开的项
End If
End Function
'实例:在HKEY_CURRENT_USER下建立项"xiaopeng"
'代码为 createnewkey HKEY_CURRENT_USER ,"xiaopeng"
'******************************************************************
'*******删除注册表项***********************************************
Public Function deletekey(ip As Long, skeyname As String)
Dim hKey As Long
Dim retval As Long
retval = RegOpenKeyEx(ip, skeyname, 0, KEY_ALL_ACCESS, hKey)
If retval = 0 Then
RegDeleteKey ip, skeyname
End If
End Function
'实例:删除上面建立的HKEY_CURRENT_USER下的项"xiaopeng"
'代码为 deletekey HKEY_CURRENT_USER ,"xiaopeng"
'******************************************************************
'********新建,设置数值名称*****************************************
Public Function setkeyvalue(ByVal ip As Long, ByVal keyname As String, ByVal valuename As String, ByVal valuesetting As Variant, ByVal valuetype As Long)
Dim retval As Long
Dim hKey As Long
If RegOpenKeyEx(ip, keyname, 0, KEY_ALL_ACCESS, hKey) > 0 Then Exit Function
Select Case valuetype
Case REG_SZ
RegSetValueExString hKey, valuename, 0&, REG_SZ, valuesetting, Len(valuesetting)
Case REG_DWORD
RegSetValueExLong hKey, valuename, 0, valuetype, valuesetting, 4
End Select
RegCloseKey (hKey)
End Function
'实例:在HKEY_CURRENT_USER下的项"xiaopeng"中建立名为"redice",键值为"is xiaopeng",类型为REG_SZ的新键
'代码为 setkeyvalue HKEY_CURRENT_USER ,"xiaopeng" ,"redice","is xiaopeng",REG_SZ
'又如:在HKEY_CURRENT_USER下的项"xiaopeng"中建立名为"ceshi",键值为2,类型为REG_DWORD的新键
'代码为"setkeyvalue HKEY_CURRENT_USER,"xiaopeng","ceshi",2,REG_DWORD
'******************************************************************
'*********删除数值名称*********************************************
Public Function deletevalue(ByVal ip As Long, ByVal keyname As String, ByVal valuename As String)
Dim retval As Long
Dim hKey As Long
retval = RegOpenKeyEx(ip, keyname, 0, KEY_ALL_ACCESS, hKey)
If retval > 0 Then
Exit Function
End If
RegDeleteValue hKey, valuename
RegCloseKey hKey
End Function
'实例:删除HKEY_CURRENT_USER下的项"xiaopeng"中名为"redice"的新键
'代码为 deletevalue HKEY_CURRENT_USER ,"xiaopeng","redice"
'******************************************************************
'**********查询已存在的数值内容************************************
Public Function getvalue(ByVal ip As Long, keyname As String, valuename As String) As String
Dim retval As Long
Dim hKey As Long
Dim valuesetting As Variant
Dim cddata As Long
Dim lvalue As Long
Dim svalue As String
Dim lvaluetye As Long
retval = RegOpenKeyEx(ip, keyname, 0, KEY_ALL_ACCESS, hKey)
If retval > 0 Then
getvalue = ""
Exit Function
End If
retval = RegQueryValueEx(hKey, valuename, 0, lvaluetype, ByVal VBNullString, cddata)
If retval <> 0 Then
RegCloseKey hKey
Exit Function
End If
Select Case lvaluetype
Case REG_SZ
svalue = String(cddata, Chr(0))
RegQueryValueEx hKey, valuename, 0, lvaluetype, ByVal svalue, cddata
valuesetting = Left$(svalue, cddata)
getvalue = CStr(valuesetting)
Case REG_DWORD
RegQueryValueEx hKey, valuename, 0, lvaluetype, lvalue, cddata
valuesetting = lvalue
getvalue = CStr(valuesetting)
End Select
End Function
'实例:获取HKEY_CURRENT_USER下的项"xiaopeng"中名为"redice"的新键的键值
'代码为 getvalue HKEY_CURRENT_USER ,"xiaopeng","redice"
'*********************************************************************
Wednesday, 11. July 2007, 14:07:40
杂七杂八, 身边事
这可能是今天听到的最意外的消息了。
说意外,其实也算是意料之中的事,但不想来得似乎快了些。原以为还能再撑一段时间,没想到还是散了。
虽说现在是编外人员,但也是曾经工作过的地方,就这么着就散了,总觉得有些怪。

......
Thursday, 21. June 2007, 10:49:54
杂七杂八
太长时间没上来,还以为是社区出了问题,谁知道竟是GFW的功劳。。。
对GFW真是无语了。。。
还好天无绝人之路,我们还有Tor,还有OperaTor
Saturday, 14. April 2007, 01:26:55
随拍
昨天从办公室窗口随便拍了两张:)

Thursday, 12. April 2007, 14:14:22
读后感
没有看完。
主要讲了地理信息共享是的标准、政策、法规方面的内容。
这也是不容忽视的一部分内容。
Thursday, 12. April 2007, 13:57:31
读后感
书中谈到的技术本身比较陈旧,提到的设备也感觉是很早以前的东西(其实也就是差不多10年前),感觉GIS本身发展还是挺快的,尤其是在计算机技术的推动下。
但书中设计的方法和应用思路,还是很有参考价值的。其中一篇关于数据质量的文章,写的不错,可能是自己以前看到的这方面的文章比较少的原因。
还有就是GIS应用模式的问题总结的不错,模式被归纳为两部分:
1、利用目标导向的方法以及问题所涉及的专业知识对问题进行分析,从问题开始一步步地推导出解决问题所需要的各种数据和具体步骤;
2、利用数据导向的方法以及地理信息系统的技术,从各种数据开始,按照1中所得的步骤,一步步地将各种数据转换成问题的答案。
---------------------------------------------------
GIS重在应用,而不是技术本身。
Thursday, 18. January 2007, 08:23:40
emacs, 网络资源, 笔记
好久不用,都快忘了

1、将buffer中的文字以不同的编码打开
M+x revert-buffer-with-coding-system
然后选需的编码
2、在同一个emacs的不同buffer中打开多个文件。
需要下载gnuserv,主页在这里http://www.wyrdrune.com/index.html?gnuserv.html
下载后拷贝el和exe文件到相应的目录,然后在_emacs中添加
(require 'gnuserv)
(gnuserv-start)
(setq gnuserv-frame (selected-frame))
这样在打开文件时使用刚才拷贝的一个exe文件gnuclientw.exe即可

3、查看emacs的HOME变量
在scratch中输入(insert(getenv"HOME")),然后选中,C-x C-e
4、查看load-path
C-h v load-path
5、设置emacs窗口大小
有两种方法可以实现这一目的,一个是使用emacs配置文件,一个是用注册表(对windows而言)
配置文件中可以这么写:
(setq initial-frame-alist '((top . 0) (left . 150) (width .60) (height . 35)))
如果在注册表中,可以用下面的设置
REGEDIT4
[HKEY_LOCAL_MACHINE\SOFTWARE\GNU\Emacs]
"Emacs.Background"="Black"
"Emacs.Foreground"="Wheat"
"Emacs.ScrollBars"="OFF"
"Emacs.MenuBar"="OFF"
"Emacs.ToolBar"="OFF"
"Emacs.Geometry"="124x45+-4+-4"
"Emacs.Font"="-*-Courier New-normal-r-*-*-13-*-*-*-c-*-*-*"
和设置HOME相似,只不过内容不同。
Wednesday, 13. December 2006, 02:19:39
matlab, Programming, 笔记
1、如何将GUI过程中的变量写入(base)workspace?
GUI过程中,每个对象都有自己独立的workspace,如果要将过程中的变量写入(base)workspace,需要使用assignin,即assignin('base','var')。
2、如何将(base)workspace中的变量读入GUI过程中?
几乎是上一过程的逆过程,也是我们需要的。此时需要使用另一有用的函数evalin。 它不但可以从(base)workspace获得变量,还可以执行函数,十分的有用。
3、字符串中的单引号问题。
在使用evalin的时候很有可能涉及到这个问题,如判断(base)workspace中某个变量是否已经存在:
(evalin('base','exist(''input_points'',''var'')'))==1
在检查input_points是否存在的时候就遇到这个问题,那么解决这个问题的一个原则就是:字符串中的单引号,用两个单引号来定义(不是一个双引号)。(别人的一句话

)
matlab还真是挺复杂的
Showing posts 1 -
10 of 89.