Ik heb het volgende probleem:
Op dit moment ben ik bezig om een zogenaamde shoutbox voor op een webpagina te maken. Deze shoutbox communiceert met een webservice en haalt daar om de paar seconden nieuwe berichten vandaan.
De shoutbox is een DLL welke ik in een aspx pagina embed op de volgende manier:
Als ik lokaal de web-applicatie start (http://localhost/testmap/pagina.aspx) wordt de dll netjes geladen. Echter als ik dezelfde URL aanspreek via het netwerk (bijvoorbeeld http://pcnaam/testmap/pagina.aspx wordt de dll niet geladen. En verschijnt alleen een 'kruisje' op de plaats waar het component zijn gui zou moeten tonen.
Naar mijn idee was hiervan de oorzaak dat de dll bij de gebruiker welke de pagina opent niet geregistreert staat, dus wilde ik iets maken om de dll te registreren. Voor zover ik begrepen heb zou dit met behulp van een .CAB bestand moeten kunnen. Hierin zou ik de dll moeten plaatsen samen met een .inf bestand waarin de installatie stappen komen te staan.
Met behulp van het classid en de cab file zou ik het bestand moeten kunnen laten installeren bij de gebruiker op de volgende manier:
Het .INF bestand heb ik op de volgende manieren aangemaakt:
- handmatig
- INFTool.EXE (van internet gehaald)
Het Cab bestand heb ik op de volgende manieren aangemaakt:
- Package and Deployment in VS.NET
- Cabarc.exe (een tool van CAB SDK)
Na het openen van de URL wordt gevraagd of de gebruiker het cab bestand wil installeren, maar na het installeren wordt de Shoutbox niet getoond (weer het 'kruisje').
Hieronder de inhoud van een van de INF bestanden die volgens mij zou moeten werken:
Het lijkt mij dat het probleem in het inf bestand zit, want bij het genereren van het cab bestand lijkt mij dat er weinig fout kan gaan. Echter is dit .INF bestand niet erg ingewikkeld.
Iemand ideeen over wat er fout gaat?
Is het het INF bestand dat niet klopt?
Is de manier van laden misschien niet in orde?
of zou het probleem toch in de DLL kunnen zitten?
Op dit moment ben ik bezig om een zogenaamde shoutbox voor op een webpagina te maken. Deze shoutbox communiceert met een webservice en haalt daar om de paar seconden nieuwe berichten vandaan.
De shoutbox is een DLL welke ik in een aspx pagina embed op de volgende manier:
HTML:
1
2
3
| <OBJECT CLASSID="ShoutBox.dll#ShoutBox.ShoutBox" VIEWASTEXT> </OBJECT> |
Als ik lokaal de web-applicatie start (http://localhost/testmap/pagina.aspx) wordt de dll netjes geladen. Echter als ik dezelfde URL aanspreek via het netwerk (bijvoorbeeld http://pcnaam/testmap/pagina.aspx wordt de dll niet geladen. En verschijnt alleen een 'kruisje' op de plaats waar het component zijn gui zou moeten tonen.
Naar mijn idee was hiervan de oorzaak dat de dll bij de gebruiker welke de pagina opent niet geregistreert staat, dus wilde ik iets maken om de dll te registreren. Voor zover ik begrepen heb zou dit met behulp van een .CAB bestand moeten kunnen. Hierin zou ik de dll moeten plaatsen samen met een .inf bestand waarin de installatie stappen komen te staan.
Met behulp van het classid en de cab file zou ik het bestand moeten kunnen laten installeren bij de gebruiker op de volgende manier:
HTML:
1
2
3
4
| <OBJECT CLASSID="clsid:11D969C0-F192-12D3-A66F-0140963251D4" CODEBASE="http://pcnaam/testmap/ShoutBox.cab" VIEWASTEXT> </OBJECT> |
Het .INF bestand heb ik op de volgende manieren aangemaakt:
- handmatig
- INFTool.EXE (van internet gehaald)
Het Cab bestand heb ik op de volgende manieren aangemaakt:
- Package and Deployment in VS.NET
- Cabarc.exe (een tool van CAB SDK)
Na het openen van de URL wordt gevraagd of de gebruiker het cab bestand wil installeren, maar na het installeren wordt de Shoutbox niet getoond (weer het 'kruisje').
Hieronder de inhoud van een van de INF bestanden die volgens mij zou moeten werken:
code:
1
2
3
4
5
6
7
8
9
| [Add.Code]
ShoutBox.dll=ShoutBox.dll
[chatbar.dll]
file-win32-x86=thiscab
clsid={11D969C0-F192-12D3-A66F-0140963251D4}
FileVersion=1.0.1959.22528
DestDir=11
RegisterServer=yes |
Het lijkt mij dat het probleem in het inf bestand zit, want bij het genereren van het cab bestand lijkt mij dat er weinig fout kan gaan. Echter is dit .INF bestand niet erg ingewikkeld.
Iemand ideeen over wat er fout gaat?
Is het het INF bestand dat niet klopt?
Is de manier van laden misschien niet in orde?
of zou het probleem toch in de DLL kunnen zitten?