Posts

مقدمة إلي إخفاء المعلومات - الجزء الأول

في بعض الأوقات قد يحتاج المبرمج الي إخفاء بعض المعلومات و من ثم يستردها مرة أخري لكي يستخدمها كيفما يشاء من داخل برنامجه  و في هذا الموضوع و علي أجزاء مختلفة سوف نناقش بعض الاساليب البسيطة التي من الممكن استخدامها لإخفاء المعلومات في لون أو في صورة أو في ملف من اي نوع  البيانات غالبا لها أشكال كثيرة فهي إما أن تكون علي هيئة تكست او جروف أو أرقام أو علي هيئة صور أو ملفات وكل هذه الاشكال من البيانات من الممكن تحويلها جميعا الي بايت إخفاء حرف واحد فقط في صورة الخطوات التالية توضح الكود مع تفسير لكل سطر في الكود   الخطوة الأولي : تحديد و تعريف الحرف Dim chr As Char = "A"c الخطوة الثانية : تحويل الخرف الي بايت Dim b As Byte = Convert.ToByte(chr)  الخطوة الثالثة : تعريف متغير عبارة عن لون و ذلك باستخدام قيمة البايت من الخطوة الثانية Dim clr As Color = Color.FromArgb(b, b, b, b) الخطوة الرابعة : تعريف متغير عبارة عن صورة و هنا سوف أقوم ببناء صورة صغيرة بأبعاد مناسبة Dim bmp As Bitmap = New Bitmap(20, 20)  الخطوة الخامسة : الأن نملأ ...

File To IntPtr

The Purpose of the below class is to convert a String to IntPtr Public Class CairoIntPtr     Inherits MarshalByRefObject     Implements IDisposable     Private _disposed As Boolean     Private _handle As IntPtr     Public Sub New(s As String)         Dim func As Func(Of String, IntPtr) = Function(str)                                                   Dim ptr As IntPtr = CType(Nothing, IntPtr)                                         ...

CopyFromScreen

الكود التالي يوضح كيف يمكن أخذ صورة لشاشة الكمبيوتر بسرعة و حفظها في فهرس المشروع الكود يمكن تنفيذه من خلال تايمر لتصوير الشاشة كل فترة زمنية معينة ثم يتم جمع كل الصور و تحويلها الي ملف صور متحركة أو ملف فيديو ويمكن الاستغناء عن السطر الذي يقوم بحفظ الصورة و نضيف الصور الي مصفوفة وبحيث يسهل التعامل معها كيفما نريد Public Class  Form1     Private Sub Form1_Load ( sender  As  Object ,  e  As  EventArgs )  Handles MyBase . Load         Dim rect  As  Rectangle  =  Screen . PrimaryScreen . Bounds         Using scrBitmap  As  Bitmap  =  Image . FromHbitmap (New  Bitmap ( rect . Width ,  rect . Size . Height ). GetHbitmap (),  Graphics . FromHwnd ( IntPtr . Zero ). GetHdc ())              Using g...

Calculate the color of GDI hpalette - GDI+ secrets

    Private Function GetHppaletteColor() As Color         Return Image.FromHbitmap(New Bitmap(Me.Width, Me.Height).GetHbitmap(), IntPtr.Zero).GetPixel(0, 0)     End Function or   Private Function GetHppaletteColor() As Color         Return Image.FromHbitmap(New Bitmap(Me.Width, Me.Height).GetHbitmap(), Graphics.FromHwnd(IntPtr.Zero).GetHdc).GetPixel(0, 0)     End Function the below code shows hoe to save the screen bitmap which hold the hpalette color         Dim rect As Rectangle = CType(Nothing, Rectangle)         Dim devices As Screen() = Screen.AllScreens         For i As Integer = 0 To devices.Length - 1             Dim device As Screen = devices(i)       ...

Using Yield to get word count in a string

The below code shows one of the ideas to count the exist of a word in a string   Private Iterator Function GetWordCount(value As String, s As String) As IEnumerable(Of Integer)         Dim index As Integer = -1         Do             index = value.Split(" ").ToList.IndexOf(s, index + 1)             If index >= 0 Then                 Yield index             End If         Loop While index >= 0         Return     End Function Uage:          Dim s As String = "my doc my comp my dog my heart"         Dim r...

A Function to Convert Generic T To String

    Private Function Convert(Of T)(value As T) As String         Return System.Convert.ToString(CType(value, Object), System.Globalization.CultureInfo.CurrentCulture())     End Function

Control Finder Class

من فترة كنت كتبت بعص الأكواد لإيجاد جميع الكونترول الموجودة في اي كونترول و الكود موجود في اللينك التالي اللينــــــــــــــــــــــــــك لكن و مع التطور الحاصل في الدوت نت قررت أخيرا تحويل معظم الأكواد الي كلاسات بحيث يسهل تطويرها و الاستفادة منها في اي مشروعات مستقبلة و الكود التالي عبارة عن مساهمة جيدة يمكن إضافتها الي اي مكتبة يتم كتابتها للدوت نت Public Class ControlFinder     Private _controls As IEnumerable(Of Control)     Public Sub New(ctrl As Control)         Me.New(ctrl, Function(c) c IsNot Nothing AndAlso Not c.IsDisposed AndAlso c.IsHandleCreated AndAlso c.Visible)     End Sub     Public Sub New(ctrl As Control, criteria As Func(Of Control, Boolean))         If ctrl Is Nothing Then             _controls = New Control() {}         El...