一直计划写个客户端,可以进行MS KB的搜索,昨天晚上尝试写了一下,但是涉及到www.kbalertz.com提供的服务,所以给Scott Cate发了封邮件征求一下意见。
Scott Cate告诉我他们将推出一个用C#写的windows 版本,功能比较全面,所以我这个计划将胎死腹中(有点残忍)!
不过我昨天晚上写的还是可以用的,可以搜索指定范围指定数目的最近的KB文章(其实就是把www.kbalertz.com)移到我的程序里,没什么特殊的,如果你懒得打开浏览器,然后在转到www.kbalertz.com网站,倒是可以用用,因为没有多少使用价值,也没有多少技术价值,所以放弃才不觉得可惜!
下载:http://www.blanksoft.com/soft/kbviewer.zip(连工程图标都没改)
截图:http://www.blanksoft.com/images/kbviewer.jpg
-----
我以为不会有人用呢,Alex如果你觉得对你有用,那么我在修改一下这个工程好了,我现在save as的代码都没写,按照keywords搜索的功能也没写(这个就不一定依靠kbalertz提供的服务来完成了),而且点击搜索出来的链接直接用浏览器到www.kbalertz.com,可以在表面修改一下,点击链接在本应用程序内打开,然后只显示文章内存,然后再加入存储功能,我就想到这个现在可以做的。只要有一个人用(我除外)我就尽量弄的方便一点。
非常感谢各位的鼓励,其实最初我做他是为自己方便,而我之所以写信给Scott Cate还是需要他能提供更进一步服务资料,但是既然他自己也要做,所以不会给我了,他也没有说不允许使用他们的服务,但是我想老本家做肯定比我的强啊,干脆就用他的好了,但是不知道他的产品是不是免费的。不过听了几位朋友的留言,我会继续写下去。
谢谢!
因为在新闻组有人提出如果获取mdb数据库字段caption值的问题,直到现在我也没找到用ado解决的办法(谁有一定要告诉我,不要DAO的方法)。因此带着这个问题到Microsoft.Private.MVP.VisualBasic上讨论,希望得到更多的资料。通过讨论我发现ADO确实遗弃了DAO的某些功能。
http://www.trigeminal.com/usenet/usenet025.asp?1033
另外在http://msdn.microsoft.com/library/default.asp?url=/library/en-us/ado270/htm/ado_deprecated_components.asp
文中提到,ADO中一些组件可能被抛弃.(我哭!-()
那么使用这些的组建开发程序的就不得不考虑将来的升级问题。
Jet and Replication Objects (JRO)也要被抛弃(多么好的人就这么...)
申请了一个虚拟主机,今天终于开通了,以后咱在网上也有属于自己的窝了,但是主页还没做完,不过会慢慢完善的,估计也会逐渐升级版本,现在是纯HTML的。决定很快升级成asp的。
点击http://www.blanksoft.com/就可以访问了。现在的页面布局还不是最终的,我现在每天下班后都要花一个小时(其余时间做饭吃饭睡觉)左右来制作它。
--------------
谢谢以下各位提出宝贵意见,我会根据我的能力进行修改。做为一个程序员,可能侧重于逻辑思维和抽象思维,而且我我的出身是机械设计专业,所以对于平面设计应该算是门外汉,现在的页面就做为测试版本。可以说每一样都可以改动。
希望越多提意见的越好,最好是能将你的具体实施想法也能说出来(如果方便),这样我可以学习学习,如果你曾经看过我以前的作品,那么肯定可以看出现在的版本我已经改进很多了。可以说我的作品直接反映了我心理的想法,页面确实有些花哨,可能我向往多彩的人生(但是实际生活并非如此)
衷心表示感谢!
(最后有一点,我对Test的论点不同意,我个人并不代表大家,就数学统计而言我只是个别,所以不能因此就说这里的人没有创意,至于怀疑抄袭微软的内容我会改掉。)
按照winamp的nsdn的资料,在c++中可以用
int index = SendMessage(hwnd_winamp, WM_USER, 0, IPC_GETLISTPOS);
char *name = SendMessage(hwnd_winamp, WM_USER, index, IPC_GETPLAYLISTFILE);
的方法返回文件名,但是在vb中如何得到我没有找到办法,因此自己尝试写一下,发现IPC_GETPLAYLISTFILE返回的是相对winamp进程的地址,所以想读出字符串必须通过跨进程内存存取的方法取回字符串,幸好只是读取一个字符串,仔细琢磨一下还是不难的。大概向下面这样就可以了。
Private Const MAX_PATH As Long = 255
Private hWndWinamp As Long
Private Function GetWinampWindow() As Long
GetWinampWindow = FindWindow( "Winamp v1.x", vbNullString)
End Function
Public Function GetPlayingFileName() As String
Dim strFileName As String
Dim lp As Long, lpWinamp As Long
Dim iIndex As Long
Dim PID As Long
Dim bRet As Long
Dim dwRead As Long
Dim strTMP As String
Dim Temp As String
'得到winamp窗口的句柄
hWndWinamp = GetWinampWindow
If hWndWinamp = 0 Then
GetPlayingFileName = ""
Exit Function
End If
'返回正在播放文件的在playlist中的索引
iIndex = SendMessage(hWndWinamp, WM_USER, 0, IPC_GETLISTPOS)
'得到此文件入口指针
lp = SendMessage(hWndWinamp, WM_USER, iIndex, IPC_GETPLAYLISTFILE)
If lp = 0 Then
GetPlayingFileName = ""
Exit Function
End If
'下面几步就是跨进程读取刚才返回地址的数据
Call GetWindowThreadProcessId(hWndWinamp, PID)
lpWinamp = OpenProcess(PROCESS_VM_READ, 0, PID)
If lpWinamp = 0 Then
GetPlayingFileName = ""
Exit Function
End If
strTMP = String(MAX_PATH, vbNullChar)
bRet = ReadProcessMemory(lpWinamp, lp, ByVal strTMP, MAX_PATH, dwRead)
Call CloseHandle(lpWinamp)
strFileName = Left$(strTMP, InStr(strTMP, Chr$(0)) - 1)
GetPlayingFileName = strFileName
End Function
|
API 声明略!
RAXCO公司的产品可能有人用过,主要产品有:
PerfectDisk
FirstDefense-ISR
RepairDisk Manager 等
详细:http://www.raxco.com/products/
该公司的技术经理Greg Hayes 也获得了MS MVP 荣誉。
应该算是对微软MVP program的支持吧,Raxco的 MVP program向全世界MVP免费提供他们的产品。我今天刚刚收到从美国寄来的NFR(我猜测应该是Not For Sale的缩写)产品光盘和Software License Certificate
其中包括:
PerfectDisk 1 Server
FirstDefense-ISR 1Server
RepairDisk Manager 5 Server,5 Workstation
还没有安装,不过以前用过他们的产品,感觉不错。
邮件原文(部分):
Thank you for your interest in Raxco's MVP program. Due to very high demand, shipments have been delayed, and we apologize for the inconvenience. You will shortly receive an NFR copy for your use. The NFR CD contains non-expiring versions of PerfectDisk and RepairDisk Manager. The accompanying license is for one copy of each product, except RepairDisk Manager, which is a license for 5 servers and 5 workstations. These are all for your use only. The NFR CD contains product tours, white papers, and more.
我刚才找我当初申请的地址没有找到(信息比较早了)。
^_^.mvm好像我们理解的都不大正确,
我查了一下:
NFR=not for resale (估计担心我拿去卖钱)