Ho bisogno di creare un oggetto com per il mio asp classico, poiché posso creare un .net Assembly e farlo 'Interop' con com, quindi ho proceduto per creare un assembly .NET come questo: -COM Interop (come passare un array al com) tramite ASP classico
using System;
using System.Collections.Generic;
using System.Runtime.InteropServices;
using System.Linq;
using System.Text;
using System.Data.SqlClient;
using System.Data;
using System.Configuration;
using System.Web;
namespace LMS
{
[ComVisible(true)]
public class Calc
{
public int Add(int val1, int val2, out string[] outputz)
{
int total = val1 + val2;
outputz = new string[5];
outputz[1] = "test2";
outputz[2] = "test3";
outputz[3] = "test4";
outputz[4] = "test5";
return total;
}
}
}
successivo ho fatto la solita, costruire, corse: gacutil & RegAsm
e nella mia pagina ASP classico ho avuto questo: -
Dim params
dim objPassport3
set objPassport3 = Server.CreateObject("LMS.Calc")
comTest2 = objPassport3.Add(1,1,params)
e ottengo l'errore:
Error Type: Microsoft VBScript runtime (0x800A0005) Invalid procedure call or argument: 'Add' /eduservice/test.asp, line 25
Ma se modifico l'assemblea di non usare un array, tutto solo lavoro, posso anche inviare stringa normale o int da e per l'assemblea a ASP classico. Ho letto tante cose, ma ottengo lo stesso errore,
Qualcuno ha provato questo prima e ha avuto successo, si prega di condividere la vostra soluzione
grazie
grazie mille per la risposta ... non vedo l'ora try..will aggiornarvi sullo stato – visual
OrbMan, grazie, hai risolto il mio problema, vorrei poter trattare tu per pranzo. – visual
Nessun problema, felice di aiutare. – RedFilter