Page 1 of 2 1 2 LastLast
Results 1 to 15 of 17

Thread: Programma schrijven op meerdere pc's

  1. #1

    Programma schrijven op meerdere pc's

    Hoi,

    Ik wil graag een programma maken op 2pc's. Ten eerste op die van mijn vriendin waarop hij moeiteloos draait. Maar op mijn eigen pc kan ik niet verder werken aan het programma omdat ik telkens dezelfde fout krijg namelijk:

    windres: can't open file `TToernooiOpenen': No such file or directory

    Ik heb diverse dingen geprobeerd, opnieuw opslaan, opnieuw bouwen, path veranderen, lazarus opnieuw installeren, maar niks helpt. Wie kan mij helpen?

    Groeten en alvast bedankt!

  2. #2
    Wat doe je bij het openen van het bestand ? Laat eens de code zien waar het fout gaat ??? Het lijkt erop dat ie naar een bepaalde map of bestand zoekt wat op jou pc niet bestaat
    Brouwvisie is helemaal mijn ding
    http://www.bier-brouwer.nl

  3. #3

    ..

    Ik gebruik een USB stick, waarop alle bestanden staan.. bij beide pc's is dit de E: schijf.

    Mijn .LPI bestand, verwijst volgens mij allemaal naar E:

    Code:
    <?xml version="1.0"?>
    <CONFIG>
      <ProjectOptions>
        <Version Value="9"/>
        <PathDelim Value="\"/>
        <General>
          <MainUnit Value="0"/>
          <Title Value="AutoCrossProject"/>
          <ResourceType Value="res"/>
          <UseXPManifest Value="True"/>
          <Icon Value="0"/>
          <ActiveWindowIndexAtStart Value="0"/>
        </General>
        <i18n>
          <EnableI18N LFM="False"/>
        </i18n>
        <VersionInfo>
          <StringTable ProductVersion=""/>
        </VersionInfo>
        <BuildModes Count="1" Active="Default">
          <Item1 Name="Default" Default="True"/>
        </BuildModes>
        <PublishOptions>
          <Version Value="2"/>
          <IncludeFileFilter Value="*.(pas|pp|inc|lfm|lpr|lrs|lpi|lpk|sh|xml)"/>
          <ExcludeFileFilter Value="*.(bak|ppu|o|so);*~;backup"/>
        </PublishOptions>
        <RunParams>
          <local>
            <FormatVersion Value="1"/>
          </local>
        </RunParams>
        <RequiredPackages Count="1">
          <Item1>
            <PackageName Value="LCL"/>
          </Item1>
        </RequiredPackages>
        <Units Count="5">
          <Unit0>
            <Filename Value="E:\AutoCrossProject.pas"/>
            <IsPartOfProject Value="True"/>
            <UnitName Value="AutoCrossProject"/>
            <EditorIndex Value="3"/>
            <WindowIndex Value="0"/>
            <TopLine Value="1"/>
            <CursorPos X="33" Y="20"/>
            <UsageCount Value="37"/>
            <Loaded Value="True"/>
          </Unit0>
          <Unit1>
            <Filename Value="E:\toernooiopenenunit.pas"/>
            <IsPartOfProject Value="True"/>
            <ComponentName Value="ToernooiOpenen"/>
            <ResourceBaseClass Value="Form"/>
            <UnitName Value="ToernooiOpenenUnit"/>
            <IsVisibleTab Value="True"/>
            <EditorIndex Value="0"/>
            <WindowIndex Value="0"/>
            <TopLine Value="121"/>
            <CursorPos X="1" Y="137"/>
            <UsageCount Value="37"/>
            <Loaded Value="True"/>
            <LoadedDesigner Value="True"/>
          </Unit1>
          <Unit2>
            <Filename Value="E:\toernooidata.pas"/>
            <IsPartOfProject Value="True"/>
            <ComponentName Value="ToernooiGegevens"/>
            <ResourceBaseClass Value="Form"/>
            <UnitName Value="ToernooiData"/>
            <WindowIndex Value="0"/>
            <TopLine Value="15"/>
            <CursorPos X="18" Y="32"/>
            <UsageCount Value="37"/>
          </Unit2>
          <Unit3>
            <Filename Value="E:\AutoCrossProject.lpi"/>
            <EditorIndex Value="2"/>
            <WindowIndex Value="0"/>
            <TopLine Value="1"/>
            <CursorPos X="26" Y="7"/>
            <UsageCount Value="19"/>
            <Loaded Value="True"/>
            <DefaultSyntaxHighlighter Value="XML"/>
          </Unit3>
          <Unit4>
            <Filename Value="C:\lazarus\lcl\interfaces\win32\win32listsl.inc"/>
            <EditorIndex Value="1"/>
            <WindowIndex Value="0"/>
            <TopLine Value="161"/>
            <CursorPos X="1" Y="172"/>
            <UsageCount Value="12"/>
            <Loaded Value="True"/>
          </Unit4>
        </Units>
        <JumpHistory Count="26" HistoryIndex="25">
          <Position1>
            <Filename Value="E:\AutoCrossProject.pas"/>
            <Caret Line="16" Column="30" TopLine="1"/>
          </Position1>
          <Position2>
            <Filename Value="E:\toernooiopenenunit.pas"/>
            <Caret Line="125" Column="51" TopLine="109"/>
          </Position2>
          <Position3>
            <Filename Value="E:\toernooiopenenunit.pas"/>
            <Caret Line="130" Column="40" TopLine="108"/>
          </Position3>
          <Position4>
            <Filename Value="E:\toernooiopenenunit.pas"/>
            <Caret Line="138" Column="44" TopLine="123"/>
          </Position4>
          <Position5>
            <Filename Value="E:\toernooiopenenunit.pas"/>
            <Caret Line="134" Column="34" TopLine="124"/>
          </Position5>
          <Position6>
            <Filename Value="E:\toernooiopenenunit.pas"/>
            <Caret Line="138" Column="19" TopLine="123"/>
          </Position6>
          <Position7>
            <Filename Value="E:\toernooiopenenunit.pas"/>
            <Caret Line="137" Column="56" TopLine="123"/>
          </Position7>
          <Position8>
            <Filename Value="E:\toernooiopenenunit.pas"/>
            <Caret Line="136" Column="67" TopLine="123"/>
          </Position8>
          <Position9>
            <Filename Value="E:\toernooiopenenunit.pas"/>
            <Caret Line="143" Column="3" TopLine="123"/>
          </Position9>
          <Position10>
            <Filename Value="E:\toernooiopenenunit.pas"/>
            <Caret Line="138" Column="22" TopLine="123"/>
          </Position10>
          <Position11>
            <Filename Value="E:\toernooiopenenunit.pas"/>
            <Caret Line="139" Column="72" TopLine="124"/>
          </Position11>
          <Position12>
            <Filename Value="E:\toernooiopenenunit.pas"/>
            <Caret Line="116" Column="14" TopLine="100"/>
          </Position12>
          <Position13>
            <Filename Value="E:\toernooiopenenunit.pas"/>
            <Caret Line="145" Column="45" TopLine="121"/>
          </Position13>
          <Position14>
            <Filename Value="E:\toernooiopenenunit.pas"/>
            <Caret Line="132" Column="1" TopLine="121"/>
          </Position14>
          <Position15>
            <Filename Value="E:\toernooiopenenunit.pas"/>
            <Caret Line="135" Column="1" TopLine="121"/>
          </Position15>
          <Position16>
            <Filename Value="E:\toernooiopenenunit.pas"/>
            <Caret Line="136" Column="1" TopLine="121"/>
          </Position16>
          <Position17>
            <Filename Value="E:\toernooiopenenunit.pas"/>
            <Caret Line="220" Column="40" TopLine="206"/>
          </Position17>
          <Position18>
            <Filename Value="E:\toernooiopenenunit.pas"/>
            <Caret Line="144" Column="27" TopLine="130"/>
          </Position18>
          <Position19>
            <Filename Value="E:\toernooiopenenunit.pas"/>
            <Caret Line="142" Column="1" TopLine="127"/>
          </Position19>
          <Position20>
            <Filename Value="E:\toernooiopenenunit.pas"/>
            <Caret Line="149" Column="39" TopLine="133"/>
          </Position20>
          <Position21>
            <Filename Value="E:\toernooiopenenunit.pas"/>
            <Caret Line="142" Column="18" TopLine="133"/>
          </Position21>
          <Position22>
            <Filename Value="E:\toernooiopenenunit.pas"/>
            <Caret Line="136" Column="1" TopLine="132"/>
          </Position22>
          <Position23>
            <Filename Value="E:\toernooiopenenunit.pas"/>
            <Caret Line="141" Column="7" TopLine="126"/>
          </Position23>
          <Position24>
            <Filename Value="E:\toernooiopenenunit.pas"/>
            <Caret Line="148" Column="21" TopLine="132"/>
          </Position24>
          <Position25>
            <Filename Value="E:\toernooiopenenunit.pas"/>
            <Caret Line="137" Column="24" TopLine="129"/>
          </Position25>
          <Position26>
            <Filename Value="E:\toernooiopenenunit.pas"/>
            <Caret Line="132" Column="23" TopLine="121"/>
          </Position26>
        </JumpHistory>
      </ProjectOptions>
      <CompilerOptions>
        <Version Value="9"/>
        <PathDelim Value="\"/>
        <Target>
          <Filename Value="AutoCrossProject"/>
        </Target>
        <SearchPaths>
          <IncludeFiles Value="$(ProjOutDir)"/>
          <OtherUnitFiles Value="."/>
          <UnitOutputDirectory Value="lib\$(TargetCPU)-$(TargetOS)"/>
        </SearchPaths>
        <Linking>
          <Options>
            <Win32>
              <GraphicApplication Value="True"/>
            </Win32>
          </Options>
        </Linking>
        <Other>
          <CompilerMessages>
            <UseMsgFile Value="True"/>
          </CompilerMessages>
          <CompilerPath Value="$(CompPath)"/>
        </Other>
      </CompilerOptions>
      <Debugging>
        <Exceptions Count="3">
          <Item1>
            <Name Value="EAbort"/>
          </Item1>
          <Item2>
            <Name Value="ECodetoolError"/>
          </Item2>
          <Item3>
            <Name Value="EFOpenError"/>
          </Item3>
        </Exceptions>
      </Debugging>
    </CONFIG>
    En Toernooiopenenunit.lfm en toernooiopenenunit. (lazarus unit kan extensie niet lezen) en toernooiopenenunit.lrs staan op de E: schijf.

    En waar bij welke regel het echt fout gaat kan ik helaas niet uitlezen.

  4. #4
    Quote Originally Posted by Oscar View Post
    Wat doe je bij het openen van het bestand ? Laat eens de code zien waar het fout gaat ??? Het lijkt erop dat ie naar een bepaalde map of bestand zoekt wat op jou pc niet bestaat
    Hiermee bedoelde ik wat Delphi/Lazarus code Wat je nu hebt gepost, daar kan ik geen kaas van maken...

    ----
    Oh wacht ik snap 'm Je wilt ontwikkelen op 2 PC's
    Brouwvisie is helemaal mijn ding
    http://www.bier-brouwer.nl

  5. #5
    ja ik wil mijn applicatie op 2 pc's schrijven. Dit omdat ik soms vrije tijd thuis heb en bij mijn vriendin. Op de PC van mijn vriendin compileert het hele programma gewoon, op mijn pc niet.

    Ik kan dus ook geen plek aanwijzen in de code waar de fout optreedt... Je zou idd zeggen dat hij toernooiopenen form of unit niet kan vinden, maar die staan keurig op mijn sticky de E: schijf.

    Maar goed hier de code,
    Code:
    unit ToernooiOpenenUnit;
    
    {$mode objfpc}{$H+}
    
    interface
    
    uses
      Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls;
    
    type
    
      { TToernooiOpenen }
    
      TToernooiOpenen = class(TForm)
        Button1: TButton;
        Button2: TButton;
        Button3: TButton;
        Button4: TButton;
        Button5: TButton;
        Button6: TButton;
        Edit6: TEdit;
        Groupbox2: TGroupBox;
        Edit1: TEdit;
        Edit2: TEdit;
        Edit3: TEdit;
        Edit4: TEdit;
        Edit5: TEdit;
        GroupBox1: TGroupBox;
        Label1: TLabel;
        Label2: TLabel;
        Label3: TLabel;
        Label4: TLabel;
        Label5: TLabel;
        Label6: TLabel;
        Label7: TLabel;
        ListBox1: TListBox;
        ListBox2: TListBox;
        procedure Button1Click(Sender: TObject);
        procedure Button2Click(Sender: TObject);
        procedure Button3Click(Sender: TObject);
        procedure Button4Click(Sender: TObject);
        procedure Button5Click(Sender: TObject);
        procedure Button6Click(Sender: TObject);
        procedure FormCreate(Sender: TObject);
      private
        { private declarations }
      public
        { public declarations }
      end; 
    
    var
      ToernooiOpenen: TToernooiOpenen;
      ToernooiPath: string;
      SelectedLineListbox1: integer;
    
    
    implementation
    
    {$R *.lfm}
    
    { TToernooiOpenen }
    
    procedure GetFiles(Path : string; Filter: string; FileList: TStringList);
    var
      SearchRec: TSearchRec;
      Found: Integer;
    begin
      Path := IncludeTrailingBackslash(Path);
      try
        if FindFirst(Path + Filter, faAnyFile, SearchRec) = 0 then
        begin
          repeat
            if SearchRec.Attr = faDirectory then
            begin
              if (SearchRec.Name <> '.') and (SearchRec.Name <> '..') then
             FileList.Add(SearchRec.Name);
            end
          until FindNext(SearchRec) <> 0;
        end;
      finally
      FindClose(SearchRec);
      end;
    end;
    
    procedure TToernooiOpenen.Button1Click(Sender: TObject);
    begin
    Groupbox1.Visible:=False;
    Groupbox2.Visible:=True;
    
      edit1.Enabled:=True;
      Edit2.Enabled:=True;
      Edit3.Enabled:=True;
      Edit4.Enabled:=True;
      Edit5.Enabled:=True;
      ShortDateFormat :='ddMMMMyyyy';
      Edit3.Text:=DateToStr(now);
    
    
    
      if Listbox2.Count = 0 then
      begin
      Button3.Enabled:=False;
      end
         else
      begin
      Button3.Enabled:=True;
      end;
    end;
    
    procedure TToernooiOpenen.Button2Click(Sender: TObject);
    var
    Textfilel: TStringlist;
    Projectdatapath: String;
    Line: integer;
      F: TextFile;
      Nr: String;
    begin
    
      if (Listbox1.SelCount = 1) then
      begin
      Groupbox2.Visible:=True;
      groupbox1.Visible:=False;
      edit1.Enabled:=False;
      Listbox2.Enabled:=False;
      Edit2.Enabled:=False;
      Edit3.Enabled:=False;
      Edit4.Enabled:=False;
      Edit5.Enabled:=False;
    
      Line:=Listbox1.ItemIndex;
      ToernooiPath:= 'toernooien\'+ Listbox1.Items.ValueFromIndex[Line];
      ProjectDataPath :=  'toernooien\'+ Listbox1.Items.ValueFromIndex[Line] + '\toernooidata.txt';
    
      AssignFile(f, ProjectDatapath);
      Reset(f);
    
      while not Eof(f) do
      begin
        ReadLn(f,  Nr);
        Edit1.Text:= Nr;
      end;
        CLosefile(f);
    
      end
        else
      begin
      Groupbox2.Visible:=False;
      Groupbox1.Visible:=True;
      Showmessage('Geen of meerdere toernooien geselecteerd!');
      end;
    
      if Listbox2.Count = 0 then
      begin
      Button3.Enabled:=False;
      end
         else
      begin
      Button3.Enabled:=True;
      end;
    end;
    
    procedure TToernooiOpenen.Button3Click(Sender: TObject);   //klasse verwijderen
    begin
    
    
      if Listbox2.Count = 0 then
      begin
      Button3.Enabled:=False;
      end
         else
      begin
      Button3.Enabled:=True;
      Listbox2.Items.Delete(Listbox2.ItemIndex);
      end;
    end;
    
    procedure TToernooiOpenen.Button4Click(Sender: TObject);      //Klasse Toevoegen
    begin
        if edit6.Text = '' then
        begin
        showmessage('Verkeerde Invoer!');
        end
           else
        begin
        listbox2.Items.Insert(0, Edit6.Text);
        edit6.text :=  '';
        end;
    
      if Listbox2.Count = 0 then
      begin
      Button3.Enabled:=False;
      end
         else
      begin
      Button3.Enabled:=True;
      end;
    end;
    
    procedure TToernooiOpenen.Button5Click(Sender: TObject);  //Ga Naar Inschrijven
    var
    error: integer;
    textfile : TStringlist;
    AantalKlassen: Integer;
    begin
    
    if (Edit1.text = '') or (Edit2.text = '') or (Edit3.text = '') or (Edit4.text = '') or (Edit5.text = '') then
    begin
    Showmessage('Niet alle data correct ingevoerd!');
    end
       else
    begin
    createdir('toernooien\'+ Edit1.Text + edit3.text);
    ToernooiPath:= 'toernooien\'+ Edit1.Text + edit3.text;
    
    Textfile := TStringList.Create();
      try
        Textfile.Add(edit1.Text);
        Textfile.Add(edit2.Text);
        Textfile.Add(edit3.Text);
        Textfile.Add(edit4.Text);
        Textfile.Add(edit5.Text);
        TextFile.SaveToFile(Toernooipath + '\ProjectData.txt');
      finally
        TextFile.Free;
      end;
    
      for AantalKlassen := 0 to (Listbox2.Items.Count - 1) do
      begin
      createdir(Toernooipath + '\' + Listbox2.Items[aantalklassen]);
      end;
    
    
    
    end;
    
    end;
    
    procedure TToernooiOpenen.Button6Click(Sender: TObject);
    begin
    Groupbox1.Visible:=True;
    Groupbox2.Visible:=False;
    Edit1.Text:= '';
    Edit2.Text := '';
    listbox2.Items.Clear;
    
    edit3.Text:='';
    end;
    
    
    procedure TToernooiOpenen.FormCreate(Sender: TObject);
    var
    FileList : TStringList;
    SearchRec: TSearchRec;
    Found: Integer;
    begin
    Groupbox1.Visible:=True;
    Groupbox2.Visible:=False;
    
    mkdir('toernooien');     // Aanmaken toernooien directiony
    
    FileList := TStringList.Create;
    GetFiles('toernooien', '*.*', FileList);
    
    Listbox1.Items.Clear;
    Listbox1.Items.AddStrings(FileList);
    FileList.Free;
    
    if (listbox1.Count = 0) then
    button2.Enabled:=False
    else
    button2.Enabled:=True;
    end;
    
    end.


    Dan hier de code van het project aanmaak gebeuren:
    Code:
    program AutoCrossProject;
    
    {$mode objfpc}{$H+}
    
    uses
      {$IFDEF UNIX}{$IFDEF UseCThreads}
      cthreads,
      {$ENDIF}{$ENDIF}
      Interfaces, // this includes the LCL widgetset
      Forms, ToernooiOpenenUnit
      { you can add units after this };
    
    {$R *.res}
    
    begin
      Application.Initialize;
      Application.CreateForm(TToernooiOpenen, ToernooiOpenen);
      Application.Run;
    end.
    Hopelijk kunnen jullie hier wat meer mee,

  6. #6
    Fornicatorus Formicidae VideoRipper's Avatar
    Join Date
    Mar 2005
    Location
    Vicus Saltus Orientalem
    Posts
    5,708
    Ik heb geen kaas gegeten van Lazarus, dus LPI-bestanden zeggen mij helemaal niks, maar
    wat gebeurt er al je alle naar de E:-drive verwijzende bestanden en paden verandert in
    relatieve paden (zoals: E:\toernooiopenenunit.pas -> .:\toernooiopenenunit.pas)?

    Greetz,

    Peter.
    TMemoryLeak.Create(Nil);

  7. #7
    Delphi & OO in Vlaanderen SamWitse's Avatar
    Join Date
    Sep 2007
    Location
    Brussel
    Posts
    833
    Misschien te simpel, maar heet je USB-key op de andere PC nog steeds 'E:' ?
    Het kan zijn dat E:\ daar een DVD-lezer is of zo, en je USB-key er F:, G: of enige andere letter is.
    Should array indices start at 0 or 1? My compromise of 0.5 was rejected without, I thought, proper consideration.

    Sam Witse.
    Delphi & OO in Vlaanderen

  8. #8
    Fornicatorus Formicidae VideoRipper's Avatar
    Join Date
    Mar 2005
    Location
    Vicus Saltus Orientalem
    Posts
    5,708
    Volgens TS zou de driveletter op beide PC identiek zijn
    Quote Originally Posted by m.devriesjr View Post
    Ik gebruik een USB stick, waarop alle bestanden staan.. bij beide pc's is dit de E: schijf.
    maar het zou geen kwaad kunnen om ook de paden te controleren op beide PC's
    waar Lazarus en dependencies geïnstalleerd staan.

    Greetz,

    Peter.
    TMemoryLeak.Create(Nil);

  9. #9
    Jah op beide pc's heet mijn USB Stick Kingston, en de toegewezen schijfletter is E:.

    Lazarus is geinstalleerd bij beide pc's op C:\lazarus.

    Hoe kan ik checken welke depencies gebruikt worden? En wat zijn depencies (afhankelijkheden (virtualtreeview oid))?

    oh ja, het relatief maken van de paden heeft helaas niks uitgehaald, :S

  10. #10
    Hmm, als ik
    1. de teksten uit Lazarus die boven gegeven zijn kopieer naar tekst files,
    2. die vervolgens voorzie van de juiste extensies (.lpi, .lpr, .pas)
    3. de .lpr file open,
    komt lazarus op zonder foutmelding. Ik heb zelfs de drie files staan op D:\LazarusTest.

    Compileren geeft een succes, runnen kan zonder probleem (al krijg ik zo een lege form).
    Er wordt bij compileren een ToernooiOpenen.res file gemaakt. Wat gebeurt er als je deze .res file verwijdert en dan compileert?

  11. #11
    Dat haalt niks uit,

    Ik heb op mijn ene pc een engels versie van lazarus staan en op de ander nederland, dat zou toch niks uit moeten maken toch??? Ik zal dat morgen wel even proberen,

  12. #12
    Quote Originally Posted by m.devriesjr View Post
    Ik heb op mijn ene pc een engels versie van lazarus staan en op de ander nederland, dat zou toch niks uit moeten maken toch???
    Het is wel een verschil...mogelijk aan antwoord op je probleem. Probeer op beide pc's dezelfde versie en taal te installeren in vrijwel identieke mappen..dan lijkt het mij dat het goed zou moeten werken..
    Brouwvisie is helemaal mijn ding
    http://www.bier-brouwer.nl

  13. #13
    Fornicatorus Formicidae VideoRipper's Avatar
    Join Date
    Mar 2005
    Location
    Vicus Saltus Orientalem
    Posts
    5,708
    Quote Originally Posted by Oscar View Post
    vrijwel
    Uit eigen ervaring met computers en software/OS'en weet ik dat dat meestal
    niet genoeg is

    boom is tenslotte <> BOOM is <> B00M
    (Vandaar ook mijn aversie tegen het werken met strings wanneer het niet hoeft)
    TMemoryLeak.Create(Nil);

  14. #14
    Hoppa!! opgelost,

    Allen enorm bedankt!!!,

    de oplossing: Lazarus installeren op beide PC's met dezelfde taal.

  15. #15
    Fornicatorus Formicidae VideoRipper's Avatar
    Join Date
    Mar 2005
    Location
    Vicus Saltus Orientalem
    Posts
    5,708
    Misschien een tip om door te geven aan het Lazarus team (of mensen die ook werken met Lazarus)?

    Toppie dat je (we?) het gevonden hebt!

    Greetz,

    Peter.
    TMemoryLeak.Create(Nil);

Page 1 of 2 1 2 LastLast

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •