Utan ett specifikt fel som uppstår är det svårt att ge ett specifikt svar. Koden du har lagt upp kunde vara korrekt. Det finns inget jag ser som är fel i alla scenarier. Men här är några ställen jag skulle börja leta efter.
Är din kommandosats korrekt formaterad? Accepterar alla VarChar-parametrar 1024 tecken? Går någon av dina strängar in i en VarChar-kolumn längre än 1024? Är returnStatus-typen för Int16 korrekt?
Hur som helst, det är några ställen att börja, om du lägger upp lite mer detaljerad information om problemet kan du få några fler svar.