İçeriğe geç
ShiftDelete.Net
Haber ara/ SDN'ye SorGiriş
Haber Akışı SDNTV İnceleme Forum Yapay Zeka Akıllı Telefon Elektrikli Otomobil Oyun ShiftDelete.Net Global Teknoloji Haberleri Mobil Otomobil Donanım Savunma Bilim Sosyal Medya İnternet Giyilebilir Teknoloji Rehber Ürünler Son dakika Yazarlar
  1. Ana sayfa
  2. Topluluk
  3. Yazılım
  4. Diğer Yazılım Konuları
Diğer Yazılım Konuları

Kendi programımı yapmak istiyorum

taha.py17.07.20222 cevap812 görüntüleme
2022'den beri157 mesaj
#1
Merhaba forum sakinleri, telefonumun ekranını bilgisayara yansıtmak için bi yazılım kullanıyordum ve artık o programı kullanmak istemiyorum kendi yazılımımı yapıp kullanmak istiyorum. Yazılım ismi scrcpy. Bu tarz bi yazılım yapmak için ne yapmalıyım öneriniz var mı? (Yasak olduğunu düşündüğüm için yazılımın linkini koymadım.)
Cevaplar
2022'den beri5 mesaj
#2
Dostum, dediğin gibi bir program yapmak istiyorsan ilk önce gereksinimlerini belirlemek zorundasın.
Mesela ben sadece ekranı pcye yansıtmak istiyorum ama pcden telefona müdahale etmek istemiyorum veya müdahele etmek istiyorum, uzaktan erişim olsun istiyorum gibi vs...

Diyelim ki sadece yansıtacaksın. O zaman telefonun işletim sistemine göre hareket etmelisin. TCP/IP protokolünün ve Server-Client Modeli'nin nasıl çalıştığını öğrenmelisin. Server-Client ve TCP protokolünü öğrendiğini varsayıyorum, şimdi ise bilgisayara yapacağın program için bir yazılım dili öğrenmen gerekmektedir. Eğer bilgisayarın MacOS ise Objective-C öğrenebilir, Windows ise C# öğrenebilir, veya Linux dağıtımı ise C/C++ öğrenebilirsin. Bilgisayarının Windows olduğunu varsayıyorum ve telefonunun da Android olduğunu varsayıyorum.

Visual Studio senin projeni geliştirmen için kullanışlı ve güçlü bir IDE olacaktır.
Ayrıca Xamarin kullanarak işini daha kolay halledebilirsin.

Örnek bir C# TCP kodları:
static void Connect(String server, String message)
{
  try
  {
    // Create a TcpClient.
    // Note, for this client to work you need to have a TcpServer
    // connected to the same address as specified by the server, port
    // combination.
    Int32 port = 13000;
    TcpClient client = new TcpClient(server, port);

    // Translate the passed message into ASCII and store it as a Byte array.
    Byte[] data = System.Text.Encoding.ASCII.GetBytes(message);

    // Get a client stream for reading and writing.
   //  Stream stream = client.GetStream();

    NetworkStream stream = client.GetStream();

    // Send the message to the connected TcpServer.
    stream.Write(data, 0, data.Length);

    Console.WriteLine("Sent: {0}", message);

    // Receive the TcpServer.response.

    // Buffer to store the response bytes.
    data = new Byte[256];

    // String to store the response ASCII representation.
    String responseData = String.Empty;

    // Read the first batch of the TcpServer response bytes.
    Int32 bytes = stream.Read(data, 0, data.Length);
    responseData = System.Text.Encoding.ASCII.GetString(data, 0, bytes);
    Console.WriteLine("Received: {0}", responseData);

    // Close everything.
    stream.Close();
    client.Close();
  }
  catch (ArgumentNullException e)
  {
    Console.WriteLine("ArgumentNullException: {0}", e);
  }
  catch (SocketException e)
  {
    Console.WriteLine("SocketException: {0}", e);
  }

  Console.WriteLine("\n Press Enter to continue...");
  Console.Read();
}


Örnek bir C TCP kodları:
#include <netinet/in.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <sys/socket.h>
#include <unistd.h>
#define PORT 8080
int main(int argc, char const* argv[])
{
    int server_fd, new_socket, valread;
    struct sockaddr_in address;
    int opt = 1;
    int addrlen = sizeof(address);
    char buffer[1024] = { 0 };
    char* hello = "Hello from server";
 
    // Creating socket file descriptor
    if ((server_fd = socket(AF_INET, SOCK_STREAM, 0))
        == 0) {
        perror("socket failed");
        exit(EXIT_FAILURE);
    }
 
    // Forcefully attaching socket to the port 8080
    if (setsockopt(server_fd, SOL_SOCKET,
                   SO_REUSEADDR | SO_REUSEPORT, &opt,
                   sizeof(opt))) {
        perror("setsockopt");
        exit(EXIT_FAILURE);
    }
    address.sin_family = AF_INET;
    address.sin_addr.s_addr = INADDR_ANY;
    address.sin_port = htons(PORT);
 
    // Forcefully attaching socket to the port 8080
    if (bind(server_fd, (struct sockaddr*)&address,
             sizeof(address))
        < 0) {
        perror("bind failed");
        exit(EXIT_FAILURE);
    }
    if (listen(server_fd, 3) < 0) {
        perror("listen");
        exit(EXIT_FAILURE);
    }
    if ((new_socket
         = accept(server_fd, (struct sockaddr*)&address,
                  (socklen_t*)&addrlen))
        < 0) {
        perror("accept");
        exit(EXIT_FAILURE);
    }
    valread = read(new_socket, buffer, 1024);
    printf("%s\n", buffer);
    send(new_socket, hello, strlen(hello), 0);
    printf("Hello message sent\n");
    
  // closing the connected socket
    close(new_socket);
  // closing the listening socket
    shutdown(server_fd, SHUT_RDWR);
    return 0;
}


Kodlar örnek amaçlıdır.

Ek olarak sana en çok lazım olan şey zaman...
👍 1
2022'den beri1 mesaj
#3
taha122 dedi: ↑
Merhaba forum sakinleri, telefonumun ekranını bilgisayara yansıtmak için bi yazılım kullanıyordum ve artık o programı kullanmak istemiyorum kendi yazılımımı yapıp kullanmak istiyorum. Yazılım ismi scrcpy. Bu tarz bi yazılım yapmak için ne yapmalıyım öneriniz var mı? (Yasak olduğunu düşündüğüm için yazılımın linkini koymadım.)
Eminim kolay olmayacaktır, profosyonel bir yazılımcıdan destek alman gerekecek

Cevabını yaz

Cevap yazmak için giriş yap ya da üye ol. Eski forum kullanıcı adın ve parolanla girebilirsin.