Lazarus pascal ile harici uygulama nasıl çalıştırabilirim?

deleted

Aktif Üye
Katılım
25 Şubat 2024
Mesajlar
2,133
Lazarus pascal ile stockfishi komut satırından çalıştırmak istiyorum.
Ama hamleleri nasıl yazdıracağımı bilmiyorum.
shell komutu ile çalıştrınca stockfish aptalca oynuyor.
1.png

Aşağıdaki gibi çalıştırınca düzgün oynuyor ama bu kodları lazarus pascala nasıl gireceğimi bilmiyorum.
2.png
 
Kod:
uses
  SysUtils, Classes, Process, Windows;

procedure TForm1.Button1Click(Sender: TObject);
var
  Stockfish: TProcess;
  Output: TStringList;
  Command: string;
  Line: string;
  Buffer: array[0..255] of AnsiChar;
  BytesRead: Cardinal;
begin
  // Stockfish uygulamasının yolu
  Command := 'C:\path\to\stockfish.exe'; // Stockfish'in tam yolu

  // Çıktıyı almak için bir TStringList oluştur
  Output := TStringList.Create;
  try
    // Stockfish'i başlat
    Stockfish := TProcess.Create(nil);
    try
      Stockfish.Executable := Command;
      Stockfish.Options := Stockfish.Options + [poUsePipes];
      Stockfish.Start;

      // Hamleyi gönder
      Stockfish.Input.Write(PAnsiChar(AnsiString('position startpos moves ' + Edit1.Text + #13#10)), Length('position startpos moves ' + Edit1.Text + #13#10));
      Stockfish.Input.Write(PAnsiChar(AnsiString('go' + #13#10)), Length('go' + #13#10));

      // Çıktıyı oku
      while not Stockfish.Output.Eof do
      begin
        BytesRead := Stockfish.Output.Read(Buffer, SizeOf(Buffer));
        SetString(Line, Buffer, BytesRead);
        Output.Add(Line);
      end;

      // Çıktıyı Memo1'e yazdır
      Memo1.Lines.AddStrings(Output);
    finally
      Stockfish.Free;
    end;
  finally
    Output.Free;
  end;
end;
Projeyi Derle, Hedef: C:\Users\x\AppData\Local\Temp\project1.exe: Çıkış kodu 1, Hatalar: 4, İpuçları: 1
unit1.pas(55,17) Error: identifier idents no member "Start"
unit1.pas(58,100) Error: Variable identifier expected
unit1.pas(59,65) Error: Variable identifier expected
unit1.pas(62,34) Error: identifier idents no member "Eof"
unit1.pas(64,50) Hint: Local variable "Buffer" does not seem to be initialized

yapay zeka ile boğuşup duruyorum. :)
Bir sürü hata verdi.
 
power shell komutu bile düzgün çalışmıyor.

Yapay zeka "go depth 10 " şeklinde tarif ediyor ben ayrı ayrı yazınca çıktı düzgün çıktı veriyor anlamadım gitti.
Lazarus pascal ile hala çalıştıramadım.
Ekran görüntüsü 2025-11-03 212257.png
 

Çevrimiçi üyeler

Forum istatistikleri

Konular
8,874
Mesajlar
144,299
Üyeler
3,563
Son üye
Synthbeyi

Son kaynaklar

Back
Top