Toon posts:

[ASP] sourcecode compileren tot .exe..?!!

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik heb wel eens een webapplicatie gezien die bijv. zo'n URL heeft...

www.domain.com/blaat/blaat/domain.exe?param=value

dit is geen verkapt nimba virus maar echt een web*applicatie*

wat zijn de mogelijkheden voor zoiets..?!

waarin moet je die .exe schrijven e.d.

moet je gebruik maken van een remote procedure call..!?

ik heb ook geen id waarop ik moet zoeken bij google... dus dat heb ik ook nog niet gedaan....

het gaat me er eigenlijk vooral om om de sourcecode te compileren...
als je het in asp schrijft heeft iedereen die locale toegang heeft tot die server de mogelijkheid om dingen te wijzigen/bekijken... (jscript.encode is geen optie)

wie heeft er een id..?!!

  • 4of9
  • Registratie: Maart 2000
  • Laatst online: 15-04 15:52
op msdn.mircosoft.com kun je er documentatie over vinden.

Aspirant Got Pappa Lid | De toekomst is niet meer wat het geweest is...


  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 18:55

gorgi_19

Kruimeltjes zijn weer op :9

ASP = scriptingtaal != compiled language.
Ik vraag me af of die pagina geschreven is in VBscript / JScript; vermoedt eerder C++ of C.

Je zult, met ASP dus je eigen objecten moeten schrijven in VB o.i.d. en deze aanroepen in ASP.

Een andere mogelijkheid is om de boel in ASP.Net te zetten; deze biedt betere bescherming van je code dan gewoon ASP.

Digitaal onderwijsmateriaal, leermateriaal voor hbo


Verwijderd

Topicstarter
4of9 schreef op 26 augustus 2002 @ 17:28:
op msdn.mircosoft.com kun je er documentatie over vinden.
maar als je niet precies weet wat je zoekt kom je er niet uit....

dat je van asp geen exe kan maken snap ik ook wel...

maar is het mogelijk een exe te schrijven die kan werken binnen een site...

nu gaat het een .exe downloaden ipv benaderen...

.NET is helaas geen optie....

  • jvo
  • Registratie: Augustus 2001
  • Laatst online: 04-10-2023

jvo

geen commentaar

Die .exe schrijf je volgens mij gewoon in C, C++ of eigenlijk alles wat je maar wilt.
(Geen scripttalen in elk geval)

Omdat je op een windows server zit, kan je ook windows .exe's uitvoeren. Net zoals je scripts uitvoert. Op een linux bak kan je ook gewoon C++ compileren en renamen naar .cgi

Gewoon C++ of iets dergelijks gebruiken en de server goed instellen.

Je doet niks met remote procedure calls. De invoer komt gewoon over de standaard invoer binnen en je standaard uitvoer gooit ie weer terug naar de gebruiker. Op MSDN kan je wel vinden hoe je precies met de invoer en uitvoer moet omgaan.

[ Voor 0% gewijzigd door jvo op 26-08-2002 17:39 . Reden: Toevoeging ]


  • CyberSnooP
  • Registratie: Augustus 2000
  • Laatst online: 31-03 16:47

CyberSnooP

^^^^ schrijft --->

Dat is compleet afhankelijk van je webserver configuratie.. Als je een CGI-Bin directory (hebt) aan(ge)maakt dan kun je zorgen dat de webserver de executables in die directory uitvoert. Afhankelijk van je operating system kunnen dat dus ook .EXE-files zijn. Zo kun je op internet zelfs voorbeelden vinden van CGI-Bin in Visual basic bijv.

|_____vakje______|


  • Erikie
  • Registratie: September 2000
  • Laatst online: 31-08 10:57

Erikie

www.erikie.nl

en wat zijn dan de precieze voordelen hiervan?! het lijkt mij maar trager werken omdat de webserver een (redelijk) groot programma moet aanroepen en uitvoeren..

traktor scratch!


  • 4of9
  • Registratie: Maart 2000
  • Laatst online: 15-04 15:52
gorgi_19 schreef op 26 augustus 2002 @ 17:29:
ASP = scriptingtaal != compiled language.
Ik vraag me af of die pagina geschreven is in VBscript / JScript; vermoedt eerder C++ of C.

Je zult, met ASP dus je eigen objecten moeten schrijven in VB o.i.d. en deze aanroepen in ASP.

Een andere mogelijkheid is om de boel in ASP.Net te zetten; deze biedt betere bescherming van je code dan gewoon ASP.
ASP is een raamwerk geen script taal.

en je kunt zoeken op ISAPI en/of COM dan kom je al een heel eind denk ik

Aspirant Got Pappa Lid | De toekomst is niet meer wat het geweest is...


Verwijderd

Erikie schreef op 26 augustus 2002 @ 18:14:
en wat zijn dan de precieze voordelen hiervan?! het lijkt mij maar trager werken omdat de webserver een (redelijk) groot programma moet aanroepen en uitvoeren..
Ik denk dat het sneller werkt (dan ASP).
Iedere keer de pagina interpreteren kost ook veel tijd.
In VB 6 zit ook nog zoiets als WebClasses (IIS Application)
Dat is gecomplieerde code die wordt aangeroepen via een ASP pagina.
Op de MSDN is daar wel meer over te vinden.
Ik geloof alleen dat niemand het gebruikt.
Alhowel, dat dacht ik ook van ActiveX Documents. Maar daar hebben ze zelfs een heel CRM pakket in gemaakt.

  • zneek
  • Registratie: Augustus 2001
  • Laatst online: 08-02-2025
:) Je kunt ook een extension mapping aanmaken voor .exe en die door asp.dll laten uitvoeren. Dan kun je je asp pagina's een .exe extensie geven :) Of bedoel je dat niet ;)

  • xtra
  • Registratie: November 2001
  • Laatst online: 31-08 14:51
Die .exe kun je in iedere taal maken waarmee je console-applicaties (door sommigen DOS-applicaties genoemd) kunt schrijven. Door zelf de juiste headers mee te geven, geef je aan dat het om html (of iets anders als gif) uitvoer gaat in plaats van een te downloaden programma.

Verwijderd

Je bent opzoek naar de isapi docs op msdn.

  • Vlabakje90
  • Registratie: November 2001
  • Niet online
Ik weet hier verder helemaal nix van af, maar ik weet het dat de website van Informatique zo in elkaar zit. www.informatique.nl :)

Misschien kunnen ze je vertellen, of althans het webdesign bedrijf, hoe ze het gedaan hebben. :)

  • Tux
  • Registratie: Augustus 2001
  • Laatst online: 20:57

Tux

Vlabakje90 schreef op 27 augustus 2002 @ 11:32:
Ik weet hier verder helemaal nix van af, maar ik weet het dat de website van Informatique zo in elkaar zit. www.informatique.nl :)

Misschien kunnen ze je vertellen, of althans het webdesign bedrijf, hoe ze het gedaan hebben. :)
Daar gebruiken ze een combinatie van Clipper en Xbase++

The NS has launched a new space transportation service, using German trains which were upgraded into spaceships.


  • 4of9
  • Registratie: Maart 2000
  • Laatst online: 15-04 15:52
Verwijderd schreef op 27 augustus 2002 @ 11:29:
Je bent opzoek naar de isapi docs op msdn.
zoals ik al eerder heb gezegd :) alleen vraag me af of iemand wel leest wat mensen reply-en :?

Aspirant Got Pappa Lid | De toekomst is niet meer wat het geweest is...


  • raptorix
  • Registratie: Februari 2000
  • Laatst online: 17-02-2022
Denk dat het komt omdat ze de exe dan ook op een floppy kunnen zetten en offline browsen :+

  • xtra
  • Registratie: November 2001
  • Laatst online: 31-08 14:51
Verwijderd schreef op 27 augustus 2002 @ 11:29:
Je bent opzoek naar de isapi docs op msdn.
ISAPI is geen exe (maar een dll) en wordt ook op een andere manier aangeroepen. Bovendien is isapi (normaal) alleen bruikbaar met IIS. ISAPI is volgens mij wel efficiënter dan exe (of cgi)

Maar wil de topic-opener ze nu zelf maken of alleen weten hoe het werkt?

  • Nibble
  • Registratie: Juli 2001
  • Laatst online: 31-08 12:10
Je kunt dat krijgen door een ISAPI DLL of APACHE module of CGI-BIN te maken.
Dat gebeurt niet door ASP code te compilen, maar door gewoon een hogere programmeertaal te pakken en zo'n module te programmeren net als elk ander programma alleen moet je met zo'n programma rekening houden met bepaalde specifieke dingen.

T is for TANK, and T is for TERROR ... and K is the K for KILLING in error.


  • Sponge
  • Registratie: Januari 2002
  • Laatst online: 28-08 17:06

Sponge

Serious Game Developer

Kan het ook een "IIS Application" zijn? Is namelijk een mogenlijkheid in Vb6 Enterp.

hmm, ff geprobeerd.. dat wordt dus een dll. Kan dus niet :)

Verwijderd

Een nadeel van zo'n exe is, is dat hij telkens een nieuw scherm opent om het script uit te voeren en dit kan irritant zijn. Er bestaan programeertalen (zaols RapidQ, een soort VB) die je ook als CGI kan laten compilen zodat de programmas in de achtergrond worden uitgevoerd.

Verwijderd

Dus je wilt zoiets als op de microsoft website: http://www.microsoft.com/...prd=ie&pver=5.0&ar=IStart
maar dan als .exe.

Je kan de volgende URL gebruiken als je meer info wilt over het maken van zo'n dll: http://www.planet-source-...p?txtCodeId=7391&lngWId=4

Verwijderd

Topicstarter
thnx voor alle reacties...

in mijn situatie wil ik eigenlijk een exe gebruiken in plaats van asp pagina's

dus ipv van login.asp wil ik een programma schrijven in bijv. VB dat voor de login procedure zorgt......

.exe laten renderen door asp engine is leuk... maar niet al te serieus

ik weet ook wel het verschil tussen asp en vb hoor... dus met asp kom je niet ver in een exe...

ik ben er alleen nog niet helemaal achter hoe ik de in en uitvoer fix... maar dat zoek ik nog wel uit...

Kleine update: ik heb een asptypelibary als reference toegevoegd... nou kan ik dus bij dingen als request, response ed...

maar zelfs al gooi ik hem in een cgi-bin dir met uitvoer rechten... hij blijft em downloaden... (is wel pws... de iis5 server ligt beetje plat...)

maar anyway iemand had het over headers meegeven aan een document..!? oe waar en waarmee..?!

[ Voor 0% gewijzigd door Verwijderd op 27-08-2002 18:36 . Reden: status update ]


  • xtra
  • Registratie: November 2001
  • Laatst online: 31-08 14:51
Headers? Dat was ik... Even kort:
Je moet een console programma maken dat letterlijk ongeveer de volgende uitvoer genereert:
code:
1
2
3
4
5
6
7
8
9
10
11
Content-Type: text/html
Content-Length: 121

<html>
<head>
<title>Method Not Supported</title>
</head>
<body>
<p>Bla</p>
</body>
</html>


De eerste twee regels zijn de headers, waarvan er overigens nog meer kunnen zijn. Even zoeken naar de werking van HTTP en cgi is hiervoor erg behulpzaam. Vooral het doorgeven van variabelen is 'apart'.

Als je ervaring hebt met VB is het misschien zelfs makkelijker zelf een object te maken dat je vanuit een ASP-pagina aanroept.

Verwijderd

Topicstarter
een object aanmaken gaat wel... ik heb mn exe verplaatst naar een andere server waar de )_cgi-bin dir wel goed werkt... het programma wordt niet meer gedownload en op de server wordt een exe gestart....

met Dim test As ASPTypeLibrary.Response

heb ik een asp response object....

maar als ik het gewoon als een console programma op de server mik met visible = false

dan krijg ik de volgende error: user defined type not defined....

dit is de source:

code:
1
2
3
4
5
Private Sub Form_Load()
Dim test As ASPTypeLibrary.Response
test.Write "Dit is een test...."
End
End Sub


er komt schot in de handel... maar t blijft wel een beetje ge@#$ :D

Verwijderd

Topicstarter
sgop ondur ut achturwerruk.....

ik heb haast jaa....... >:)

  • zneek
  • Registratie: Augustus 2001
  • Laatst online: 08-02-2025
Is het doel echt alleen beveiligen van je code? Zelf seen compileerde exe is natuurlijk terug te zetten (decompilen) en te wijzigen. Tis wat lastiger maar goed.

Puur beveiliging zou je natuurlijk ook met rechten kunnen doen. ASP dir alleen jij en INETUSR rechten.

Verwijderd

Topicstarter
nee tis ook voor het distribueren van code enzo....

Verwijderd

Topicstarter
krijg nou een lamme fout van dat omhoog geschop... ken iemand anders dat ffies overnemen..?! >:)

  • zneek
  • Registratie: Augustus 2001
  • Laatst online: 08-02-2025
wat bedoel? :)

  • zneek
  • Registratie: Augustus 2001
  • Laatst online: 08-02-2025
Waarom maak je er uberhaupt nog ASP pagina's van. Is een Java/JSP oplossing niet meer wat je zoekt? Dan kun je makkelijk (bijna) al je code binair maken.

Verwijderd

Topicstarter
ja laat ik morgen ook nog es ff java gaan leren... >:)

nee das bijna et zelfde als tegen netscape zeggen dat microsoft ook al een browser heeft, en em daarom niet meer zelf hoeven te maken....

voor de gene die geen zin hebben om alles door te lezen (waaronder ik vaak ook:)

een samenvatting...:

.dll of .exe moet benaderbaar zijn via t internet...

http://connect.myhost.net/_cgi-bin/control.exe?p=1&w=4&r=5

of

http://connect.myhost.net/_cgi-bin/control.dll?p=1&w=4&r=5

.dll of .exe moet het liefst geschreven zijn in VB 5/6 entreprise

via de ASPTypeLibrary de invoer/uitvoer managen

de app krijg ik remote gestart... maar de invoer via de ASPTypeLibary werkt nog niet...

  • zneek
  • Registratie: Augustus 2001
  • Laatst online: 08-02-2025
Okee, nog 1 poging. Waarom maak je er geen COM object van? Je bouwt in ASP alleen de userinterface en het afhandelen van in/uitvoer, en bouwt de logica in een COM object.

Ik blijf volhouden, het lijkt me namelijk nogal een rammeloplossing zoals jij het wilt. Maar, daar kan ik me natuurlijk ook in vergissen, ik heb het namelijk nog nooit zo geprobeerd.

Verwijderd

Topicstarter
omdat ik liever helemaal geen sourcecode wil distribueren... ik wil de applicatie kunnen verspreiden aan klanten zonder dat er de sourcecode in de wwwroot van hun server staat... ze zijn nniet helemaal achterlijk....

kortom gewoon een webapp die via de ASPTypelibary de taak van ASP overneemt....

is nl bijna het zelfde en zelfs sneller als ASP/VBscript... maar in de theorie is het allemaal mogelijk maar ik krijg et met geen mogelijkheid aan het werk...... ben er al een week mee bezig... :(

  • Belgar
  • Registratie: Januari 2002
  • Laatst online: 17-08 22:31

Belgar

Archmaster ranzige code..

eh. wat heeft de COM oplossing met 'source code' te maken?

In de miscrosoft MSDN staat hoe je dit eventueel met de hand kan doen. Ik heb echter geen ervaring met de ASPTypeLibrary. (programmeer overigens alleen in C++). Je geeft nog steeds niet aan wat niet lukt? info van de ASP-pagina in de EXE krijgen? info van je EXE terug in HTML? authentication?

...Als het maar werkt


  • zneek
  • Registratie: Augustus 2001
  • Laatst online: 08-02-2025
Belgar schreef op 30 augustus 2002 @ 10:41:
eh. wat heeft de COM oplossing met 'source code' te maken?
Dat is toch ook binaire code, gecompileerd dus. Of vergis ik me nou? Nu we het er toch over hebben, server objecten die je vanuit ASP kan gebruiken(ADODB.Connection, JMail.message enz.), wat zijn dat voor dingen? COM? COM+? Ik haal die namen steeds door elkaar.

  • Belgar
  • Registratie: Januari 2002
  • Laatst online: 17-08 22:31

Belgar

Archmaster ranzige code..

't was ook een reply op mabit. COM can een goede oplossing zijn. VB kan ook. Alleen is het absoluut niet duidelijk wat er nu niet werkt (COM object met VB6 kan ook nog :) )

...Als het maar werkt


  • LaitSolaire
  • Registratie: September 2001
  • Laatst online: 01-08 10:32
Mabit: probeer jij maar eens de beheerder van de server bij je klant wijs te maken dat hij jouw .exe's en .dll's moet draaien.

Je moet dan wel heel hard kunnen maken dat ze de boel niet laten vastlopen of 50% van alle resources in beslag nemen. Ergo: je moet verdomde goed uitkijken als je met ISAPI of exe's aan de slag gaat.

Edit: er bestaan overigens wel handige paketten voor RAD en WRAD:
http://www.atozedsoftware.com/intraweb.html is er eentje voor Delphi en wordt sinds versie 7 standaard meegeleverd. Ze zullen ook wel voor andere talen bestaan.

Verwijderd

Waarom gebruik je niet VB webclasses? Hierin heb je meteen een heel framework waarin je je webapplicatie kunt bouwen ipv dat je zelf met headers, decoding en ander low-level gedoe bezig bent. Ik vind het zelf bijna een beetje de voorganger van ASP.NET (page klassen, event based, etc.). Dit wordt uiteindelijk gecompileerd naar een COM component dus de source is niet te achterhalen (afgezien van VB decompilers die dit soms verassend goed kunnen reproduceren :) ). De ASP typelibrary is denk gewoon met een reference te gebruiken.

Verwijderd

Topicstarter
oke....

de dll / exe krijg ik via cgi-bin inmiddels wel op de server gestart...
asptypelibary kan ik ook definieren binnen VB

echter bij het uitvoeren van het project op de server gaat fout....

ASPTypeLibary.Response.Write geeft allemaal rare foutmeldingen ("user defined type not defined") en de response blijft uit waardoor de clientbrowser crasht en de server ook gene pagina's meer serveert....

deze problemen komen omdat er dus een error optreedt bij de uitvoer... maar het zou in de praktijk moeten werken....

Verwijderd

Topicstarter
oke ik heb et allemaal even opnieuw doorlopen...

krijg nu ook een andere foutmelding: object var or block WITH not set////

source:

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
 Private ObjectContext As MTxAS.ObjectContext
   Private Request As ASPTypeLibrary.Request
   Private Response As ASPTypeLibrary.Response
   Private Session As ASPTypeLibrary.Session
   Private Application As ASPTypeLibrary.Application
   Private Server As ASPTypeLibrary.Server

    




Private Sub Form_Load()
   Set ObjectContext = GetObjectContext()
   Set Response = ObjectContext("Response")
   Set Request = ObjectContext("Request")
   Set Session = ObjectContext("Session")
   Set Application = ObjectContext("Application")
   Set Server = ObjectContext("Server")
   MsgBox Request
   End Sub


Ik heb als project een standaard exe gekozen en die op invisible gezet...

References: APSTypeLibrary, MTS

Het heeft dus niet zoveel met het component te maken... maar meer met de script(fout)...
Pagina: 1