الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

امنع برنامجك من تشغيل اكثر من نسخة #C

مغلق
بدأه mahmoud_esyman في 26 أبريل 2005 · 3 رد · 848 مشاهدة · في Microsoft Visual C#.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ورحمة الله..............

وبركاتى دى اول مشركاتى فى المنتدى وارجوا ان تعجبكم

الكود يقوم بمنع المستخدم بتشغيل اكثر من بنامج خذ هذا الكود ثم ضعة فى Main

وسوف ترى الفرق

static void Main()

{

Int32 _isProcessRunning;

_isProcessRunning = System.Diagnostics.Process.GetProcessesByName(System.Diagnostics.Process.GetCurrentProcess().ProcessName).Length;

if(_isProcessRunning != 1)

{

MessageBox.Show("Already an Instance running");

}

else

{

Application.Run(new Form1());

}

}

يارب يجى بفايدة :rolleyes: :rolleyes: :rolleyes: :rolleyes: :rolleyes:

#2

شكرا أخي ومرحبا بك في قسم السي شارب , وننتظر منك المزيد باذن الله.

ولكن أرجو وضع الأكواد في code لان المنتدى RTL , والأكواد لا تظهر بشكل صحيح.

مثلا ::

static void Main()
{
Int32 _isProcessRunning;
_isProcessRunning = System.Diagnostics.Process.GetProcessesByName(System.Diagnostics.Process.GetCurrentProcess().ProcessName).Length;
if(_isProcessRunning != 1)
{
MessageBox.Show("Already an Instance running");
}
else
{
Application.Run(new Form1());
}
}

#Read

http://MoutazShams.blogspot.com

projects003.gif

أعتذر عن التغيب هذه الأيام نظرا للانشغال المريب

#3

بسم الله الرحمن الرحيم

وهذا الكود كي تتمكن من التحكم في البرنامج بعد فتحه

حيث يمكننا عمل Maximize أو Restore إلخ

كما يلي

public enum ForegroundWindowStyle
{
    HIDE = 0,
    SHOWNORMAL = 1,
    SHOWMINIMIZED = 2,
    SHOWMAXIMIZED = 3,
    SHOWNOACTIVATE = 4,
    RESTORE = 9,
    SHOWDEFAULT = 10
}

public class AppManager
{
    #region DllImport	...
        [DllImport("user32.dll")]private static extern bool SetForegroundWindow(IntPtr hWnd);
        [DllImport("user32.dll")]private static extern bool ShowWindowAsync(IntPtr hWnd, int nCmdShow);
        [DllImport("user32.dll")]private static extern bool IsIconic(IntPtr hWnd);
    #endregion

    #region HasPreviousInstance	...
        public static bool HasPreviousInstance()
        {
            try
            {
                System.Diagnostics.Process curProcess = System.Diagnostics.Process.GetCurrentProcess();
                if( System.Diagnostics.Process.GetProcessesByName(curProcess.ProcessName).Length > 1 )
                {
                     return true;
                }
            }catch{	}
                return false;  	
            }
    #endregion

    #region SetForegroundWindow	...
    public static void SetForegroundWindow(ForegroundWindowStyle WindowStyle)
    {
        System.Diagnostics.Process curProcess = System.Diagnostics.Process.GetCurrentProcess();
        System.Diagnostics.Process activeProcess = System.Diagnostics.Process.GetProcessesByName(curProcess.ProcessName)[0];

        System.IntPtr hWnd = activeProcess.MainWindowHandle;
        if( IsIconic(hWnd) )
        {
            ShowWindowAsync(hWnd, (int)WindowStyle);
        }
        SetForegroundWindow(hWnd);
    }
    #endregion

[STAThread]
public static void Main()
{
    // Check for Previous Instance
    if( AppManager.HasPreviousInstance() )
    {
        AppManager.SetForegroundWindow(ForegroundWindowStyle.RESTORE);
        return;
    }

    Application.Run( new Form1() );
}

وبالتوفيق والسلام عليكم ورحمة الله

تم تعديل هذه المشاركة بواسطة الحسين في 13 سبتمبر 2005 في 13:08

29_5.gif

سورة العنكبوت

ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ

مشروع Arabic PHP.NET

حلم طالما كان يراودني حتي قهرته بحمد الله ليكون حقيقة

ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ

سلسلة أنماط التصاميم البرمجية Desgin Patterns

سلسلة أنماط التصاميم البرمجية Desgin Patterns | كتيب هذه الدروس (إعداد أحمد غريب)

ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ

كنترول ASP.NET DataGrid CheckBoxColumn

كنترول ProgressBar

كنترول UltraPanel

مشروع الكنترول الأنيق (إهداء للفريق العربي)

الورش الإلكترونية IT Workshops

تعقب الأخطاء error tracing

كنترول ColorPicker لمطوري الويب

RichTextBox Control لمطوري ال ASP.Net

حمل كتاب جافا سكربت عربي

#4

جزاك الله خيراً يا اخى على الاكواد

ولكن اقترح عليك وضعها فى مكتبة الاكواد بالمنتدى

هذا الموضوع مغلق.

مواضيع مشابهة