تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
طلب طريقة حماية الروابط
#1
السلام عليكم اخوتي الكرام
  لديا موقع وقد صممت برنامج بالفيجول بيزك واردت وضع روابط الموقع في البرنامج
اريد طريقة جعل الروابط لا تعمل الى على البرنامج اي لو استخرجة لا تعمل
وقد اجابني الاخ     #silverlight#

'####طالما الروابط ثابتة لا تتغير لذلك عليك ان تحفظها في ملف باستخدام BinarrWiter بل و يمكنك هنا ان تقوم بعمل Encryption لها و لقراءتها من نفس الملف عليك ان تستخدم BinaryReader ####
 
وله الشكر الجزيل الى انني لم اعرف الطريقة 



فممكن احد من الاخوة  يظع لنا الطريقة كاملتا لنستفيد جميعنا

وشكرا
الرد }}}
تم الشكر بواسطة:
#2
Brick 
اعتقد ان استخدام برامج مثل wireshark سيكشف الرابط Cool

الرد }}}
تم الشكر بواسطة:
#3
هل عدد الروابط كثير ام لا؟ فإن كان عدد الروابط كثير يمكن ها هنا ان تقوم بتحويل الروابط الي مصفوفة أو نبني كلاس للروابط ثم نحوله الي مصفوفة و سيكون سهلا حفظها في ملف و قراءتها من نفس الملف حاول تجاوب اسئلتي و ان شاء الله ب اكتب لك الكود بس لازم تفهم ان انا وقتي محدود فحاول تضع كل استفساراتك مرة واحدة
الرد }}}
تم الشكر بواسطة:
#4
(01-03-16, 12:17 AM)silverlight كتب : هل عدد الروابط كثير ام لا؟ فإن كان عدد الروابط كثير يمكن ها هنا ان تقوم بتحويل الروابط الي مصفوفة أو نبني كلاس للروابط ثم نحوله الي مصفوفة و سيكون سهلا حفظها في ملف و قراءتها من نفس الملف حاول تجاوب اسئلتي و ان شاء الله ب اكتب لك الكود بس لازم تفهم ان انا وقتي محدود فحاول تضع كل استفساراتك مرة واحدة

شكرا اخي الكريم على مجهودك الكبير
وبدون اطالة
عدد الروايط حوالي 32رابط
واريط الطريقة المذكورة بحيث ان استخرجة الروابط سواء ببرامج او بطريقة اخرى لا تعمل الى على برنامجي
اريد نموذج بحيث اضع فيه الروابط او ان امكن الطريقة لتعم الفائدة وشكرا
الرد }}}
تم الشكر بواسطة:
#5
كما وعدتك سابقا
عليك أن تضيف الكلاسات التالية الي مشروعك

الكلاس الأول يعبر عن المدخلات الخاصة بكل رابط


PHP كود :
Public Class AssetInfo

    Public Index 
As String
    Public UriString 
As String

End 
Class 

الكلاس الثاني هو الكلاس المسئول عن تشقير المدخلات قبل حفظها في الملف ثم يقوم بإلغاء التشفير أثناء قراءة البيانات من الملف
PHP كود :
Imports System.IO
Imports System
.Security.Cryptography
Imports System
.Text

Friend NotInheritable 
Class AssetObfuscation

    Public Shared 
Function Obfuscate(value As Stringguard As String) As String
        Dim salt 
CalculateKeyGuard(guard)
 
       Dim rgbIV CalculateKeyGuard(guard)
 
       Dim bytes Encoding.UTF8.GetBytes(value)
 
       Using rfc = New Rfc2898DeriveBytes(guardsalt1000)
 
           Dim rgbKey rfc.GetBytes(256 8)
 
           Using sk = New RijndaelManaged()
 
               sk.BlockSize 256
                sk
.Mode CipherMode.CBC
                sk
.Padding PaddingMode.PKCS7
                Using encryptor 
sk.CreateEncryptor(rgbKeyrgbIV)
 
                   Using ms = New MemoryStream()
 
                       Using cs = New CryptoStream(msencryptorCryptoStreamMode.Write)
 
                           cs.Write(bytes0bytes.Length)
 
                           cs.FlushFinalBlock()
 
                           Dim buffer salt
                            buffer 
buffer.Concat(rgbIV).ToArray()
 
                           buffer buffer.Concat(ms.ToArray()).ToArray()
 
                           ms.Close()
 
                           cs.Close()
 
                           Return Convert.ToBase64String(buffer)
 
                       End Using
                    End Using
                End Using
            End Using
        End Using
    End 
Function

 
   Public Shared Function DeObfuscate(hash As Stringguard As String) As String

        Dim bytes 
Convert.FromBase64String(hash)
 
       Dim salt bytes.Take(256 8).ToArray()
 
       Dim rgbIV bytes.Skip(256 8).Take(256 8).ToArray()
 
       Dim buffer bytes.Skip((256 8) * 2).Take(bytes.Length - ((256 8) * 2)).ToArray()
 
       Using rfc = New Rfc2898DeriveBytes(guardsalt1000)
 
           Dim rgbKey rfc.GetBytes(256 8)
 
           Using sk = New RijndaelManaged()
 
               sk.BlockSize 256
                sk
.Mode CipherMode.CBC
                sk
.Padding PaddingMode.PKCS7
                Using decryptor 
sk.CreateDecryptor(rgbKeyrgbIV)
 
                   Using ms = New MemoryStream(buffer)
 
                       Using cs = New CryptoStream(msdecryptorCryptoStreamMode.Read)
 
                           Dim buffers = New Byte(buffer.Length 1) {}
 
                           Dim count cs.Read(buffers0buffers.Length)
 
                           ms.Close()
 
                           cs.Close()
 
                           Return Encoding.UTF8.GetString(buffers0count)
 
                       End Using
                    End Using
                End Using
            End Using
        End Using

    End 
Function

 
   Private Shared Function CalculateKeyGuard(value As String) As Byte()
 
       Dim result As Byte() = CType(NothingByte())
 
       Using hash As HashAlgorithm = New SHA256CryptoServiceProvider()
 
           Dim bytes As Byte() = Encoding.UTF8.GetBytes(value)
 
           result hash.ComputeHash(bytes)
 
       End Using
        Return result
    End 
Function

End Class 

الكلاس الثالث هو مجرد كلاس مساعد يمكنك اسخدامه إن أردت للتأكد من أن المدخلات عبارة عن روابط و في واقع الأمر أنا لم أستخدمه داخل الكود و تركت الأمر لك أنت لتقرر هل عليك أن تتأكد من أن المدخلات عبارة عن روابط أم لا


PHP كود :
Friend NotInheritable Class AssetsValidator

    Private Shared 
Function IsValidHttp(value As Uri) As Boolean
        Return value
.Scheme.Equals("http"StringComparison.OrdinalIgnoreCaseOrElse value.Scheme.Equals("https"StringComparison.OrdinalIgnoreCase)
 
   End Function

 
   Friend Shared Function IsValidHttpOrNull(value As Uri) As Boolean
        Return value IsNot Nothing AndAlso IsValidHttp
(value)
 
   End Function

End Class 

الكلاس الرابع هو الكلاس الرئيسي والمسئول عن عملية حفظ البيانات في ملف وأيضا مسئول عن قراءة البيانات من الملف
و هنا عملية الحفظ تتم علي صورة مصفوفة وبالتبعية يتم قراءة و استرجاع البيانات من الملف علي هيئة مصفوفة أيضا
أنا استخدمت كلة سر لحفظ البيانات يمكنك أن تغيرها إن أردت و أيضا الملف يتم حفظه في فهرس المشروع و هذا ايضا يمكنك ان تغيره و أيضا استخدمت نفس كلمة السر لللتشفير و إلغاء التشفير و هذا ايضا يمكنك تغييره إن أردت

PHP كود :
Imports System.Text

Public Class AssetContext

    Private 
Const DataProtector As String "12345"
 
   Private Const DataFileName As String ".\assets.dat"
 
   Private Shared characterEncoding As Encoding

    Private Shared lock 
As Object = New Object
    Private Shared context 
As AssetContext

    Public Shared ReadOnly Property Instance 
As AssetContext
        Get
            Dim result 
As AssetContext CType(NothingAssetContext)
 
           SyncLock lock
                If context Is Nothing Then
                    context 
= New AssetContext
                End 
If
 
               result context
            End SyncLock
            Return result
        End Get
    End Property

    Friend 
Function Write(list As List(Of AssetInfo)) As Boolean
        Return Write
(list, DataFileNameDataProtector)
 
   End Function

 
   Friend Function Write(list As List(Of AssetInfo), filename As Stringguard As String) As Boolean

        If characterEncoding Is Nothing Then
            Dim encoder 
As Encoding CType(Encoding.UTF8.Clone(), Encoding)
 
           encoder.EncoderFallback EncoderFallback.ReplacementFallback
            characterEncoding 
encoder
        End 
If

 
       Using writer As New System.IO.BinaryWriter(System.IO.File.Open(filenameSystem.IO.FileMode.Create), characterEncoding)
 
           writer.Write(AssetObfuscation.Obfuscate(guardguard))
 
           writer.Write(list.Count)
 
           For Each current As AssetInfo In list
 
               writer.Write(AssetObfuscation.Obfuscate(current.Indexguard))
 
               writer.Write(AssetObfuscation.Obfuscate(current.UriStringguard))
 
           Next
            Return True
        End Using
        Return False
    End 
Function

 
   Friend Function Read() As List(Of AssetInfo)
 
       Return Read(DataFileNameDataProtector)
 
   End Function

 
   Friend Function Read(filename As Stringguard As String) As List(Of AssetInfo)
 
       Dim assets As List(Of AssetInfo) = CType(Nothing, List(Of AssetInfo))
 
       If (System.IO.File.Exists(filename)) Then
            Using reader 
As New System.IO.BinaryReader(System.IO.File.Open(filenameSystem.IO.FileMode.Open), New System.Text.UTF8Encoding(FalseFalse))

 
               Dim protection As String AssetObfuscation.DeObfuscate(reader.ReadStringguard)
 
               If protection <> guard Then
                    Return Nothing
                End 
If

 
               Dim count As Integer reader.ReadInt32()
 
               assets = New List(Of AssetInfo)()
 
               For i As Integer 0 To count 1
                    Dim asset 
As AssetInfo = New AssetInfo
                    asset
.Index AssetObfuscation.DeObfuscate(reader.ReadStringguard)
 
                   asset.UriString AssetObfuscation.DeObfuscate(reader.ReadStringguard)
 
                   assets.Add(asset)
 
               Next
            End Using
        End 
If
 
       Return assets
    End 
Function


End Class 

الإستخدام

اولا عليك تعريف متغير يعبر عن الكلاس الخاص بحفظ و قراءة البيانات كالتالي


PHP كود :
Private context As AssetContext = New AssetContext 

ثم و لحفظ البيانات إلي ملف يتم أولا إنشاء مصفوفة للبيانات ثم يتم حفظها في الملف و الكود التالي يوضح ذلك
بعد ذلك وكنوع من الإختبار لا غير لتذهب الي فهرس المشروع و افتح الملف ببرنامج NotePad ستجد ان البيانات كلها مشفرة ولا يمكن فهم شئ منها

PHP كود :
       Dim list As List(Of AssetInfo) = New List(Of AssetInfo)()
 
       list.Add(New AssetInfo With {.Index "1", .UriString "First"})
 
       list.Add(New AssetInfo With {.Index "2", .UriString "Second"})
 
       list.Add(New AssetInfo With {.Index "3", .UriString "Third"})
 
       If context.Write(list) Then
            MessageBox
.Show("Data has been Saved to file")
 
       Else
            MessageBox
.Show("Do Not know how to Save Data to file")
 
       End If 

و لقراءة البيانات من الملف يمكنك استخدام الكود التالي و انا هنا قمت بإضافة البيانات الي ListBox بعد قرائتها من الملف و هذا لمجرد التوضيح فقط أما انت فيمكن ان تضيفها الي الكونترول الذي يناسبك

PHP كود :
       For Each current As AssetInfo In context.Read
            ListBox1
.Items.Add(current.Index "- " current.UriString)
 
       Next 

نصيحة أخيرة

هنا أنا كتبت كل شئ في مشروع واحد لكن نصيحتي لك أن تقسم الفكرة علي مرحلتين
المرحلة الأولي تحفظ الروابط في ملف و تقوم بتشفيرها

أما في البرنامج الرئيسي نفسه يتم اضافة الملف الموجودة به الروابط لفهرس المشروع وهنا سيكون عليك فقط قراءته و فك التشفير
أي ان الكلاسات اعلاه يجب تجزئتها بحيث يتم استخدام الجزء الخاص بفك التشفير و قراءة الملف من المشروع الرئيسي فقط

تقبل تحياتي
الرد }}}
تم الشكر بواسطة: moftah70 , administrator , hassan , hassan
#6
(07-03-16, 02:36 PM)silverlight كتب : كما وعدتك سابقا
عليك أن تضيف الكلاسات التالية الي مشروعك

الكلاس الأول يعبر عن المدخلات الخاصة بكل رابط


PHP كود :
Public Class AssetInfo

    Public Index 
As String
    Public UriString 
As String

End 
Class 

الكلاس الثاني هو الكلاس المسئول عن تشقير المدخلات قبل حفظها في الملف ثم يقوم بإلغاء التشفير أثناء قراءة البيانات من الملف
PHP كود :
Imports System.IO
Imports System
.Security.Cryptography
Imports System
.Text

Friend NotInheritable 
Class AssetObfuscation

    Public Shared 
Function Obfuscate(value As Stringguard As String) As String
        Dim salt 
CalculateKeyGuard(guard)
 
       Dim rgbIV CalculateKeyGuard(guard)
 
       Dim bytes Encoding.UTF8.GetBytes(value)
 
       Using rfc = New Rfc2898DeriveBytes(guardsalt1000)
 
           Dim rgbKey rfc.GetBytes(256 8)
 
           Using sk = New RijndaelManaged()
 
               sk.BlockSize 256
                sk
.Mode CipherMode.CBC
                sk
.Padding PaddingMode.PKCS7
                Using encryptor 
sk.CreateEncryptor(rgbKeyrgbIV)
 
                   Using ms = New MemoryStream()
 
                       Using cs = New CryptoStream(msencryptorCryptoStreamMode.Write)
 
                           cs.Write(bytes0bytes.Length)
 
                           cs.FlushFinalBlock()
 
                           Dim buffer salt
                            buffer 
buffer.Concat(rgbIV).ToArray()
 
                           buffer buffer.Concat(ms.ToArray()).ToArray()
 
                           ms.Close()
 
                           cs.Close()
 
                           Return Convert.ToBase64String(buffer)
 
                       End Using
                    End Using
                End Using
            End Using
        End Using
    End 
Function

 
   Public Shared Function DeObfuscate(hash As Stringguard As String) As String

        Dim bytes 
Convert.FromBase64String(hash)
 
       Dim salt bytes.Take(256 8).ToArray()
 
       Dim rgbIV bytes.Skip(256 8).Take(256 8).ToArray()
 
       Dim buffer bytes.Skip((256 8) * 2).Take(bytes.Length - ((256 8) * 2)).ToArray()
 
       Using rfc = New Rfc2898DeriveBytes(guardsalt1000)
 
           Dim rgbKey rfc.GetBytes(256 8)
 
           Using sk = New RijndaelManaged()
 
               sk.BlockSize 256
                sk
.Mode CipherMode.CBC
                sk
.Padding PaddingMode.PKCS7
                Using decryptor 
sk.CreateDecryptor(rgbKeyrgbIV)
 
                   Using ms = New MemoryStream(buffer)
 
                       Using cs = New CryptoStream(msdecryptorCryptoStreamMode.Read)
 
                           Dim buffers = New Byte(buffer.Length 1) {}
 
                           Dim count cs.Read(buffers0buffers.Length)
 
                           ms.Close()
 
                           cs.Close()
 
                           Return Encoding.UTF8.GetString(buffers0count)
 
                       End Using
                    End Using
                End Using
            End Using
        End Using

    End 
Function

 
   Private Shared Function CalculateKeyGuard(value As String) As Byte()
 
       Dim result As Byte() = CType(NothingByte())
 
       Using hash As HashAlgorithm = New SHA256CryptoServiceProvider()
 
           Dim bytes As Byte() = Encoding.UTF8.GetBytes(value)
 
           result hash.ComputeHash(bytes)
 
       End Using
        Return result
    End 
Function

End Class 

الكلاس الثالث هو مجرد كلاس مساعد يمكنك اسخدامه إن أردت للتأكد من أن المدخلات عبارة عن روابط و في واقع الأمر أنا لم أستخدمه داخل الكود و تركت الأمر لك أنت لتقرر هل عليك أن تتأكد من أن المدخلات عبارة عن روابط أم لا


PHP كود :
Friend NotInheritable Class AssetsValidator

    Private Shared 
Function IsValidHttp(value As Uri) As Boolean
        Return value
.Scheme.Equals("http"StringComparison.OrdinalIgnoreCaseOrElse value.Scheme.Equals("https"StringComparison.OrdinalIgnoreCase)
 
   End Function

 
   Friend Shared Function IsValidHttpOrNull(value As Uri) As Boolean
        Return value IsNot Nothing AndAlso IsValidHttp
(value)
 
   End Function

End Class 

الكلاس الرابع هو الكلاس الرئيسي والمسئول عن عملية حفظ البيانات في ملف وأيضا مسئول عن قراءة البيانات من الملف
و هنا عملية الحفظ تتم علي صورة مصفوفة وبالتبعية يتم قراءة و استرجاع البيانات من الملف علي هيئة مصفوفة أيضا
أنا استخدمت كلة سر لحفظ البيانات يمكنك أن تغيرها إن أردت و أيضا الملف يتم حفظه في فهرس المشروع و هذا ايضا يمكنك ان تغيره و أيضا استخدمت نفس كلمة السر لللتشفير و إلغاء التشفير و هذا ايضا يمكنك تغييره إن أردت

PHP كود :
Imports System.Text

Public Class AssetContext

    Private 
Const DataProtector As String "12345"
 
   Private Const DataFileName As String ".\assets.dat"
 
   Private Shared characterEncoding As Encoding

    Private Shared lock 
As Object = New Object
    Private Shared context 
As AssetContext

    Public Shared ReadOnly Property Instance 
As AssetContext
        Get
            Dim result 
As AssetContext CType(NothingAssetContext)
 
           SyncLock lock
                If context Is Nothing Then
                    context 
= New AssetContext
                End 
If
 
               result context
            End SyncLock
            Return result
        End Get
    End Property

    Friend 
Function Write(list As List(Of AssetInfo)) As Boolean
        Return Write
(list, DataFileNameDataProtector)
 
   End Function

 
   Friend Function Write(list As List(Of AssetInfo), filename As Stringguard As String) As Boolean

        If characterEncoding Is Nothing Then
            Dim encoder 
As Encoding CType(Encoding.UTF8.Clone(), Encoding)
 
           encoder.EncoderFallback EncoderFallback.ReplacementFallback
            characterEncoding 
encoder
        End 
If

 
       Using writer As New System.IO.BinaryWriter(System.IO.File.Open(filenameSystem.IO.FileMode.Create), characterEncoding)
 
           writer.Write(AssetObfuscation.Obfuscate(guardguard))
 
           writer.Write(list.Count)
 
           For Each current As AssetInfo In list
 
               writer.Write(AssetObfuscation.Obfuscate(current.Indexguard))
 
               writer.Write(AssetObfuscation.Obfuscate(current.UriStringguard))
 
           Next
            Return True
        End Using
        Return False
    End 
Function

 
   Friend Function Read() As List(Of AssetInfo)
 
       Return Read(DataFileNameDataProtector)
 
   End Function

 
   Friend Function Read(filename As Stringguard As String) As List(Of AssetInfo)
 
       Dim assets As List(Of AssetInfo) = CType(Nothing, List(Of AssetInfo))
 
       If (System.IO.File.Exists(filename)) Then
            Using reader 
As New System.IO.BinaryReader(System.IO.File.Open(filenameSystem.IO.FileMode.Open), New System.Text.UTF8Encoding(FalseFalse))

 
               Dim protection As String AssetObfuscation.DeObfuscate(reader.ReadStringguard)
 
               If protection <> guard Then
                    Return Nothing
                End 
If

 
               Dim count As Integer reader.ReadInt32()
 
               assets = New List(Of AssetInfo)()
 
               For i As Integer 0 To count 1
                    Dim asset 
As AssetInfo = New AssetInfo
                    asset
.Index AssetObfuscation.DeObfuscate(reader.ReadStringguard)
 
                   asset.UriString AssetObfuscation.DeObfuscate(reader.ReadStringguard)
 
                   assets.Add(asset)
 
               Next
            End Using
        End 
If
 
       Return assets
    End 
Function


End Class 

الإستخدام

اولا عليك تعريف متغير يعبر عن الكلاس الخاص بحفظ و قراءة البيانات كالتالي


PHP كود :
Private context As AssetContext = New AssetContext 

ثم و لحفظ البيانات إلي ملف يتم أولا إنشاء مصفوفة للبيانات ثم يتم حفظها في الملف و الكود التالي يوضح ذلك
بعد ذلك وكنوع من الإختبار لا غير لتذهب الي فهرس المشروع و افتح الملف ببرنامج NotePad ستجد ان البيانات كلها مشفرة ولا يمكن فهم شئ منها

PHP كود :
       Dim list As List(Of AssetInfo) = New List(Of AssetInfo)()
 
       list.Add(New AssetInfo With {.Index "1", .UriString "First"})
 
       list.Add(New AssetInfo With {.Index "2", .UriString "Second"})
 
       list.Add(New AssetInfo With {.Index "3", .UriString "Third"})
 
       If context.Write(list) Then
            MessageBox
.Show("Data has been Saved to file")
 
       Else
            MessageBox
.Show("Do Not know how to Save Data to file")
 
       End If 

و لقراءة البيانات من الملف يمكنك استخدام الكود التالي و انا هنا قمت بإضافة البيانات الي ListBox بعد قرائتها من الملف و هذا لمجرد التوضيح فقط أما انت فيمكن ان تضيفها الي الكونترول الذي يناسبك

PHP كود :
       For Each current As AssetInfo In context.Read
            ListBox1
.Items.Add(current.Index "- " current.UriString)
 
       Next 

نصيحة أخيرة

هنا أنا كتبت كل شئ في مشروع واحد لكن نصيحتي لك أن تقسم الفكرة علي مرحلتين
المرحلة الأولي تحفظ الروابط في ملف و تقوم بتشفيرها

أما في البرنامج الرئيسي نفسه يتم اضافة الملف الموجودة به الروابط لفهرس المشروع وهنا سيكون عليك فقط قراءته و فك التشفير
أي ان الكلاسات اعلاه يجب تجزئتها بحيث يتم استخدام الجزء الخاص بفك التشفير و قراءة الملف من المشروع الرئيسي فقط

تقبل تحياتي
شكرا اخي الكريم على المجهود الجبار والتوضيح الهائل وادعو الله ان يجعلها لك في ميزلن الحسنات
الله ما نور طريقك ويسر امورك كلها  يارب
وعذرني استاذنا الكريم على الازعاج
الرد }}}
تم الشكر بواسطة: administrator
#7
اخي الكريم لقد حاولت مرارا وتكرارا لكن لم استطع تطبيق المشروح لو سمحت اخي الكريم تعملي مثال بسيط لكي افهم اكثرا وشكرا جزيلا
الرد }}}
تم الشكر بواسطة:
#8
المرفقات بها المثال


الملفات المرفقة
.rar   Test_Assets_Bidaya.rar (الحجم : 71.06 ك ب / التحميلات : 69)
الرد }}}
تم الشكر بواسطة:
#9
الله يحفدك اخي الكريم واسف لعدم الرد عليك لاني منشغل جدا بمريض وانا هده الايام يالمستشفى
ساجرب واتبع بنصيحتك عندما اعود فشكرا لوفائك بالوعد ا ادعو الله ان يجعلها لك في ميزان الحسنات
الرد }}}
تم الشكر بواسطة:
#10
(13-03-16, 04:14 PM)silverlight كتب : المرفقات بها المثال

شكرا اخي الكريم على مجهودك الرائع الى انه واجهتني مشكلة في المثال
الرد }}}
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  محتاج طريقة لتنسيق نص الرسالة المرسلة إلى الواتس اب new_programer 2 163 04-03-24, 07:15 AM
آخر رد: new_programer
  طريقة اجراء نسخة احتياطية و استرجاعها ؟ Osama NY 2 462 07-02-24, 08:59 PM
آخر رد: Kamil
  ماهي طريقة نقل محتويات checkedlistbox الى داتاقريدفيو صالح عبدالله 3 253 06-01-24, 03:20 PM
آخر رد: Kamil
  حماية عمود داخل ورقة الاكسل العيدروس 3 190 05-01-24, 12:21 AM
آخر رد: HALIM ELEULMA
  [VB.NET] ما هي طريقة استدعاء الازرار في الكيبورد من خلار زر افتراضي haider.mohsin92 1 295 14-12-23, 03:19 PM
آخر رد: Kamil
  طريقة عرض التقرير كريستال ريبورت في جهاز العميل Adel27213 2 347 10-12-23, 04:03 AM
آخر رد: Adel27213
  طريقة إسناد اكثر من جدول للكريستال ريبورت Adel27213 2 353 25-11-23, 11:51 PM
آخر رد: Adel27213
  طريقة تحويل الأرقام إلى حروف Adel27213 2 495 18-11-23, 01:40 AM
آخر رد: sniper2030
  التحكم فى عرض طريقة التاريخ فى الاداة datetimepicker Ahmed.vb 3 508 08-11-23, 01:27 AM
آخر رد: الحزين اليماني
  طريقة جلب صف من قاعدة البيانات بشرط العمود ٤ لا يساوي فارغ Adel27213 2 424 07-11-23, 05:02 AM
آخر رد: Adel27213

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم