下面的宏用于将剪贴板里面的url指定的文件在vs.net中打开以便编辑,目的是提高打开文件的速度
比如:你在ie中运行一个系统时,某一个页面有错,这个时候你需要修改这个页面,那么你只需要复制该页面的url,然后到vs.net中使用一个运行宏的快捷键就可以打开修改该页面了(最好事先打开了解决方案,这样该文件是作为解决方案中的一个文件打开的,而不是一个单独的与项目无关的文件)。如果不使用宏你将不得不打开解决方案资源管理器,一层一层的展开树,然后找到要修改的文件
Imports EnvDTE
Imports System.Diagnostics
Imports System.Windows.Forms
Imports System.Threading
Public Module RecordingModule
Dim ClipString As String
Sub TemporaryMacro()
'// take whatever is on the clipboard and save it to an xml file
'// intended for cut & paste from QueryAnalyzer
Dim ClipBoardThread As System.Threading.Thread = New System.Threading.Thread(AddressOf getClipString_core)
With ClipBoardThread
.ApartmentState = ApartmentState.STA
.IsBackground = True
.Start()
'-- Wait for copy to happen
.Join()
End With
ClipBoardThread = Nothing
If ClipString <> "" Then
'虚拟目录名()
Dim VirtualName = "kxframework"
VirtualName = LCase(VirtualName) ' added 2008-4-2
Dim pos = InStr(LCase(ClipString), "/" & VirtualName & "/")
If (pos = 0) Then
pos = InStr(LCase(ClipString), "\" & VirtualName & "\")
End If
If (pos <> 0) Then
ClipString = Right(ClipString, Len(ClipString) - pos - Len("\" & VirtualName & "\") + 1)
End If
pos = InStr(ClipString, "?")
If (pos <> 0) Then
ClipString = Left(ClipString, pos - 1)
End If
'组合成正确的物理路径
ClipString = "E:\科信施工项目成本管理系统\" & VirtualName & "\" & ClipString
ClipString = Replace(ClipString, "/", "\")
If System.IO.File.Exists(ClipString) Then
DTE.ItemOperations.OpenFile(ClipString)
Else
MessageBox.Show("文件(" & ClipString & ")未找到!")
End If
End If
End Sub
Sub getClipString_core()
ClipString = Clipboard.GetDataObject().GetData(System.Windows.Forms.DataFormats.StringFormat)
End Sub
End Module
Imports System.Diagnostics
Imports System.Windows.Forms
Imports System.Threading
Public Module RecordingModule
Dim ClipString As String
Sub TemporaryMacro()
'// take whatever is on the clipboard and save it to an xml file
'// intended for cut & paste from QueryAnalyzer
Dim ClipBoardThread As System.Threading.Thread = New System.Threading.Thread(AddressOf getClipString_core)
With ClipBoardThread
.ApartmentState = ApartmentState.STA
.IsBackground = True
.Start()
'-- Wait for copy to happen
.Join()
End With
ClipBoardThread = Nothing
If ClipString <> "" Then
'虚拟目录名()
Dim VirtualName = "kxframework"
VirtualName = LCase(VirtualName) ' added 2008-4-2
Dim pos = InStr(LCase(ClipString), "/" & VirtualName & "/")
If (pos = 0) Then
pos = InStr(LCase(ClipString), "\" & VirtualName & "\")
End If
If (pos <> 0) Then
ClipString = Right(ClipString, Len(ClipString) - pos - Len("\" & VirtualName & "\") + 1)
End If
pos = InStr(ClipString, "?")
If (pos <> 0) Then
ClipString = Left(ClipString, pos - 1)
End If
'组合成正确的物理路径
ClipString = "E:\科信施工项目成本管理系统\" & VirtualName & "\" & ClipString
ClipString = Replace(ClipString, "/", "\")
If System.IO.File.Exists(ClipString) Then
DTE.ItemOperations.OpenFile(ClipString)
Else
MessageBox.Show("文件(" & ClipString & ")未找到!")
End If
End If
End Sub
Sub getClipString_core()
ClipString = Clipboard.GetDataObject().GetData(System.Windows.Forms.DataFormats.StringFormat)
End Sub
End Module