2017-03-27 13 views
-1

리눅스 (클라이언트 측에만 있음)에서 STMP/POP3 클라이언트를 개발하고 싶습니다. 디지털 인증서를 사용하여 데이터를 암호화하고 싶습니다 (전 종단 보안을 제공하려고합니다). 또한 간단한 인터페이스 (텍스트 필드, 보내기 버튼,받은 편지함 등)를 만들고 싶습니다. 내 질문은 : 자바 (가능한 경우) 또는 C/C++ (이 경우 인터페이스 -> QT 예를 들어 일부 도구를 사용해야합니다)이 작업을 수행해야합니다. 어떻게 생각해? 두 번째 질문 : 어떤 아이디어/권장 사항이나 도움이되는 링크 (또는 나를 도울 수있는 모든 것)가 있으면 감사하게 생각합니다. 첫 번째 질문에 대해리눅스의 SMTP/POP3 클라이언트

답변

1

난 자바에서이 작업을 수행합니다 (인 경우에 가능) 또는한다 C/C++

당신이 원하는 경우에 당신은 당신이 편하지 느낌이 어떤 언어를 사용하고 있습니다

내 제안 자바를 사용하는 것이 좋습니다. 스윙이나 자바 스크립트를 사용하여 그래픽 인터페이스를 만들기가 쉽고 목표를 달성하는 데 도움이되는 많은 라이브러리가 있기 때문입니다.

당신은 당신이 처음부터 여러분을 안내 할 것입니다 유용한 튜토리얼을 찾을 수있는 아이디어/추천이나 유용한 링크

이있는 경우

그리고 두 번째 질문에 대한

이 웹 사이트의 끝을 알 : JavaMail API Tutorial - Tutorialspoint

다음은 간단한 응용 프로그램 인터페이스입니다. JavaFx를 사용하여 만든 프로젝트로 시작하려면 다음을 수행하십시오.

Simple Application UI Using JavaFX Desktop Screen-shot

Main.java

package application; 

import javafx.application.Application; 
import javafx.stage.Stage; 
import javafx.scene.Scene; 
import javafx.scene.layout.AnchorPane; 
import javafx.fxml.FXMLLoader; 


public class Main extends Application { 
    @Override 
    public void start(Stage primaryStage) { 
     try { 
      AnchorPane root = (AnchorPane)FXMLLoader.load(getClass().getResource("Email.fxml")); 
      Scene scene = new Scene(root,400,400); 
      scene.getStylesheets().add(getClass().getResource("application.css").toExternalForm()); 
      primaryStage.setScene(scene); 
      primaryStage.show(); 
     } catch(Exception e) { 
      e.printStackTrace(); 
     } 
    } 

    public static void main(String[] args) { 
     launch(args); 
    } 
} 

EmailController.java

package application; 

import java.net.URL; 
import java.util.ResourceBundle; 
import javafx.fxml.FXML; 
import javafx.scene.control.Button; 
import javafx.scene.control.PasswordField; 
import javafx.scene.control.TextArea; 
import javafx.scene.control.TextField; 

public class EmailController { 

    @FXML 
    private ResourceBundle resources; 

    @FXML 
    private URL location; 

    @FXML 
    private TextField fromField; 

    @FXML 
    private TextField toField; 

    @FXML 
    private TextField loginField; 

    @FXML 
    private PasswordField passwordField; 

    @FXML 
    private TextField subjectField; 

    @FXML 
    private TextArea messageField; 

    @FXML 
    private Button deleteButton; 

    @FXML 
    private Button sendButton; 

    @FXML 
    void initialize() { 


    } 
} 
,536,913 63,210

Email.fxml

<?xml version="1.0" encoding="UTF-8"?> 

<?import javafx.geometry.Insets?> 
<?import javafx.scene.control.Button?> 
<?import javafx.scene.control.Label?> 
<?import javafx.scene.control.PasswordField?> 
<?import javafx.scene.control.TextArea?> 
<?import javafx.scene.control.TextField?> 
<?import javafx.scene.layout.AnchorPane?> 
<?import javafx.scene.layout.ColumnConstraints?> 
<?import javafx.scene.layout.GridPane?> 
<?import javafx.scene.layout.Pane?> 
<?import javafx.scene.layout.RowConstraints?> 
<?import javafx.scene.layout.VBox?> 
<?import javafx.scene.text.Font?> 


<fx:root type="AnchorPane" xmlns:fx="http://javafx.com/fxml/1" xmlns="http://javafx.com/javafx/8.0.111" fx:controller="application.EmailController"> 
    <children> 
     <Pane prefHeight="522.0" prefWidth="761.0"> 
     <children> 
      <VBox prefHeight="522.0" prefWidth="761.0"> 
       <children> 
        <GridPane gridLinesVisible="true"> 
        <columnConstraints> 
         <ColumnConstraints hgrow="SOMETIMES" maxWidth="328.0" minWidth="10.0" prefWidth="131.0" /> 
         <ColumnConstraints hgrow="SOMETIMES" maxWidth="635.0" minWidth="10.0" prefWidth="630.0" /> 
        </columnConstraints> 
        <rowConstraints> 
         <RowConstraints minHeight="10.0" prefHeight="30.0" vgrow="SOMETIMES" /> 
         <RowConstraints minHeight="10.0" prefHeight="30.0" vgrow="SOMETIMES" /> 
         <RowConstraints minHeight="10.0" prefHeight="30.0" vgrow="SOMETIMES" /> 
         <RowConstraints minHeight="10.0" prefHeight="30.0" vgrow="SOMETIMES" /> 
        </rowConstraints> 
        <children> 
         <Label alignment="CENTER_RIGHT" prefHeight="23.0" prefWidth="136.0" text="From : "> 
          <font> 
           <Font name="Segoe UI" size="18.0" /> 
          </font> 
         </Label> 
         <TextField fx:id="fromField" GridPane.columnIndex="1" /> 
         <Label alignment="CENTER_RIGHT" prefHeight="17.0" prefWidth="134.0" text="To : " textAlignment="CENTER" GridPane.rowIndex="1"> 
          <font> 
           <Font name="Segoe UI" size="18.0" /> 
          </font> 
         </Label> 
         <Label alignment="CENTER_RIGHT" prefHeight="17.0" prefWidth="134.0" text="Login : " textAlignment="CENTER" GridPane.rowIndex="2"> 
          <font> 
           <Font name="Segoe UI" size="18.0" /> 
          </font> 
         </Label> 
         <TextField fx:id="toField" GridPane.columnIndex="1" GridPane.rowIndex="1" /> 
         <TextField fx:id="loginField" GridPane.columnIndex="1" GridPane.rowIndex="2" /> 
         <Label alignment="CENTER_RIGHT" prefHeight="17.0" prefWidth="134.0" text="Password : " textAlignment="CENTER" GridPane.rowIndex="3"> 
          <font> 
           <Font name="Segoe UI" size="18.0" /> 
          </font> 
         </Label> 
         <PasswordField fx:id="passwordField" GridPane.columnIndex="1" GridPane.rowIndex="3" /> 
        </children> 
        </GridPane> 
        <GridPane prefHeight="240.0" prefWidth="681.0"> 
        <columnConstraints> 
         <ColumnConstraints hgrow="SOMETIMES" maxWidth="659.0" minWidth="10.0" prefWidth="152.0" /> 
         <ColumnConstraints hgrow="SOMETIMES" maxWidth="722.0" minWidth="10.0" prefWidth="609.0" /> 
        </columnConstraints> 
        <rowConstraints> 
         <RowConstraints minHeight="10.0" prefHeight="30.0" vgrow="SOMETIMES" /> 
         <RowConstraints minHeight="10.0" prefHeight="30.0" vgrow="SOMETIMES" /> 
         <RowConstraints /> 
         <RowConstraints minHeight="10.0" prefHeight="30.0" /> 
        </rowConstraints> 
        <children> 
         <Label alignment="CENTER_RIGHT" prefHeight="23.0" prefWidth="150.0" text="Subject : "> 
          <font> 
           <Font name="Segoe UI" size="18.0" /> 
          </font> 
         </Label> 
         <TextField fx:id="subjectField" GridPane.columnIndex="1" /> 
         <Label alignment="CENTER_RIGHT" prefHeight="23.0" prefWidth="150.0" text="Message : " GridPane.hgrow="ALWAYS" GridPane.rowIndex="1" GridPane.vgrow="ALWAYS"> 
          <font> 
           <Font name="Segoe UI" size="18.0" /> 
          </font> 
         </Label> 
         <TextArea fx:id="messageField" prefHeight="200.0" prefWidth="200.0" GridPane.columnIndex="1" GridPane.rowIndex="1" GridPane.rowSpan="2"> 
          <GridPane.margin> 
           <Insets top="10.0" /> 
          </GridPane.margin> 
         </TextArea> 
        </children> 
        <VBox.margin> 
         <Insets left="30.0" right="30.0" top="20.0" /> 
        </VBox.margin> 
        </GridPane> 
        <Pane prefHeight="200.0" prefWidth="200.0"> 
        <children> 
         <Button fx:id="deleteButton" layoutX="220.0" layoutY="30.0" mnemonicParsing="false" prefHeight="30.0" prefWidth="150.0" text="Delete"> 
          <font> 
           <Font name="Segoe UI" size="24.0" /> 
          </font> 
         </Button> 
         <Button fx:id="sendButton" layoutX="450.0" layoutY="30.0" mnemonicParsing="false" prefHeight="30.0" prefWidth="150.0" text="SEND"> 
          <font> 
           <Font name="Segoe UI" size="24.0" /> 
          </font> 
         </Button> 
        </children> 
        </Pane> 
       </children> 
      </VBox> 
     </children> 
     </Pane> 
    </children> 
</fx:root> 
+0

당신의 의견 주셔서 감사합니다! –