Gå til innhold

Laste ned exe med activex control


Anbefalte innlegg

Som emnetittel sier, finnes det noen måte å konvertere vanlige enkeltstående exe filer til en active x kontroll?

Eller til andre formater som kan kjøres direkte online?

Har et lite program som sjekker om en gitt server er online, vet at dette enkelt kan gjøres gjennom andre scripts osv, men poenget var at min exe fil skal brukes online.

Så hvis det finnes noen måter, kom med dem :D

Endret av Met_Fredrik
Lenke til kommentar
Videoannonse
Annonse
Nei, exe-fila kan ikke brukes, man må ha kildekoden som settes inn i et activeX prosjekt (vb6) eller i et windows kontroll prosjekt (Visual Studio .Net) med interface til com.

7018743[/snapback]

 

Hva om jeg har en active x control som spør om jeg vil kjøre exe fila, så kjøres den? Er det mulig? Jeg prøvde, laga en active x control som bare linka direkte til exe fila men da spør IE/FF om jeg vil laste ned fila bare.. Finnes det noen måte så jeg kan svare ja på active x og åpne fila direkte?

 

Takk for svar så langt:)

 

Og kan alt compiles til active x? Ser ut til at visual absic er mest brukt ihvertfall.

Endret av Met_Fredrik
Lenke til kommentar
Hva om jeg har en active x control som spør om jeg vil kjøre exe fila, så kjøres den? Er det mulig? Jeg prøvde, laga en active x control som bare linka direkte til exe fila men da spør IE/FF om jeg vil laste ned fila bare.. Finnes det noen måte så jeg kan svare ja på active x og åpne fila direkte?

 

Takk for svar så langt:)

7021810[/snapback]

 

Tror nok ikke det.., men det er mulig du kan kjøre exe filen hvis den ligger på den lokale disken, men det er vel ikke det

 

Og kan alt compiles til active x? Ser ut til at visual absic er mest brukt ihvertfall.

7021810[/snapback]

 

Vel jeg kan ikke svare på alt, men det funker med mange språk, noen spesielle språk du tenker på?

Lenke til kommentar
Du beveger deg på områder jeg vet veldig lite om, men det er normalt å skille internett fra maskinen. Så exe filer passer liksom ikke inn på internett. ActiveX skulle være MS sin "exe" for intenett.

7028206[/snapback]

 

Ja nemlig, det er jo det det er. Så det må da gå ann å lage en activex som prompter brukern om å "gi seg hen" til url det er snakk om å tillate å kjøre exe filer. :hmm:

 

NÅ kom jeg på et eksempel! Når du svarer ja på å innstalere Adobe flash player får du en exe fil på pc'n din..

Eller er det bare exe fil på flash playern som følger med selve programmet?

Om exe fila ikke kjøres så vil jeg at det skal være mulig å kopiere den inn på din pc når man svarer ja ihvertfall..

Endret av Met_Fredrik
Lenke til kommentar

ActiveX er en vanlig exe fil.

Den inneholder en egen seksjon som holder informasjon om objekter og datatyper som er brukt og laget i exe fila, men ellers er det en helt vanlig exe fil.

 

ActiveX skrives ofte i Visual Basic, men kan også skrives i C++ (men da blir det kalt COM+) du kan kjenne igjen enkelte COM/ActiveX filer som OCX og IDL (IDL er ikke en exe fil) men de er vanligst å se som .DLL eller .EXE

Grunnen til at ActiveX brukes i internett explorer, framfor vanlige exe filer, er at de registreres med en gang de blir tatt i bruk.

 

ActiveX er å regne som et stort sikkerhetshull i Internett Explorer, dersom folk ikke vet hva det er.

 

Du kan ikke konvertere ActiveX til vanlig exe, for det er allerede vanlig exe.

Lenke til kommentar
Hva om jeg har en active x control som spør om jeg vil kjøre exe fila, så kjøres den? Er det mulig? Jeg prøvde, laga en active x control som bare linka direkte til exe fila men da spør IE/FF om jeg vil laste ned fila bare.. Finnes det noen måte så jeg kan svare ja på active x og åpne fila direkte?

 

Vel, du kan f.eks. lage en activeX som først fra server leser exe-fila som en binær fil og lagrer den som en exe-fil på klientmaskina. Derpå lar du activeX'en aktivere den lagrede exe-fila med f.eks. en passende shell/process-kommando.

Lenke til kommentar
Hva om jeg har en active x control som spør om jeg vil kjøre exe fila, så kjøres den? Er det mulig? Jeg prøvde, laga en active x control som bare linka direkte til exe fila men da spør IE/FF om jeg vil laste ned fila bare.. Finnes det noen måte så jeg kan svare ja på active x og åpne fila direkte?

 

Vel, du kan f.eks. lage en activeX som først fra server leser exe-fila som en binær fil og lagrer den som en exe-fil på klientmaskina. Derpå lar du activeX'en aktivere den lagrede exe-fila med f.eks. en passende shell/process-kommando.

7033917[/snapback]

 

Det er dette jeg snakker om..

Noen som har noen forslag? I et hvilket som helst språk egentlig :)

Lenke til kommentar
Forslag?

Her har du fått løsningen!

Skal du ha en fullt fungerende ActivX "dings" som gjør det backup nevnte?

7036678[/snapback]

 

Ja, noe sånt :dribble:

Nei da.. Men jeg er en nybegynner her, skjønte ikke alt han mente osv, har programmert litt java, ikke noe avansert, men om jeg kunne fått noen hint og ideer? Takk for svar så langt! :)

Lenke til kommentar

Har laga en activeX (ocx-fil) som på en wbside i ie, kan hente ned en hver exe-fil og få den kjørt umiddelbart. Imidlertid, siden denne activeX også kan brukes til ondsinnet kode, distribuerer jeg den ikke. Imidlertid, for den som kan vb 6 og vil prøve seg, kan følgende tips være nyttige for å lage en slik activeX i vb 6.

 

1. Kopier exe-fila til en annen mappe, høyreklikk den, velg nytt navn og endre navnet fra f.eks. test.exe til test.txt. Overfør så test.txt til ekstern server.

2. Bruk inet-kontrollen i activeX'en til å lese ned test.txt til klientmaskina som f.eks. slik:

Dim bytes() As Byte

bytes() = inet1.OpenURL("http://xxxx.com/test.txt", icByteArray)

3. Så i activeX'en lagrer du test.txt på klientmaskina som test.exe f.eks. slik:

fnum = FreeFile

Open "c:/test.exe" For Binary Access Write As #fnum

Put #fnum, , bytes()

Close #fnum

3. Til slutt kjøres test.exe i activeX'en f.eks. slik:

Shell "c:/test.exe", vbNormalFocus

4. Bruk vb 6 sin deployment wizard for å lage cab-fila og lagre denne i samme mappe som test.txt på server. Sjekk av for at ocx-fila blir inkludert i cab'en.

5. Legg så en passende referanse til cab-fila inn på websida og du er i gang, men merk at det vel bare ie som som funker med dette opplegg og at brukeren vil få spørsmål om en activeX skal installeres etc.

Endret av backup
Lenke til kommentar
Har laga en activeX (ocx-fil) som på en wbside i ie, kan hente ned en hver exe-fil og få den kjørt umiddelbart. Imidlertid, siden denne activeX også kan brukes til ondsinnet kode, distribuerer jeg den ikke. Imidlertid, for den som kan vb 6 og vil prøve seg, kan følgende tips være nyttige for å lage en slik activeX i vb 6.

 

1. Kopier exe-fila til en annen mappe, høyreklikk den, velg nytt navn og endre navnet fra f.eks. test.exe til test.txt. Overfør så test.txt til ekstern server.

2. Bruk inet-kontrollen i activeX'en til å lese ned test.txt til klientmaskina som f.eks. slik:

Dim bytes() As Byte

bytes() = inet1.OpenURL("http://xxxx.com/test.txt", icByteArray)

3. Så i activeX'en lagrer du test.txt på klientmaskina som test.exe f.eks. slik:

fnum = FreeFile

     Open "c:/test.exe" For Binary Access Write As #fnum

     Put #fnum, , bytes()

     Close #fnum

3. Til slutt kjøres test.exe i activeX'en f.eks. slik:

Shell "c:/test.exe", vbNormalFocus

4. Bruk vb 6 sin deployment wizard for å lage cab-fila og lagre denne i samme mappe som test.txt på server. Sjekk av for at ocx-fila blir inkludert i cab'en.

5. Legg så en passende referanse til cab-fila inn på websida og du er i gang, men merk at det vel bare ie som som funker med dette opplegg og at brukeren vil få spørsmål om en activeX skal installeres etc.

7042715[/snapback]

 

Tusen takk, nå skal jeg leke meg :)

 

EDIT:

Har laga et par activex prosjekter bare for å prøve litt, og jeg har et problem.

Jeg kan trykke f5 for å prøve fila i IE, og jeg kan kompilere som .ocx, men hvordan legger jeg den til en .html fil?

Endret av Met_Fredrik
Lenke til kommentar
Gjør punkt 4 med vb 6. Output av dette er en Package mappe, der finner du en cab-fil og en htm-fil. I koden for htm-fila finner du svaret.

7043414[/snapback]

 

Gjør punkt 4 med vb 6. Output av dette er en Package mappe, der finner du en cab-fil og en htm-fil. I koden for htm-fila finner du svaret.

7043414[/snapback]

 

Jeg sliter litt, må si det, er liksom litt over mitt nivå :)

Men prøver da, satt sammen:

 

Private Sub Hei()

Dim bytes() As Byte
bytes() = inet1.OpenURL("http://xxxx.com/test.txt", icByteArray)

fnum = FreeFile
    Open "c:/test.exe" For Binary Access Write As #fnum
    Put #fnum, , bytes()
    Close #fnum


Shell "c:/test.exe", vbNormalFocus

End Sub

 

Skjønner jo jeg og at her mangler det noe.

Det compiler jo, men alt er ikke akkurat med :!:

 

Noen flere tips du vil gi meg? :)

Endret av Met_Fredrik
Lenke til kommentar
Her har du en link til hvordan man kan lage en activeX ved hjelp av vb 6:

 

http://www.codeproject.com/vbscript/vbActiveXControl.asp

7059790[/snapback]

 

 

Dette klarer jeg, laget en enkel activex og fikk den til å kjøre på en side.

Jeg fikk også compila det jeg skrev i posten over til en .ocx fil og den kjører på en side, men den har jo ingen funksjon, hva mangler jeg? :)

Lenke til kommentar

Så du har valgt å legge inn koden i en metode i activeX-kontrollen? I så fall må den defineres slik i ctl'en i activeX prosjektet:

 

Public sub hei()

msgbox("Heisan")

end sub

 

Sett at den kompilerte ocx-fila heter ole.ocx. Her har du da det eksempel i ie og med vbscript, men javascript kan selvfølgeglig også brukes, på hvordan man kan bruke ole.ocx på websida:

 

<head>

<script language = vbscript>

sub window_onload

ole.hei

end sub

</script>

</HEAD>

<body>

<OBJECT ID="doffen"

CLASSID="CLSID:F27D0702-086A-409A-9D6D-FC14A4BE6ABA"

CODEBASE="per.CAB#version=1,0,0,0">

</OBJECT>

</body>

 

Merk at object-tag'en og cab-fila får du ved å bruke vb6 sin Package and Deployment Wizard!

Lenke til kommentar

Takker for hjelp så langt :)

 

Har brukt package and deployment wizard og laget en cab fil og alt som gjelder akkurat å få det til å virke på en nettside funker perfekt.

Men det er enda noe jeg ikke skjønner :blush:

 

Public Sub hallo()
Dim bytes() As Byte
bytes() = inet1.OpenURL("http://localhost/test.txt", icByteArray)

fnum = FreeFile
   Open "c:/test.exe" For Binary Access Write As #fnum
   Put #fnum, , bytes()
   Close #fnum


Shell "c:/test.exe", vbNormalFocus

End Sub

 

Kompileres til hei.ocx, jeg har satt det inn i en side, alt virker, controllen kommer fram på sia og IE spør om jeg vil kjøre den. Men det skjer ingen ting, hva mangler jeg i koden ovenfor? Jeg kjører en webserver, så den burde kunne hente text.txt rett fra localhost, og så lagre den som test.exe på c:. Men ingen ting skjer.

Endret av Met_Fredrik
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...