金山词霸以前的版本有一个“dic协议”,就是在浏览器中输入dic:xxx就可以调用指定程序(金山词霸)进行动作(检索)。
Outlook也有一个“Outlook协议”,例如在浏览器中的地址栏输入“outlook:收件箱”,就调用Outlook,打开收件箱我想创建一个Text协议。
输入Text:C:\1.txt就用记事本打开C:\1.txt请问如何实现?
如果是程序,请烦劳给出VB6.0的源程序。
如果是向注册表中写数据,请给出具体数据。100分奉送,谢谢!
Outlook也有一个“Outlook协议”,例如在浏览器中的地址栏输入“outlook:收件箱”,就调用Outlook,打开收件箱我想创建一个Text协议。
输入Text:C:\1.txt就用记事本打开C:\1.txt请问如何实现?
如果是程序,请烦劳给出VB6.0的源程序。
如果是向注册表中写数据,请给出具体数据。100分奉送,谢谢!
输入Text:C:\1.txt就用记事本打开C:\1.txt如果第一个:前是Text,则使用Shell "notepad.exe c:\1.txt", vbNormalFocus
对于“Text协议”只是举一个例子。
而且,我输入的地方是IE的地址栏。我的真实想法是,如果我用网页做软件的界面(比如outlook的开始页,VS.net的开始页等等),超连接的用途是执行某些特殊命令,可能就会像outlook那样存在什么“outlook:收件箱”之类的超连接(当然,程序内部会特殊处理它打开收件箱),一旦用户拖拽这个超连接到桌面,就出现了一个指向“outlook:收件箱”的快捷方式,这时用户点击这个快捷方式就必然出错。而Outlook就不出错,因为它在系统里注册了一个“outlook:”协议,就像http协议、ftp协议一样,并调用指定的程序(Outlook)来处理它。如果能创建一个Text协议,把Text:后的字符交给记事本(或者某个程序)作为参数来处理,就可以像outlook一样了。这样做的好处在于:1.方便用户2.界面更加严谨,没有错误。不知道大家是否明白我的意思。
http://www.mvps.org/emorcillo/vb6/inet/protocol.shtml
叫 Asynchronous Pluggable Protocols (协议插件),也可google一下。
<a href='vb:FileOpen()' title='Open a file'><font color=blue>Open a file</font></a>vb code:
Public Sub FileOpen()
Dim objFile As Object On Error GoTo ErrorHandler ' Prompt the user for a file to open.
With ctlCommonDialog
.CancelError = True
.Flags = cdlOFNFileMustExist Or cdlOFNHideReadOnly Or cdlOFNPathMustExist
.Filter = "HTML files (*.html)|*.html|All files (*.*)|*.*"
.DialogTitle = "Open a file..."
.ShowOpen
End With ' Load the file into the text box and render it.
Set objFile = CreateObject("Scripting.FileSystemObject")
txtHTMLSource.Text = objFile.OpenTextFile(ctlCommonDialog.FileName, 1).ReadAll()
ShowMyHTMLExitPoint:
Set objFile = Nothing
Exit SubErrorHandler:
If Err.Number <> cdlCancel Then
ctlHTMLView.DocumentHTML = "<html><body>" & _
"<p>Error:</p>" & _
"<p>The file could not be opened.</p>" & _
"</body></html>"
End If
Resume ExitPoint
End Sub如果是的话,发信给我:[email protected],我可以给你源代码
就可以在地址栏中打入:D:\VB.txt
我只是举一个不很恰当的例子,我要创建类似Dic协议的一个本机上的协议,并将协议后面的信息传递给我自己的程序作处理(见前面的帖子),并不是只要实现打开一个文件。主要目的是解决网页做界面的问题。另,VS.Net也有一个帮助协议:ms-help://
例如ms-help://MS.VSCC.2003/vsccCommon/html/vsccCommon_Start_Page.htm,是调用MSDN文档浏览器来打开某个页面。
问题是注册协议好像不像注册文件关联那样简单,恳请高手赐教。
Declare Function GetActiveWindow Lib "user32" Alias "GetActiveWindow" () As Long
说明
获得活动窗口的句柄
返回值
Long,活动窗口的句柄,如没有窗口处于活动状态,则返回零值
http://msdn.microsoft.com/library/default.asp?url=/workshop/networking/networking_node_entry.asp