La macro di Visual Studio 2008 funziona solo dall'IDE Macro, non da Macro Explorer
-
05-07-2019 - |
Domanda
Modifica: la creazione di un nuovo modulo nello stesso progetto VSMacros ha risolto il problema.
La seguente macro funziona solo se apro Macro IDE da Visual Studio ed eseguo la macro da lì.
Sarebbe molto più utile se potessi semplicemente fare clic con il pulsante destro del mouse sulla macro da Esplora macro dalla mia istanza di Visual Studio.
Devo fare qualcosa di ovviamente sbagliato, ma non ho mai lavorato con macro VS prima. MessageBox non viene visualizzato in entrambi i casi.
Option Strict Off
Option Explicit Off
Imports System
Imports EnvDTE
Imports EnvDTE80
Imports EnvDTE90
Imports System.Diagnostics
Imports System.Security.Principal
Imports System.Windows.Forms
Public Module AttachToSdtProcess
Sub AttachToSdtProcess()
Try
'If MessageBox.Show("Attach to SDT.exe", "Caption", _
' MessageBoxButtons.OKCancel) = DialogResult.Cancel Then
'Return
'End If
Dim dbg2 As EnvDTE80.Debugger2 = DTE.Debugger
Dim trans As EnvDTE80.Transport = dbg2.Transports.Item("Default")
Dim compName As String = WindowsIdentity.GetCurrent().Name
compName = compName.Substring(0, compName.IndexOf("\"))
Dim proc2 As EnvDTE80.Process2 = _
dbg2.GetProcesses(trans, compName).Item("TheExecutable.exe")
If proc2 Is Nothing Then
MessageBox.Show("Could not find TheExecutable.exe")
End If
proc2.Attach2(dbgeng)
Catch ex As System.Exception
MsgBox(ex.Message)
End Try
End Sub
End Module
Soluzione
Da questo articolo su MSDN Penso di aver trovato un'altra possibile risposta. Il suggerimento principale di quella discussione era:
Nel menu Strumenti, Opzioni, sezione Sicurezza componenti aggiuntivi / Macro, seleziona la casella di controllo " Consenti l'esecuzione di macro "
Altri suggerimenti
La finestra di messaggio nell'editor macro è:
MsgBox("Your Text Here") = Resultxx
Buona fortuna.