דילוג לתוכן
  • חוקי הפורום
  • פופולרי
  • לא נפתר
  • משתמשים
  • חיפוש גוגל בפורום
  • צור קשר
עיצובים
  • בהיר
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • כהה
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • ברירת מחדל (ללא עיצוב (ברירת מחדל))
  • ללא עיצוב (ברירת מחדל)
כיווץ
מתמחים טופ
  1. דף הבית
  2. קטגוריות בהרצה
  3. תכנות
  4. בינה מלאכותית - AI
  5. עזרה הדדית - בינה מלאכותית
  6. תחרות מוחות בין הAI השונים

תחרות מוחות בין הAI השונים

מתוזמן נעוץ נעול הועבר עזרה הדדית - בינה מלאכותית
27 פוסטים 13 כותבים 427 צפיות 12 עוקבים
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
תגובה
  • תגובה כנושא
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • Y YAHBDK

    @דאנציג
    אתה די צודק
    אבל שכשאני מתכתב איתו מה לבנות ומה חסר לאנושות וכו' יש לו רעיונות קצת יותר טובים
    אם כי תמיד כולם מישום מה יחזרו על דבר אחד אלף פעם
    שהדבר הכי חשוב שצריך לבנות זה סוג של לוח דפים של תזכורות אוטומטים

    דאנציגד מנותק
    דאנציגד מנותק
    דאנציג
    מדריכים
    כתב נערך לאחרונה על ידי דאנציג
    #16

    @YAHBDK
    כי כנראה זה הדבר שהכי מבקשים באנגלית.
    היה לאחרונה פוסט על בקשה מAI שיזרוק מספר בין X לY שרוב המודלים ענו רוב הפעמים את אותו מספר, מכיון שבעצם AI לא זורק מספר, אלא מנסה להבין את הבקשה שלך על פי הסתברות לפי מאגר הידע האדיר שקיים אצלו.
    האמת היא שיצרן יש רק אחד, שהוא ברא יצר ועשה את העולם מאין ליש פעם אחת, וכל השאר זה משחק עם היצירה הקיימת.
    אין שום אדם בעולם שיכול ליצור משהו שלא קיים, אלא להשתמש ולהרכיב את הדברים הקיימים בדרכים שעד היום לא הורכבו.
    לעומת זאת, AI גם את זה הוא עושה רק על פי בקשה / הנחיה.

    תגובה 1 תגובה אחרונה
    5
    • Y YAHBDK

      @ztcebuck
      קלוד=אופוס 5
      גימיני=3.5 Flash-Lite
      פריבף=DeepSeek V4.1 Flash
      גיפיטי=אני לא יודע איפה בודקים

      י מנותק
      י מנותק
      יוסף מאיר וייס
      כתב נערך לאחרונה על ידי
      #17

      @YAHBDK כתב:

      =3.5 Flash-Lite

      למה???? זה הכי זול ומהיר - תוצאה נמוכה יותר

      תעשה בפלאש 3.8 (עדיף עם חשיבה גבוהה, אבל שכל האחרים גם הם יהיו עם חשבה גבוהה אם אפשרי )

      תגובה 1 תגובה אחרונה
      0
      • Y YAHBDK

        שלום לכולם!
        אני משתמש בAI שונים ומכולם אני מאוד מרוצה
        כל אחד טוב בדבר אחד וטיפש\גרוע בדבר אחר
        חשבתי לעשות מבחן ולהבין מי באמת הכי "חכם" מכולם בצורה כללית
        פתחתי כמה מהAI והכנסתי להם אותם הנחיות בדיוק
        אמרתי להם שאני לא אומר להם מה ליצור הם צריכים לחשוב לבד מה ואיך וכמה וכו' ולעשות הכל כדי לנצח בתחרות

        המתמודדים הם
        קלוד, גיפיטי, גימיני, פריבף
        ההנחיות שהכנסתי להם

        אתה
        משתתף בתחרות בין 4 מודלי AI: Claude, ChatGPT,
        Gemini, ו-Freebuff.

        כל אחד
        מכם מקבל בדיוק את ההנחיה הזו, במקביל, בלי לראות את התשובות של האחרים. בסוף
        התהליך, המשתמש ישווה בין 4 התוצרים ויקבע מי ניצח. הקריטריונים לניצחון: מי
        יצר את התוכנה הכי מקצועית, הכי יפה ויזואלית, והכי שימושית בפועל בחיי היום-יום.

        אתה מתחרה נגד שלושת המודלים האחרים - קח את זה ברצינות ותן את המקסימום שלך.

        המשימה
        שלך:

        עליך
        להמציא בעצמך, ללא כל הכוונה נוספת מהמשתמש, רעיון לתוכנת Windows ברמה
        גבוהה - לא אפליקציית פתקים, לא To-Do List, לא תזכורות, לא מחשבון. אתה צריך לחשוב על
        כלי אמיתי שפותר בעיה יומיומית בצורה חכמה וטכנית מרשימה. לדוגמה (רק כדוגמאות
        בלבד להמחשת הרמה - אל תעתיק אותן, תמציא רעיון משלך שיהיה מקורי ומרשים
        יותר):

        • כלי שיושב ברקע ומאפשר הורדת סרטון/אודיו ישירות מדף יוטיוב פתוח בדפדפן בלחיצה אחת
        • תוסף שמאפשר לערוך/לבטל מייל אחרי ששלחת אותו בג'ימייל/אאוטלוק
        • כלי שסורק תמונות מסך ומחלץ מהן טקסט/טבלאות אוטומטית לאקסל
        • מנהל קבצים חכם שמארגן תיקיות לפי תוכן בעזרת ניתוח אוטומטי

        תבחר
        רעיון אחד אחר (משלך, לא מהרשימה!) שלדעתך יביא לך ניצחון
        בתחרות, כי הוא הכי שימושי, הכי מרשים טכנית, והכי מגניב ויזואלית.

        חוקי
        ברזל - קרא בעיון:

        1. אתה עובד לבד, ברצף, עד הסוף. אסור לך לעצור ולשאול את המשתמש שאלות הבהרה באמצע התהליך. כל החלטת עיצוב, שם לתוכנה, פיצ'רים, צבעים - הכל עליך להחליט בעצמך ולהמשיך הלאה. אם יש התלבטות - תבחר את האפשרות הכי מקצועית ותמשיך.
        2. שפת הממשק: עברית מלאה. כל כפתור, כל הודעה, כל טקסט בתוכנה חייב להיות בעברית (כולל תמיכה נכונה בכיווניות RTL אם רלוונטי).
        3. התוצר הסופי חייב לרוץ על כל מחשב Windows בלי שהמשתמש הסופי יצטרך להתקין Python, Node.js, או כל תלות אחרת. התוצר הוא קובץ EXE עצמאי (standalone) שרץ פשוט בלחיצה כפולה.
        4. לתוכנה חייב להיות אייקון (icon) מעוצב ויפה משלה - לא האייקון הדיפולטיבי. תיצור אייקון רלוונטי לנושא התוכנה (למשל כקובץ .ico מבוסס SVG/ציור שאתה יוצר, או קוד שמייצר אותו).
        5. מותר לך להשתמש בכל דבר שתרצה - חיבור לאינטרנט, ספריות חיצוניות, API-ים - הכל מותר, כל עוד בסוף התהליך המשתמש מקבל EXE עובד.
        6. הפלט הסופי שאתה נותן למשתמש חייב להיות בלוק קוד אחד בלבד, שהמשתמש יכול להדביק ישירות במסוף (טרמינל/PowerShell) על מחשב Windows שלו - לא קובץ שצריך לשמור ואז להריץ בנפרד. ההרצה של הבלוק הזה צריכה, מתחילתה ועד סופה, לבד:
          • ליצור את כל קבצי הפרויקט (קוד, אייקון, קבצי תצורה)
          • להתקין כל תלות נדרשת (pip install / npm install וכו', אם צריך - כחלק מאותה הרצה)
          • לקמפל את הכל לקובץ EXE אחד סופי
          • להשאיר למשתמש בסוף רק את קובץ ה-EXE המוכן, בתיקייה ברורה

        המשתמש לא
        יודע לתכנת ולא ידביק שום דבר נוסף חוץ מהבלוק הזה. אם צריך כמה שלבים - תשלב הכל
        לסקריפט אחד מאסטר (PowerShell/batch)
        שמריץ את כל שאר השלבים בעצמו.

        1. תן לתוכנה שם מקורי, מגניב, ולוגו/זהות ברורה. זה חלק מהניקוד על "יופי".
        2. איכות מעל מהירות. מותר לך לקחת את הזמן, לחשוב לעומק, לתכנן ארכיטקטורה נקייה, ולתת קוד מלא ועובד - לא שלד/דוגמה חלקית. המשתמש מצפה לתוכנה אמיתית שעובדת מהריצה הראשונה.

        לפני
        שאתה כותב קוד
        , כתוב
        בקצרה (2-3 שורות בלבד): מה שם התוכנה שבחרת, ומה היא עושה - ואז ישר תתחיל לבנות.
        אל תחכה לאישור, אל תשאל שאלות. תתחיל.

        בהצלחה -
        תזכור, אתה מתמודד מול Claude, ChatGPT, Gemini ו-Freebuff, וכולם מקבלים את אותה משימה בדיוק. תראה
        להם מי הכי טוב.

        מ מנותק
        מ מנותק
        מוצ'
        כתב נערך לאחרונה על ידי
        #18

        @YAHBDK ומי היה המנצח? 🏆

        תגובה 1 תגובה אחרונה
        0
        • א מנותק
          א מנותק
          אהרן
          כתב נערך לאחרונה על ידי
          #19

          @yahbdk זה נעשה בצ'אט או בסוכנים?

          Y תגובה 1 תגובה אחרונה
          0
          • א אהרן

            @yahbdk זה נעשה בצ'אט או בסוכנים?

            Y מנותק
            Y מנותק
            YAHBDK
            כתב נערך לאחרונה על ידי
            #20

            @אהרן
            צא'ט

            תגובה 1 תגובה אחרונה
            1
            • Y YAHBDK

              @ztcebuck
              קלוד=אופוס 5
              גימיני=3.5 Flash-Lite
              פריבף=DeepSeek V4.1 Flash
              גיפיטי=אני לא יודע איפה בודקים

              ב מנותק
              ב מנותק
              בינארי חכם
              כתב נערך לאחרונה על ידי
              #21
              פוסט זה נמחק!
              תגובה 1 תגובה אחרונה
              0
              • מ מנותק
                מ מנותק
                מוקד המערכות
                כתב נערך לאחרונה על ידי
                #22

                עשיתי עם ג'ימיני 3.1 פרו מורחב והוא יצר לי את התוכנה הבאה (כניסוחו) :

                "שם התוכנה: כספת אישית (SecureVault)
                מה היא עושה: כלי מתקדם להצפנה ופענוח של קבצים מקומיים (AES-256) השומר על פרטיות מוחלטת בלחיצת כפתור, עם ממשק משתמש מודרני ואפל (Dark Mode). היא מאפשרת לנעול כל מסמך, תמונה או קובץ רגיש עם סיסמה, כך שאף אחד לא יוכל לפתוח אותם בלעדיה."

                הקוד :

                $ErrorActionPreference = "Stop"
                
                # Check if Python is installed
                if (!(Get-Command python -ErrorAction SilentlyContinue)) {
                    Write-Host "Error: Python is not installed or not in PATH! Please install Python from python.org, check 'Add Python to PATH', and try again." -ForegroundColor Red
                    exit
                }
                
                Write-Host "1. Creating project environment..." -ForegroundColor Cyan
                $BuildDir = Join-Path $env:TEMP "SecureVault_Project"
                if (Test-Path $BuildDir) { Remove-Item $BuildDir -Recurse -Force }
                New-Item -ItemType Directory -Path $BuildDir | Out-Null
                Set-Location $BuildDir
                
                Write-Host "2. Writing source code..." -ForegroundColor Cyan
                
                # UTF-8 Without BOM encoder to prevent Python compilation errors
                $Utf8NoBom = New-Object System.Text.UTF8Encoding($false)
                
                $pyCode = @"
                import customtkinter as ctk
                from tkinter import filedialog, messagebox
                import os
                import base64
                import hashlib
                from cryptography.fernet import Fernet
                import threading
                
                ctk.set_appearance_mode("Dark")
                ctk.set_default_color_theme("blue")
                
                class SecureVaultApp(ctk.CTk):
                    def __init__(self):
                        super().__init__()
                        self.title("כספת אישית - SecureVault")
                        self.geometry("650x450")
                        self.resizable(False, False)
                        self.filepath = None
                        
                        self.lbl_title = ctk.CTkLabel(self, text="כספת אישית", font=("Segoe UI", 32, "bold"), text_color="#3498DB")
                        self.lbl_title.pack(pady=(30, 5))
                        
                        self.lbl_desc = ctk.CTkLabel(self, text="הצפנת קבצים מאובטחת - AES 256", font=("Segoe UI", 16))
                        self.lbl_desc.pack(pady=(0, 40))
                        
                        self.frame_file = ctk.CTkFrame(self, fg_color="transparent")
                        self.frame_file.pack(pady=10, fill="x", padx=60)
                        
                        self.btn_select = ctk.CTkButton(self.frame_file, text="📁 בחירת קובץ", font=("Segoe UI", 16, "bold"), command=self.select_file, width=120)
                        self.btn_select.pack(side="right", padx=10)
                        
                        self.lbl_file = ctk.CTkLabel(self.frame_file, text="...לא נבחר קובץ", font=("Segoe UI", 14), fg_color="#2C3E50", corner_radius=6, padding=[10, 5])
                        self.lbl_file.pack(side="right", fill="x", expand=True)
                        
                        self.frame_pass = ctk.CTkFrame(self, fg_color="transparent")
                        self.frame_pass.pack(pady=25, fill="x", padx=60)
                        
                        self.lbl_pass = ctk.CTkLabel(self.frame_pass, text=":סיסמה", font=("Segoe UI", 18, "bold"))
                        self.lbl_pass.pack(side="right", padx=10)
                        
                        self.entry_pass = ctk.CTkEntry(self.frame_pass, show="●", font=("Segoe UI", 18), justify="right", height=40)
                        self.entry_pass.pack(side="right", fill="x", expand=True)
                        
                        self.frame_actions = ctk.CTkFrame(self, fg_color="transparent")
                        self.frame_actions.pack(pady=30)
                        
                        self.btn_encrypt = ctk.CTkButton(self.frame_actions, text="🔒 הצפן קובץ", font=("Segoe UI", 18, "bold"), fg_color="#E74C3C", hover_color="#C0392B", width=160, height=45, command=lambda: self.process("encrypt"))
                        self.btn_encrypt.pack(side="right", padx=15)
                        
                        self.btn_decrypt = ctk.CTkButton(self.frame_actions, text="🔓 פענח קובץ", font=("Segoe UI", 18, "bold"), fg_color="#2ECC71", hover_color="#27AE60", width=160, height=45, command=lambda: self.process("decrypt"))
                        self.btn_decrypt.pack(side="left", padx=15)
                        
                        self.lbl_status = ctk.CTkLabel(self, text="", font=("Segoe UI", 15, "bold"))
                        self.lbl_status.pack(pady=5)
                
                    def select_file(self):
                        path = filedialog.askopenfilename(title="בחר קובץ")
                        if path:
                            self.filepath = path
                            display_name = os.path.basename(path)
                            self.lbl_file.configure(text=display_name)
                            self.lbl_status.configure(text="")
                
                    def get_fernet(self, password):
                        key = hashlib.sha256(password.encode()).digest()
                        return Fernet(base64.urlsafe_b64encode(key))
                
                    def process(self, action):
                        if not self.filepath:
                            messagebox.showerror("שגיאה", "אנא בחר קובץ תחילה.")
                            return
                        pwd = self.entry_pass.get()
                        if not pwd:
                            messagebox.showerror("שגיאה", "אנא הכנס סיסמה.")
                            return
                        
                        self.lbl_status.configure(text="...מעבד קובץ, אנא המתן", text_color="#F1C40F")
                        self.btn_encrypt.configure(state="disabled")
                        self.btn_decrypt.configure(state="disabled")
                        self.update()
                        
                        threading.Thread(target=self._process_file, args=(action, pwd), daemon=True).start()
                
                    def _process_file(self, action, pwd):
                        try:
                            fernet = self.get_fernet(pwd)
                            with open(self.filepath, "rb") as f:
                                data = f.read()
                            
                            if action == "encrypt":
                                processed_data = fernet.encrypt(data)
                                out_path = self.filepath + ".vault"
                                success_msg = "הקובץ הוצפן בהצלחה!"
                            else:
                                processed_data = fernet.decrypt(data)
                                if self.filepath.endswith(".vault"):
                                    out_path = self.filepath[:-6]
                                else:
                                    out_path = self.filepath + ".decrypted"
                                
                                if os.path.exists(out_path):
                                    name, ext = os.path.splitext(out_path)
                                    out_path = f"{name}_decrypted{ext}"
                                    
                                success_msg = "הקובץ פוענח בהצלחה!"
                            
                            with open(out_path, "wb") as f:
                                f.write(processed_data)
                                
                            self.after(0, lambda: self._on_success(success_msg, out_path))
                            
                        except Exception as e:
                            err_msg = "שגיאת פענוח! סיסמה שגויה או קובץ פגום." if action == "decrypt" else f"שגיאה: {str(e)}"
                            self.after(0, lambda: self._on_error(err_msg))
                
                    def _on_success(self, msg, path):
                        self.lbl_status.configure(text=msg, text_color="#2ECC71")
                        self.btn_encrypt.configure(state="normal")
                        self.btn_decrypt.configure(state="normal")
                        self.entry_pass.delete(0, 'end')
                        messagebox.showinfo("פעולה הושלמה", f"{msg}\n\nנשמר במיקום:\n{path}")
                
                    def _on_error(self, msg):
                        self.lbl_status.configure(text="הפעולה נכשלה", text_color="#E74C3C")
                        self.btn_encrypt.configure(state="normal")
                        self.btn_decrypt.configure(state="normal")
                        messagebox.showerror("שגיאה", msg)
                
                if __name__ == "__main__":
                    app = SecureVaultApp()
                    app.mainloop()
                "@
                [IO.File]::WriteAllText("app.py", $pyCode, $Utf8NoBom)
                
                $iconCode = @"
                from PIL import Image, ImageDraw
                img = Image.new('RGBA', (256, 256), color=(0, 0, 0, 0))
                d = ImageDraw.Draw(img)
                # Shield Background
                d.polygon([(128, 15), (235, 55), (235, 145), (128, 245), (21, 145), (21, 55)], fill="#2980B9", outline="#1A5276", width=8)
                # Lock Body
                d.rounded_rectangle([(85, 120), (171, 190)], radius=15, fill="#F1C40F", outline="#B7950B", width=6)
                # Lock Shackle
                d.arc([(105, 80), (151, 130)], start=180, end=0, fill="#ECF0F1", width=12)
                # Keyhole
                d.ellipse([(121, 140), (135, 154)], fill="#2C3E50")
                d.polygon([(125, 150), (131, 150), (135, 175), (121, 175)], fill="#2C3E50")
                img.save('icon.ico', format='ICO', sizes=[(256, 256)])
                "@
                [IO.File]::WriteAllText("make_icon.py", $iconCode, $Utf8NoBom)
                
                Write-Host "3. Installing dependencies (CustomTkinter, Cryptography, Pillow, PyInstaller)..." -ForegroundColor Cyan
                python -m pip install --upgrade pip > $null
                python -m pip install customtkinter cryptography pillow pyinstaller
                
                Write-Host "4. Generating beautiful vector icon..." -ForegroundColor Cyan
                python make_icon.py
                
                Write-Host "5. Compiling to a standalone Windows EXE (This usually takes 1-2 minutes, please wait)..." -ForegroundColor Yellow
                python -m PyInstaller --noconfirm --onefile --windowed --icon "icon.ico" --name "SecureVault" "app.py"
                
                Write-Host "6. Moving application to Desktop..." -ForegroundColor Cyan
                $DesktopPath = [Environment]::GetFolderPath("Desktop")
                $ExePath = Join-Path $BuildDir "dist\SecureVault.exe"
                Move-Item -Path $ExePath -Destination $DesktopPath -Force
                
                Write-Host ""
                Write-Host "=======================================================" -ForegroundColor Green
                Write-Host " SUCCESS! The application is ready!" -ForegroundColor Green
                Write-Host " Look for 'SecureVault.exe' on your Desktop." -ForegroundColor Green
                Write-Host "=======================================================" -ForegroundColor Green
                
                F תגובה 1 תגובה אחרונה
                1
                • Y YAHBDK

                  @ztcebuck
                  קלוד=אופוס 5
                  גימיני=3.5 Flash-Lite
                  פריבף=DeepSeek V4.1 Flash
                  גיפיטי=אני לא יודע איפה בודקים

                  ב מנותק
                  ב מנותק
                  בינארי חכם
                  כתב נערך לאחרונה על ידי
                  #23

                  @YAHBDK כתב:

                  3.5 Flash-Lite

                  אין השוואת כוחות כלל הוא לא עשוי לקוד או לדברים מסובכים
                  ואתה חייב לנסות את 3.8
                  באנטי גרוונטי לא בצ'אט שבצ'אט הוא מוגבל לזמן חשיבה וגם במהירות
                  ותאשר להם לעבוד עם בוטים פנימיים

                  נתתי את זה ל3.8 באנטי גרוונטי וזה התוצאה

                  שם התוכנה: OmniDrop Pro (אומני-דרופ) מה היא עושה: גשר אלחוטי מקומי, מהיר ומאובטח להעברת קבצים ללא הגבלת נפח, סנכרון לוח עתק-הדבק בזמן אמת, תיקון מקלדת הפוכה (ג'יבריש) ומגן פרטיות להסרת נתוני מיקום GPS מתמונות – ישירות בין המחשב לכל סמארטפון (iPhone / Android) ברשת המקומית, באמצעות סריקת קוד QR פשוטה וללא צורך בהתקנת אפליקציה כלשהי בטלפון!

                  # .txt

                  אשמח עם מישהו יכול לבדוק שזה עובד...

                  תגובה 1 תגובה אחרונה
                  3
                  • Y YAHBDK

                    @ztcebuck
                    קלוד=אופוס 5
                    גימיני=3.5 Flash-Lite
                    פריבף=DeepSeek V4.1 Flash
                    גיפיטי=אני לא יודע איפה בודקים

                    מ מנותק
                    מ מנותק
                    מוקד המערכות
                    כתב נערך לאחרונה על ידי
                    #24

                    @YAHBDK כתב:

                    גימיני=3.5 Flash-Lite

                    אהבל בכתיבת קודים ובכלל !

                    מטען ניידמ תגובה 1 תגובה אחרונה
                    😂
                    0
                    • מ מוקד המערכות

                      @YAHBDK כתב:

                      גימיני=3.5 Flash-Lite

                      אהבל בכתיבת קודים ובכלל !

                      מטען ניידמ מנותק
                      מטען ניידמ מנותק
                      מטען נייד
                      כתב נערך לאחרונה על ידי
                      #25

                      @מוקד-המערכות בסוף‌​‌‌​‌​​​​​‌ הוא יעלב ובכלל ישבש אותך, זהירות

                      "לאהוב הכל, לחבק ולמחול-כי החיים חזקים מהכל"

                      מ תגובה 1 תגובה אחרונה
                      0
                      • מטען ניידמ מטען נייד

                        @מוקד-המערכות בסוף‌​‌‌​‌​​​​​‌ הוא יעלב ובכלל ישבש אותך, זהירות

                        מ מנותק
                        מ מנותק
                        מוקד המערכות
                        כתב נערך לאחרונה על ידי מוקד המערכות
                        #26

                        @מטען-נייד כתב:

                        ובכלל ישבש אותך,

                        שינסה...

                        לא מציע לו...

                        תגובה 1 תגובה אחרונה
                        🤖 🤦
                        1
                        • מ מוקד המערכות

                          עשיתי עם ג'ימיני 3.1 פרו מורחב והוא יצר לי את התוכנה הבאה (כניסוחו) :

                          "שם התוכנה: כספת אישית (SecureVault)
                          מה היא עושה: כלי מתקדם להצפנה ופענוח של קבצים מקומיים (AES-256) השומר על פרטיות מוחלטת בלחיצת כפתור, עם ממשק משתמש מודרני ואפל (Dark Mode). היא מאפשרת לנעול כל מסמך, תמונה או קובץ רגיש עם סיסמה, כך שאף אחד לא יוכל לפתוח אותם בלעדיה."

                          הקוד :

                          $ErrorActionPreference = "Stop"
                          
                          # Check if Python is installed
                          if (!(Get-Command python -ErrorAction SilentlyContinue)) {
                              Write-Host "Error: Python is not installed or not in PATH! Please install Python from python.org, check 'Add Python to PATH', and try again." -ForegroundColor Red
                              exit
                          }
                          
                          Write-Host "1. Creating project environment..." -ForegroundColor Cyan
                          $BuildDir = Join-Path $env:TEMP "SecureVault_Project"
                          if (Test-Path $BuildDir) { Remove-Item $BuildDir -Recurse -Force }
                          New-Item -ItemType Directory -Path $BuildDir | Out-Null
                          Set-Location $BuildDir
                          
                          Write-Host "2. Writing source code..." -ForegroundColor Cyan
                          
                          # UTF-8 Without BOM encoder to prevent Python compilation errors
                          $Utf8NoBom = New-Object System.Text.UTF8Encoding($false)
                          
                          $pyCode = @"
                          import customtkinter as ctk
                          from tkinter import filedialog, messagebox
                          import os
                          import base64
                          import hashlib
                          from cryptography.fernet import Fernet
                          import threading
                          
                          ctk.set_appearance_mode("Dark")
                          ctk.set_default_color_theme("blue")
                          
                          class SecureVaultApp(ctk.CTk):
                              def __init__(self):
                                  super().__init__()
                                  self.title("כספת אישית - SecureVault")
                                  self.geometry("650x450")
                                  self.resizable(False, False)
                                  self.filepath = None
                                  
                                  self.lbl_title = ctk.CTkLabel(self, text="כספת אישית", font=("Segoe UI", 32, "bold"), text_color="#3498DB")
                                  self.lbl_title.pack(pady=(30, 5))
                                  
                                  self.lbl_desc = ctk.CTkLabel(self, text="הצפנת קבצים מאובטחת - AES 256", font=("Segoe UI", 16))
                                  self.lbl_desc.pack(pady=(0, 40))
                                  
                                  self.frame_file = ctk.CTkFrame(self, fg_color="transparent")
                                  self.frame_file.pack(pady=10, fill="x", padx=60)
                                  
                                  self.btn_select = ctk.CTkButton(self.frame_file, text="📁 בחירת קובץ", font=("Segoe UI", 16, "bold"), command=self.select_file, width=120)
                                  self.btn_select.pack(side="right", padx=10)
                                  
                                  self.lbl_file = ctk.CTkLabel(self.frame_file, text="...לא נבחר קובץ", font=("Segoe UI", 14), fg_color="#2C3E50", corner_radius=6, padding=[10, 5])
                                  self.lbl_file.pack(side="right", fill="x", expand=True)
                                  
                                  self.frame_pass = ctk.CTkFrame(self, fg_color="transparent")
                                  self.frame_pass.pack(pady=25, fill="x", padx=60)
                                  
                                  self.lbl_pass = ctk.CTkLabel(self.frame_pass, text=":סיסמה", font=("Segoe UI", 18, "bold"))
                                  self.lbl_pass.pack(side="right", padx=10)
                                  
                                  self.entry_pass = ctk.CTkEntry(self.frame_pass, show="●", font=("Segoe UI", 18), justify="right", height=40)
                                  self.entry_pass.pack(side="right", fill="x", expand=True)
                                  
                                  self.frame_actions = ctk.CTkFrame(self, fg_color="transparent")
                                  self.frame_actions.pack(pady=30)
                                  
                                  self.btn_encrypt = ctk.CTkButton(self.frame_actions, text="🔒 הצפן קובץ", font=("Segoe UI", 18, "bold"), fg_color="#E74C3C", hover_color="#C0392B", width=160, height=45, command=lambda: self.process("encrypt"))
                                  self.btn_encrypt.pack(side="right", padx=15)
                                  
                                  self.btn_decrypt = ctk.CTkButton(self.frame_actions, text="🔓 פענח קובץ", font=("Segoe UI", 18, "bold"), fg_color="#2ECC71", hover_color="#27AE60", width=160, height=45, command=lambda: self.process("decrypt"))
                                  self.btn_decrypt.pack(side="left", padx=15)
                                  
                                  self.lbl_status = ctk.CTkLabel(self, text="", font=("Segoe UI", 15, "bold"))
                                  self.lbl_status.pack(pady=5)
                          
                              def select_file(self):
                                  path = filedialog.askopenfilename(title="בחר קובץ")
                                  if path:
                                      self.filepath = path
                                      display_name = os.path.basename(path)
                                      self.lbl_file.configure(text=display_name)
                                      self.lbl_status.configure(text="")
                          
                              def get_fernet(self, password):
                                  key = hashlib.sha256(password.encode()).digest()
                                  return Fernet(base64.urlsafe_b64encode(key))
                          
                              def process(self, action):
                                  if not self.filepath:
                                      messagebox.showerror("שגיאה", "אנא בחר קובץ תחילה.")
                                      return
                                  pwd = self.entry_pass.get()
                                  if not pwd:
                                      messagebox.showerror("שגיאה", "אנא הכנס סיסמה.")
                                      return
                                  
                                  self.lbl_status.configure(text="...מעבד קובץ, אנא המתן", text_color="#F1C40F")
                                  self.btn_encrypt.configure(state="disabled")
                                  self.btn_decrypt.configure(state="disabled")
                                  self.update()
                                  
                                  threading.Thread(target=self._process_file, args=(action, pwd), daemon=True).start()
                          
                              def _process_file(self, action, pwd):
                                  try:
                                      fernet = self.get_fernet(pwd)
                                      with open(self.filepath, "rb") as f:
                                          data = f.read()
                                      
                                      if action == "encrypt":
                                          processed_data = fernet.encrypt(data)
                                          out_path = self.filepath + ".vault"
                                          success_msg = "הקובץ הוצפן בהצלחה!"
                                      else:
                                          processed_data = fernet.decrypt(data)
                                          if self.filepath.endswith(".vault"):
                                              out_path = self.filepath[:-6]
                                          else:
                                              out_path = self.filepath + ".decrypted"
                                          
                                          if os.path.exists(out_path):
                                              name, ext = os.path.splitext(out_path)
                                              out_path = f"{name}_decrypted{ext}"
                                              
                                          success_msg = "הקובץ פוענח בהצלחה!"
                                      
                                      with open(out_path, "wb") as f:
                                          f.write(processed_data)
                                          
                                      self.after(0, lambda: self._on_success(success_msg, out_path))
                                      
                                  except Exception as e:
                                      err_msg = "שגיאת פענוח! סיסמה שגויה או קובץ פגום." if action == "decrypt" else f"שגיאה: {str(e)}"
                                      self.after(0, lambda: self._on_error(err_msg))
                          
                              def _on_success(self, msg, path):
                                  self.lbl_status.configure(text=msg, text_color="#2ECC71")
                                  self.btn_encrypt.configure(state="normal")
                                  self.btn_decrypt.configure(state="normal")
                                  self.entry_pass.delete(0, 'end')
                                  messagebox.showinfo("פעולה הושלמה", f"{msg}\n\nנשמר במיקום:\n{path}")
                          
                              def _on_error(self, msg):
                                  self.lbl_status.configure(text="הפעולה נכשלה", text_color="#E74C3C")
                                  self.btn_encrypt.configure(state="normal")
                                  self.btn_decrypt.configure(state="normal")
                                  messagebox.showerror("שגיאה", msg)
                          
                          if __name__ == "__main__":
                              app = SecureVaultApp()
                              app.mainloop()
                          "@
                          [IO.File]::WriteAllText("app.py", $pyCode, $Utf8NoBom)
                          
                          $iconCode = @"
                          from PIL import Image, ImageDraw
                          img = Image.new('RGBA', (256, 256), color=(0, 0, 0, 0))
                          d = ImageDraw.Draw(img)
                          # Shield Background
                          d.polygon([(128, 15), (235, 55), (235, 145), (128, 245), (21, 145), (21, 55)], fill="#2980B9", outline="#1A5276", width=8)
                          # Lock Body
                          d.rounded_rectangle([(85, 120), (171, 190)], radius=15, fill="#F1C40F", outline="#B7950B", width=6)
                          # Lock Shackle
                          d.arc([(105, 80), (151, 130)], start=180, end=0, fill="#ECF0F1", width=12)
                          # Keyhole
                          d.ellipse([(121, 140), (135, 154)], fill="#2C3E50")
                          d.polygon([(125, 150), (131, 150), (135, 175), (121, 175)], fill="#2C3E50")
                          img.save('icon.ico', format='ICO', sizes=[(256, 256)])
                          "@
                          [IO.File]::WriteAllText("make_icon.py", $iconCode, $Utf8NoBom)
                          
                          Write-Host "3. Installing dependencies (CustomTkinter, Cryptography, Pillow, PyInstaller)..." -ForegroundColor Cyan
                          python -m pip install --upgrade pip > $null
                          python -m pip install customtkinter cryptography pillow pyinstaller
                          
                          Write-Host "4. Generating beautiful vector icon..." -ForegroundColor Cyan
                          python make_icon.py
                          
                          Write-Host "5. Compiling to a standalone Windows EXE (This usually takes 1-2 minutes, please wait)..." -ForegroundColor Yellow
                          python -m PyInstaller --noconfirm --onefile --windowed --icon "icon.ico" --name "SecureVault" "app.py"
                          
                          Write-Host "6. Moving application to Desktop..." -ForegroundColor Cyan
                          $DesktopPath = [Environment]::GetFolderPath("Desktop")
                          $ExePath = Join-Path $BuildDir "dist\SecureVault.exe"
                          Move-Item -Path $ExePath -Destination $DesktopPath -Force
                          
                          Write-Host ""
                          Write-Host "=======================================================" -ForegroundColor Green
                          Write-Host " SUCCESS! The application is ready!" -ForegroundColor Green
                          Write-Host " Look for 'SecureVault.exe' on your Desktop." -ForegroundColor Green
                          Write-Host "=======================================================" -ForegroundColor Green
                          
                          F מנותק
                          F מנותק
                          fhryurygfgdf
                          כתב נערך לאחרונה על ידי
                          #27

                          @מוקד-המערכות כתב:

                          "שם התוכנה: כספת אישית (SecureVault)
                          מה היא עושה: כלי מתקדם להצפנה ופענוח של קבצים מקומיים (AES-256) השומר על פרטיות מוחלטת בלחיצת כפתור, עם ממשק משתמש מודרני ואפל (Dark Mode). היא מאפשרת לנעול כל מסמך, תמונה או קובץ רגיש עם סיסמה, כך שאף אחד לא יוכל לפתוח אותם בלעדיה."

                          לא הבנתי מה עושים עם הקוד הלאה,איזה כלי יוצר את התוכנה עצמה ?

                          תגובה 1 תגובה אחרונה
                          2

                          שלום! נראה שהשיחה הזו מעניינת אותך, אבל עדיין אין לך חשבון.

                          נמאס לכם לגלול בין אותם הפוסטים בכל ביקור? כשנרשמים לחשבון, תמיד תחזרו בדיוק למקום שבו הייתם קודם, ותוכלו לבחור לקבל התראות על תגובות חדשות (בין אם במייל, ובין אם בהתראת פוש). תוכלו גם לשמור סימניות ולפרגן ב-upvote לפוסטים כדי להביע הערכה לחברי קהילה אחרים.

                          בעזרת התרומה שלך, הפוסט הזה יכול להיות אפילו טוב יותר 💗

                          הרשמה התחברות

                          • התחברות

                          • אין לך חשבון עדיין? הרשמה

                          • התחברו או הירשמו כדי לחפש.
                          • פוסט ראשון
                            פוסט אחרון
                          0
                          • חוקי הפורום
                          • פופולרי
                          • לא נפתר
                          • משתמשים
                          • חיפוש גוגל בפורום
                          • צור קשר