Avatar billede lsn Nybegynder
28. september 2000 - 10:53 Der er 19 kommentarer

Windows skrivebordet

Hvordan laver man et program som ligner Windows skrivebordet til en forveksling?

Det skal være såddan, at brugeren kan åbne et program, som ligger ude på Skrivebordet i Windows, men som  også kan ses på skrivebordet i mit program. Hvordan laver man det?
Avatar billede pellelil Nybegynder
28. september 2000 - 11:16 #1
Skrivebordet er ikke andet end et GANSKE ALMINDELIGT program der (tilfældigvis) hedder EXPLORER.EXE. Du kan således lave en ny explorer. Hvis det skal virke på samme måde (have de samme faciliteter) så vil jeg blot sige \"god arbejdslyst\", det er ikke svært men jeg ville nok bruge min tid på noget mere fornuftigt: \"If it ain\'t broken, don\'t fix it\".

Skal du have nogle \"få\" pointere at gå efter så skal den jo kigge i de foldere hvori ikonerne (som du I se ser på skrive bordet ligger), og du skal såleded vise disse (grafisk). Ligeledes skal du styre at der dobbelt klikkes hvorefter du starter de programmer som ikonerne \"peger på\".
Avatar billede delphi Nybegynder
28. september 2000 - 12:35 #2
LSN har da vist ambitioner med sit operativsystem, hv\'a?...
Avatar billede lbs Nybegynder
28. september 2000 - 13:47 #3
man dropper delphi og begynder at kode c++.
Derefter går man ind på msdn.microsoft.com
og studere apifunktionerne i windows...
Når man er blevet tilstrækkeligt rutineret i dem skulle det ikke være noget problem at lave en lille kopi der kan lave en kopi af alle ikonerne på skrivebordet og starte programmerne når man klikker...

Men jeg er ret sikker på at der ikke findes nogen som gider at lave det for dig for 30 point, ej heller under 500...
hvis du smider et par tusind op skal jeg overveje det..
Jonas
Avatar billede delphi Nybegynder
28. september 2000 - 14:03 #4
Der er absolut ikke nogen grund til at begynde at lære C++ hvis formålet er at benytte Win API\'et.  Alle Win Api rutinerne er inkluderet i de medfølgende units.

Delphi.
Avatar billede lsn Nybegynder
28. september 2000 - 14:38 #5
Hvorfor skal man droppe Delphi og bruge C++?
Hvad er der i vejen med Delphi?
Er C++ da bedre end Delphi?

Avatar billede delphi Nybegynder
28. september 2000 - 14:52 #6
Hvad er bedst, æbler eller bananer??  - det afhænger vel af om man skal lave tærte eller lagkage!

I de fleste sammenhænge er der reelt ikke stor forskel på om man vælger at løse en opgave med Delphi eller C++.
C++ kan måske siges at være bedre til mere maskin/system nære ting, fx. opgaver hvor du arbejder tæt på Win API\'et, men det efter min mening nu mest fordi det meste dokumentation er skrevet til C++.
Delphi foretrækker jeg personligt til alt hvad der har med Databaser at gøre - mest fordi jeg efterhånden kender Delphi\'s database komponenter til hudløshed og fordi fx. QuickRapport og Delphi arbejder så godt sammen.  Delphi har iøvrigt en rigtig delig, hurtig compiler og IDE.

Delphi
Avatar billede delphidaner Nybegynder
29. september 2000 - 11:54 #7
Du LSN.... Hvad med at du lærte Assembler, og lavede et RIGTIGT operativsystem? Det er noget man kan være stolt af!
Avatar billede lsn Nybegynder
29. september 2000 - 14:03 #8
Jeg HAR lavet et rigtigt operativsystem!

Det er uafhængig af Windows og DOS, og det jeg er rigtig stolt af, er ikke så meget det at jeg har lavet et styresystem, men et styresystem, som kan styre Windows...
Det er da vist ikke alle operativsystemer der kan styre Windows. Vel?

Derfor kan jeg godt tillade mig at lave brugerfladen i Windows, og kalde det et styresystem, hvis bare SELVE styresystemet styrer Windows.

LSN System bygger ikke længere på DOS, da jeg synes at det er lidt forkert, så derfor har jeg brugt mere tid på at lave et styresystem der kan styrer Windows, som skal starte brugerfladen til LSN System, end på at bruge DOS!

LSN
Avatar billede lsn Nybegynder
29. september 2000 - 14:04 #9
P.S. Min hjemmeside er forældet.
Der står jo \"LSN System bygger på DOS\", da gør det ikke længere.
Nu er det et SELVSTENDIGT styresystem.
Ja. Det kan også styrer Windows ME.

LSN
Avatar billede michaelras Nybegynder
30. september 2000 - 23:30 #10
Lige ang. Windows Skrivebord:
Det er jo intet andet end en ListView som læser indholdet af mappen C:\\Windows\\Skrivebord.
Ikonerne fås også MEGET let:
Ved at bruge en TListView og sætte dens ImageLists til at pege på \"System-Icon-Listen\" kan man bare bruge SHGetFileInfo til at få IconIndex\'et.
ex:
procedure TForm1.find_system_iconer;
var SHFileInfo: TSHFileInfo;
begin
    with ListView1 do
    begin
          SmallImages := TImageList.CreateSize(16,16);
          SmallImages.ShareImages := True;
          SmallImages.Handle := ShGetFileInfo(\'*.*\', 0, SHFileInfo, SizeOf(SHFileInfo), SHGFI_SMALLICON or SHGFI_ICON or SHGFI_SYSICONINDEX);
          LargeImages := TImageList.Create(nil);
          LargeImages.ShareImages := True;
          LargeImages.Handle := ShGetFileInfo(\'*.*\', 0, SHFileInfo, SizeOf(SHFileInfo), SHGFI_LARGEICON or SHGFI_ICON or SHGFI_SYSICONINDEX);
    end;
end;

og så:
procedure TForm1.Opdater;
  var Found    : Integer;
      SearchRec : TSearchRec;
      SHFileInfo: TSHFileInfo;
begin
  Listview1.Items.Clear;
  Found := FindFirst(\'C:\\Windows\\Skrivebord\\*.*\', faAnyFile, SearchRec);
  While Found = 0 do
  begin
    If SearchRec.Name[1] <> \'.\' then
    begin
      ShGetFileInfo(PChar(SearchRec.Name), 0, SHFileInfo, SizeOf(SHFileInfo), SHGFI_SMALLICON or SHGFI_SYSICONINDEX);
      with Listview1.Items.add do
      begin
          Caption := SearchRec.Name;
          ImageIndex := SHFileInfo.iIcon;
      end;
    end;
    Found := FindNext(SearchRec);
  end;
  FindClose(SearchRec);
end;

Michael
Avatar billede kasseper Nybegynder
30. september 2000 - 23:36 #11
Sikke noget rod man kunne komme ud i med sådan et program. Man ville jo næppe vide om man var i programmet eller på det \"rigtige\" skrivebord, lidt ala matrix, åhhh nu kommer laurence fishburne eller er det nu morphius, eller hvad det nu hedder alt sammen, by the way en ganske imponerende bedrift dit LSN system
Avatar billede delphidaner Nybegynder
02. oktober 2000 - 07:54 #12
LSN, lad mig lige forstå dig ret: LSN System er egentlig \'bare\' et program, som erstatter explorer.exe eller hvad?

Når jeg tænker på et styresystem, så tænker jeg på boot-sektor, filsystem, interrupts og hukommelsesstyring.
Avatar billede lsn Nybegynder
02. oktober 2000 - 09:31 #13
Når jeg tæmker på et styresystem, tænker jeg på:
Styring af programmer, installerer drivere til din nye hardware, og styring af cd-rom drev, diskette drev og evt. DVD drev.

Nej. Det er ikke \"bare\" et program som erstatter Explorer.exe

Det er et program som styrer Windows.

Hvis du installerer LSN System, og derefter
sletter LSN System, kan Windows ikke startes op.
Jeg kan da godt sende dig en demoversion af LSN System. Skal jeg det?
Men når tiden er udløbet, kan du ikke længere starte Windows op...

Men du kan da godt få en demo-version af LSN Syste...

LSN
Avatar billede delphi Nybegynder
02. oktober 2000 - 09:35 #14
>Men når tiden er udløbet, kan du ikke længere starte Windows op...

LOL - hold kæft for en demo....
Avatar billede delphidaner Nybegynder
02. oktober 2000 - 11:38 #15
Jeg vil stadigvæk kalde den en shell til Windows (en meget avanceret en).

Et operativsystem er et program, som styrer de grundlæggende opgaver på en computer. Eks. på OS\'er: DOS, Linux, BeOS, OS/2, Windows (bemærk: Windows er også på grænsen til at være en shell til DOS, fordi den \'arbejder sammen\' med DOS)

LSN System er en shell, fordi den er afhængig af Windows\'s kernel, såsom styring af hukommelse og håndtering af filer, som ligger på harddisken i klynger. Din shell bruger i bund og grund Windows API funktioner til alle de ting du nævner.

Et program, som styrer Windows er en shell til Windows.
Avatar billede kasseper Nybegynder
02. oktober 2000 - 13:09 #16
Ja, der maa jeg give delphidaner ganske ret.
Et styresystem er ikke bare en platform for Windows, saa er windows stadig styresystemet.
Et styresystem er kode der haandtere computerens helt basale funktioner.
Saa som at skrive og gemme i registre og udfaoere systemkald, osv. osv.
Avatar billede danneck Nybegynder
03. oktober 2000 - 07:57 #17
Altså LSN, et styresystem går ind i computerens mere vitale dele og styrer dem (kontrolere ram,  harddisk mm.).
Dit system går ind i windows i forvejen færdiglavede komponenter og bruger dem.
Du kunne måske kalde dit system for et
styre(r)system, da det jo går ind og styrer windows thi hi...
Én ting er i hvertfald sikkert du giver ordet styresystem en ny betydning.

Danneck
Avatar billede pellelil Nybegynder
03. oktober 2000 - 08:17 #18
Lad os kalde en skovl for en skovl og en shell for en shell  !?
Avatar billede slepee Nybegynder
04. december 2000 - 13:17 #19
Det er en shell, ikke et styre-system?
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