salve a tutti
sto provando le stored procedure, vorrei restituire un valore ma penso che sto sbagliando qualcosa
dato il seguente codice vb.net
codice:
      Dim objconn As SqlConnection
        Dim istruzionesql As String
        Dim objcomm As New SqlCommand
        Dim objparam As SqlParameter
        Dim objdata As SqlDataReader

        Dim stringaconn = "Data Source=.\SQLEXPRESS;initial Catalog=prova;integrated Security=true;"

        objconn = New SqlConnection(stringaconn)
        objconn.Open()
        istruzionesql = "sp_prova2"
 
        objcomm.CommandType = CommandType.StoredProcedure
        objcomm.CommandText = istruzionesql
        objcomm.Connection = objconn

        Dim P As SqlParameter
        P = objcomm.Parameters.Add(New SqlParameter("@PARAM1", SqlDbType.Int, 6, ParameterDirection.Output))
        P.Value = 22
        P = objcomm.Parameters.Add(New SqlParameter("@PARAM2", SqlDbType.Int, 6, ParameterDirection.Output))
        P.Value = 11
  
        Try
            objdata = objcomm.ExecuteReader()
            MsgBox(objcomm.Parameters("@PARAM1").Value)
            MsgBox(objcomm.Parameters("@PARAM2").Value)
            objdata.Close()
        Catch ex As Exception
            MsgBox(ex.ToString)
        End Try


        objconn.Close()
e la seguente stored procedure
codice:
ALTER PROCEDURE [dbo].[sp_prova2] 
	
	(
	@Param1 int OUTPUT,
	@Param2 int OUTPUT
	)
	
AS

select * from PRova
	 
	 select @Param1=1
	 select @Param2=2
	 SET NOCOUNT ON  
	RETURN
come potete leggere, vorrei restituire 2 valori, esattamente valorizzando
param1 e param2 con dei valori diversi da quello che passo dalla form
ma puntualmente mi viene restituiti i valori 11 e 22
facendo il debug, dentro sql server, non appena il debugger arriva a valorizzare questi
parametri, li setta dando i valori 1 e 2 (quindi giusti), ma appena ritorno con il
debut nella windows form, ecco che il messagebox mi restituisce 11 e 22!!!
cosa sbaglio?
grazie