עזרה בכתיבת סקריפט
-
@aknvtchtk אמר בעזרה בכתיבת סקריפט:
@yossiz זה הקנייטש שחשבתי שבזה זה כן אמור להיפתח אני רוצה שהחלון ייפתח רק שהתהליך של הפתיחה כלומר חלון הפקודה לא יהיה גלוי אבל התוכנה עצמה כן צריכה לעלות
בסדר גמור, אז במקום
hidden
תכתובMinimized
-
@aknvtchtk אמר בעזרה בכתיבת סקריפט:
ומה עם ההסתרה של החלון
בתוכנה PS2EXE, אם תשתמש בפרמטר
noconsole
זה יעשה EXE שלא יפתח חלון של powershell.
וביתר פירוט,- תוריד מפה את התוכנה PS2EXE
- חלץ את הקבצים
- תשמור את הסקריפט בשם כלשהו, לדוגמה script.ps1 בתוך אותו תקייה
- תריץ בחלון CMD (תעשה
cd
לתיקייה שבה חילצת את הקבצים)
callPS2EXE.bat "script.ps1" "script.exe" -noconsole
@aknvtchtk אמר בעזרה בכתיבת סקריפט:
לא אז זה בכלל לא עובד אם מורידים את ה Minimized
צריך להוריד גם את המילה
-windowstyle
-
@aknvtchtk
בבקשה הנה הקובץ
openExeLoop.exe
אתה צריך שבתיקייה יהיה קובץ בשם file.txt
ושבתוכו יהיה הנתיב לקובץ שאתה רוצה להפעיל
דוגמא לקובץ (שים לב שבהורדת הקובץ השם שלו משתנה אז תשנה אותו בחזרה לfile.txt)
file.txtוהנה הקוד למי שמתעניין
using System; using System.Collections.Generic; using System.Diagnostics; using System.Net.Mime; using System.Text; namespace openExeLoop { class Program { static void Main(string[] args) { string filename = ""; try { filename= System.IO.File.ReadAllText("file.txt"); Console.WriteLine("start file: " + filename); } catch (Exception e) { Console.WriteLine(e); Console.ReadLine(); Environment.Exit(0); // throw; } Process process = new Process(); // Configure the process using the StartInfo properties. process.StartInfo.FileName = @filename; process.StartInfo.Arguments = ""; process.StartInfo.WindowStyle = ProcessWindowStyle.Minimized; while (true) { try { Console.WriteLine("start on " + DateTime.Now ); process.Start(); } catch (Exception e) { Console.WriteLine(e); //throw; } process.WaitForExit();// Waits here for the process to exit. Console.WriteLine("end on " + DateTime.Now + ", start while 15 sec."); System.Threading.Thread.Sleep(15 * 1000); } } } }