Avatar billede NVedsted Juniormester
14. februar 2010 - 23:06 Der er 25 kommentarer og
1 løsning

Kan man lave en .php fil om til en Windows App?

Kan man lave en php-fil om til en Windows App?
Avatar billede preppydude Nybegynder
14. februar 2010 - 23:14 #1
En Win32/64 slags app? Nej, det kunne jeg ikke forestille mig.
Avatar billede NVedsted Juniormester
14. februar 2010 - 23:17 #2
Win XP Home Edition
Avatar billede showsource Seniormester
14. februar 2010 - 23:32 #3
Hvis du lægger php ind i et dir, kan du jo godt lave f.eks. en bat fil som afvikler et php script.
Avatar billede preppydude Nybegynder
14. februar 2010 - 23:36 #4
Ja, det kaldes en Win32 applikation og kan ikke laves i PHP. Du kan muligvis køre det som et script via en interpreter, men du får det aldrig til at ligne et egentligt program.

Hvis du vil i gang med at lave Win32/64 (lad os bare kalde det for Windows) programmer, og du i forvejen er ret glad for PHPs syntax o.l., så er C/C++ nok et super sted for dig at starte. C++ er det man kalder objekt orienteret, hvor C ikke er. De har begge sine fordele og ulemper som fx at C generelt giver hurtigere kode end C++. Men det er ikke noget du skal bekymre dig om til at starte med.

Udover C og C++ findes der massere af andre programmerings-sprog og IDEs til at lave Windows programmer, hvor Delphi (som er baseret på Object Pascal) er meget udbredt blandt folk og firmaer som skal lave komplicerede GUIs, fordi det er så nemt og hurtigt i forhold til C/C++.

Nogen vil nok også anbefale dig .NET, men jeg har ikke roddet med det siden det kom ud - og dengang var det både ustabilt, langsomt og det krævede brugeren skulle installere et Framework udover programmet (det var uacceptabelt, for det meste) - og så var ens kode utroligt dårligt beskyttet. Men det har nok ændret sig.

Her er nogle introduktioner til de forskellige sprog du kan lave Windows programmer med:
C: http://www.cprogramming.com/tutorial/c/lesson1.html
C++: http://www.cprogramming.com/tutorial/lesson1.html
Delphi: http://delphi.about.com/od/beginners/l/aa050702a.htm
Avatar billede NVedsted Juniormester
14. februar 2010 - 23:37 #5
Hvad er en dir, og hvad er en bat? Eller bedre sagt hvad bruger man det til.
Avatar billede NVedsted Juniormester
14. februar 2010 - 23:38 #6
det er bare en lille app jeg har i en .php!
Avatar billede janus_007 Nybegynder
14. februar 2010 - 23:40 #7
Preppy -> Så må du jo lige komme ind i kampen ;) .NET har forlængst overhalet C, C++ og Delphi.

Brug et stykke tid på at sætte dig ind i sagerne inden du råber sådan op :)
Avatar billede preppydude Nybegynder
14. februar 2010 - 23:42 #8
Du kan køre dit PHP script som et cron job hvis det er. Har bare aldrig sat sådan et op på Windows, så kan ikke helt forklare dig hvordan - medmindre du sidder på en Mac eller kører Linux :b
Avatar billede NVedsted Juniormester
14. februar 2010 - 23:44 #9
XP
Avatar billede arne_v Ekspert
14. februar 2010 - 23:45 #10
Windows kommer med windows scheduler.
Avatar billede preppydude Nybegynder
14. februar 2010 - 23:45 #11
janus_007:
Jeg råber skam ikke op. Er godt klar over .NET nok har forbedret sig, men det ændrer stadig ikke på det vigtigste af det: koden er virkelig dårligt beskyttet. Det har i hvert fald aldrig været et problem for mig at udtrække hele source code på et .NET program jeg skulle lege lidt med. Hastighedsmæssigt tror jeg stadig ikke på det overhæler C, C++ eller Delphi. :)

Det sagt, så er .NET super hurtigt og nemt hvis du er ligeglad med om folk bruger/stjæler/misbruger din kode.
Avatar billede arne_v Ekspert
14. februar 2010 - 23:47 #12
Alle Windows versioner fra 2003 kommer med .NET (den version som var nyeste da Windows versionen kom frem) og den kan ogsaa hentes med Windows update til Windows XP.

.NET kode kan stadig decompiles. Det ligger i konceptet.
Avatar billede arne_v Ekspert
14. februar 2010 - 23:52 #13
Decompilering er stort set aldrig et reelt problem.

For smaa programmer kan enhver habil programoer jo bare skrive et tilsvarende program.

For rigtige programmer er kildekode uden kommentarer, navne paa lokale variable, UML diagramer, design dokumenter og adgang til de udviklere som har skrevet programmet vaerdiloest. Det er hutigere og billigere at udvikle forfra end at reverse engineere.

Der er kun enkelte special tilfaelde med sensitive algoritmer og lignende hvor det er et problem.
Avatar billede preppydude Nybegynder
15. februar 2010 - 00:01 #14
Jeg taler ikke om efterligning men misbrug. Der er en grund til anti-virus ikke laves i .NET. Hastighed og sikkerhed.

Men ja, .NET har forbedret sig og Microsofts .NET interpreter har nok også forbedret sig en del. Anyways, jeg gider ikke endnu en diskussion om hvad der er bedst da det afhænger af hvad du skal lave. C/C++/Delphi er godt til nogle ting, .NET er godt til andre ting. Du kan ikke på nogen fair måde sammenligne så forskellige "sprog".
Avatar billede arne_v Ekspert
15. februar 2010 - 00:10 #15
Der er en grund til at antivirus ikke skrives i .NET, men det er hverken hastighed eller sikkerhed. .NET er hurtigt nok. Og security by obscurity er intet vaerd. Det er derimod ikke praktisk/muligt at hooke managed kode ind i unmanged kode som Windows, browser og kontor pakker.

Og .NET koder er ikke fortolket men derimod JIT compilet.
Avatar billede preppydude Nybegynder
15. februar 2010 - 00:25 #16
Så vidt jeg kan huske så kan du manipulere et .NET program som du kan med et normalt Win32 program, da de stadig bruger de samme API funktioner. Er næsten sikker på det, fordi jeg engang skulle hooke BitBlt i et "anti-cheat" til et spil som var lavet i .NET - og det lykkedes altså.

.NET er baseret (eller, var, i hvert fald) på en JIT-interpreter der genererer maskinkode on-the-fly. Gætter på at Microsoft's .NET interpreter fungerer som Google's V6 engine gør. Men er ikke sikker.

Vil du belære mig har jeg intet imod det. Faktisk ville det nok være meget sjovt. Er for ung til at vide lige så meget som dig. :b Men synes bare vi skal gøre det et andet sted end i den her tråd. Det kan du gøre på AIM eller sådan noget. ;)
Avatar billede arne_v Ekspert
15. februar 2010 - 01:07 #17
Der er ret mange ting som forventer en Win32 DLL. C# og andre .NET sprog kan ikke producere en saadan.

.NET EXE -> Win32 DLL er nemt

Win32 EXE -> .NET DLL er mildt sagt grumset (standard raadet i det tilfaelde er Win32 EXE -> mixed mode C++ -> .NET DLL)

Det hedder en JIT compiler ikke en JIT fortolker.
Avatar billede preppydude Nybegynder
15. februar 2010 - 01:59 #18
Det hedder en JIT-interpreter i min verden og lad mig lige forklare hvorfor før du flår hovedet af mig.

Når du laver og åbner .NET program sker følgende:
1. .NET-koden bliver konverteret til MSIL
2. MSIL bliver derefter konvereteret til en slags MSIL-bytecode
3. Når du så åbner .NET programmet bliver dens MSIL-bytecode kørt igennem en JIT "interpreter" (kald du det en compiler) der genererer maskinkode ud fra det den har "interpreted"
4. Først her bliver maskinkoden kørt af processoren

... altså er .NET det man kalder et "interpreted langauge" da det ikke direkte bliver kørt af processoren.

Du kan tilføje preppydude111 på AIM hvis du vil diskutere videre.. :)
Avatar billede arne_v Ekspert
15. februar 2010 - 02:04 #19
Nu er det ikke kun mig som kalder det en JIT compiler.

Det gør alle.

Programmer som outputter native kode kaldes traditionelt for compilere.

Det gælder også .NET og Java JIT compilere.
Avatar billede preppydude Nybegynder
15. februar 2010 - 02:31 #20
Ja, du har nok ret. Men lidt hen af vejen har jeg også ret, vil jeg mene. Da jeg for sjov lavede mit eget programmeringssprog bestod compileren i hvert fald i bund og grund af:
1. En tokenizer
2. En interpreter der fortolkede koden og genererede maskinkode

Min opfattelse har bare været at en compiler var noget der fortolkede et tekst dokument for derefter at generere en fil der indeholdte diverse headers, sections og maskinkode (ikke MSIL kode). Men det kan man jo så sige at .NET's compiler gør i runtime - bare man har .NET framework.
Avatar billede Six Nybegynder
15. februar 2010 - 02:34 #21
Du kan prøve den her: http://www.bambalam.se/bamcompile/
Avatar billede Slettet bruger
15. februar 2010 - 03:36 #22
Syntes ikke jeg har set nogle nævne PHP-GTK, så måske kan det være noget lignende det du leder efter, med mindre du vil igang med et helt nyt sprog.
Avatar billede NVedsted Juniormester
15. februar 2010 - 19:33 #23
=>fjappe Hvordan virker det?
Avatar billede NVedsted Juniormester
16. februar 2010 - 12:38 #24
Hæler mest lige i øjeblikket mest til php-gtk, men hvordan åbner man den og gemmer den?
Avatar billede NVedsted Juniormester
16. februar 2010 - 12:47 #25
Tror snart jeg dropper ideen.
Avatar billede NVedsted Juniormester
11. marts 2010 - 20:56 #26
Lukker den!
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester