Questo breve articolo illustra il sistema per agganciare una dll semplice a explorer e poi richiamarla da un javascript di una pagina web.
Aprire un nuovo progetto vuoto dentro a visual c#
listato c#:
using System;
using System.Runtime.InteropServices;
namespace testx
{
public interface Atestx
{
string FName();
}
[ClassInterface(ClassInterfaceType.AutoDual)]
public class test :Atestx
{
public string FName()
{
return "ActiveX avviato!!";
}
}
}
Tutto molto semplice in pratica ci si avvale di un'interfaccia che viene instanziata in una classe ad hoc.
Attenzione di referenziare il System.Runtime.InteropServices
Ora che abbiamo il nostro active x procediamo cosi:
Nella directory c:\windows\Microsoft.Net\framework
avete le cartelle con le versioni del .NET
controllate la versione che avete del .NET 2, io per esempio ho la v2.0.50727 quindi
copiatevi il file con il listato in c:\ esempio io l'ho chiamato testx.cs
aprite il cmd (start/esegui/cmd)
tramite le istruzioni cd o chdir spostatevi nella cartella
c:\windows\Microsoft.NET\framwork\v2.0.50727 (o quella che avete voi come versione)
quindi scrivete
csc /t:library c:\testx.cs
Il sorgente viene compilato.
Ora dovete registrare la dll
regasm testx.dll /tlb /codebase
il gioco e' fatto ora e' agganciata a explorer come activex
ed ecco come testare il tutto, create uan pagina web con questo codice:
<html>
<head>
<script language="javascript">
<!-- Load the ActiveX object -->
var x = new ActiveXObject("testx.test");
alert(x.FName());
</script>
</head>
<body>
</body>
</html>
lanciate la pagina, abilitate la richiesta di attivazione activex et volià activex fatto!!
Ora divertitevi.... :)
ciao
Aggiungi un commento