منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب
ظهور البرنامج عند نسخ رابط - نسخة قابلة للطباعة

+- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb)
+-- قسم : قسم لغة الفيجوال بيسك VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=182)
+--- قسم : قسم اسئلة VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=183)
+--- الموضوع : ظهور البرنامج عند نسخ رابط (/showthread.php?tid=22078)



ظهور البرنامج عند نسخ رابط - ابو روضة - 12-10-17

السلام عليكم اخوتى
اريد حينما انسخ اى رابط من اليوتيوب يظهر لى تلقائى الفورم أمامى
يعنى حينما يتم تشغيل الفورم وأنزلته تحت فى شريط المهام ونسخت
رابط من اليوتيوب يظهر تلقائى امامى ويضع الرابط المنسوخ داخل التكست بوكس
...كيف ذلك الله يكرمكم ؟..



RE: ظهور البرنامج عند نسخ رابط - حريف برمجة - 12-10-17

وعليكم السلام ،،

يكون برنامج شغال في الخلفية وتعمل تايمر يراقب الحافظة (clipboard)
اذا فيها بيانات اظهر برنامج وضع المؤشر في التكست بوكس ومن ثم يلصق النص الموجود في الحافظة داخل التكست .


RE: ظهور البرنامج عند نسخ رابط - a.ahmed - 12-10-17

PHP كود :
Private Sub Form1_Load(ByVal sender As ObjectByVal e As EventArgsHandles MyBase.Load
    SetClipboardViewer
(Me.Handle)
End Sub

<Runtime.InteropServices.DllImport("User32.dll")> _
Public Shared Function SetClipboardViewer(ByVal hWndNewViewer As IntPtr) As IntPtr
End 
Function
Protected 
Overrides Sub WndProc(ByRef m As Message)
    If 
m.Msg = &H308 Then
        Me
.TextBox1.Clear()
        If 
Clipboard.GetText.Trim.StartsWith("https://www.youtube.com/watch?v="Then
            Me
.TextBox1.Text Clipboard.GetText
            Me
.WindowState FormWindowState.Normal
        End 
If
    
End If
    
MyBase.WndProc(m)
End Sub 



RE: ظهور البرنامج عند نسخ رابط - ابو روضة - 12-10-17

(12-10-17, 04:49 AM)حريف برمجة كتب : وعليكم السلام ،،

يكون برنامج شغال في الخلفية وتعمل تايمر يراقب الحافظة (clipboard)
اذا فيها بيانات اظهر برنامج وضع المؤشر في التكست بوكس ومن ثم يلصق النص الموجود في الحافظة داخل التكست .



طب اعملها ازاى اخى

(12-10-17, 05:01 AM)a.ahmed كتب :
PHP كود :
Private Sub Form1_Load(ByVal sender As ObjectByVal e As EventArgsHandles MyBase.Load
    SetClipboardViewer
(Me.Handle)
End Sub

<Runtime.InteropServices.DllImport("User32.dll")> _
Public Shared Function SetClipboardViewer(ByVal hWndNewViewer As IntPtr) As IntPtr
End 
Function
Protected 
Overrides Sub WndProc(ByRef m As Message)
 
   If m.Msg = &H308 Then
        Me
.TextBox1.Clear()
 
       If Clipboard.GetText.Trim.StartsWith("https://www.youtube.com/watch?v="Then
            Me
.TextBox1.Text Clipboard.GetText
            Me
.WindowState FormWindowState.Normal
        End 
If
 
   End If
 
   MyBase.WndProc(m)
End Sub 

هو بينسخ الرابط داخل التكست بوكس فعلا لكن الفورم  لا ينبثق لى عند نسخ اى رابط..
مقصدى من سؤالى اخى هو انبثاق الفورم لى وظهوره امامى عند نسخ اى رابط



RE: ظهور البرنامج عند نسخ رابط - silverlight - 12-10-17

PHP كود :
Dim result As String String.Empty
Dim iData As IDataObject Clipboard.GetDataObject()
If 
iData.GetDataPresent(DataFormats.TextThen
result 
+= CType(iData.GetData(DataFormats.Text), String)

End If 
'طبعا قبل تنفيذ الكود أعلاه يجب أن تنسخ اللينك الي Clipboard

PHP كود :
Dim link As String "Your Link"
Clipboard.SetDataObject(link

أيضا لتضع في اعتبارك أن جميع البرامج تستخدم Clipboard
لذلك عليك ن تتأكد أن ما ستعود به من Clipboard هو Valid link
ممكن مثلا تستخدم
If result.StartsWith("https://www.youtube


RE: ظهور البرنامج عند نسخ رابط - ابو روضة - 12-10-17

(12-10-17, 01:05 PM)silverlight كتب :
PHP كود :
Dim result As String String.Empty
Dim iData As IDataObject Clipboard.GetDataObject()
If 
iData.GetDataPresent(DataFormats.TextThen
result 
+= CType(iData.GetData(DataFormats.Text), String)

End If 
'طبعا قبل تنفيذ الكود أعلاه يجب أن تنسخ اللينك الي Clipboard

PHP كود :
Dim link As String "Your Link"
Clipboard.SetDataObject(link

أيضا لتضع في اعتبارك أن جميع البرامج تستخدم Clipboard
لذلك عليك ن تتأكد أن ما ستعود به من Clipboard هو Valid link
ممكن مثلا تستخدم
If result.StartsWith("https://www.youtube

جزاك الله كل خير اخى بس انا كدة اتكعبلت معاك لآن الأكواد بتاعة حضرتك متفرقة ومش عارف احط ده فين 
والاخر فين هههه...أقصد هو كود استاذ احمد شغال تمام وبينسخ لكنى اريد انبثاق الفورم امامى عند نسخ
أى رابط يوتيوب



RE: ظهور البرنامج عند نسخ رابط - silverlight - 12-10-17

عندما تقوم بنسخ اللينك مباشرة تقوم بتنفيا الأتي :
PHP كود :
Dim link As String "Your Link"
Clipboard.SetDataObject(link

ثم الأتي :
PHP كود :
Dim result As String String.Empty
Dim iData As IDataObject Clipboard.GetDataObject()
If 
iData.GetDataPresent(DataFormats.TextThen
result 
+= CType(iData.GetData(DataFormats.Text), String
ثم تتأكد أن Result او ٍString الناتج ليس Nothing و أيضا يبدأ بالكلمة "https://www.youtube"
فإن كان Ture تقوم بتمرير Result الي التكست بوكس

علي فكرة انت لا تحتاج أن تستخدم clipboard
lمثلا بعد نسخ اللينك مباشرة تقوم بحفظها في ملف مؤقت علي فهرس المشروع
ثم تستدعيها من الملف حين تحتاجها


RE: ظهور البرنامج عند نسخ رابط - a.ahmed - 12-10-17

PHP كود :
Private Sub Form1_Load(ByVal sender As ObjectByVal e As EventArgsHandles MyBase.Load
    SetClipboardViewer
(Me.Handle)
End Sub

<Runtime.InteropServices.DllImport("User32.dll")> _
Public Shared Function SetClipboardViewer(ByVal hWndNewViewer As IntPtr) As IntPtr
End 
Function
Protected 
Overrides Sub WndProc(ByRef m As Message)
    If 
m.Msg = &H308 Then
        Me
.TextBox1.Clear()
        If 
Clipboard.GetText.Trim.StartsWith("https://www.youtube.com/watch?v="Then
            Me
.TextBox1.Text Clipboard.GetText
            Me
.WindowState FormWindowState.Normal
            Me
.Activate()
        
End If
    
End If
    
MyBase.WndProc(m)
End Sub 



RE: ظهور البرنامج عند نسخ رابط - ابو روضة - 12-10-17

(12-10-17, 01:52 PM)silverlight كتب : عندما تقوم بنسخ اللينك مباشرة تقوم بتنفيا الأتي :
PHP كود :
Dim link As String "Your Link"
Clipboard.SetDataObject(link

ثم الأتي :
PHP كود :
Dim result As String String.Empty
Dim iData As IDataObject Clipboard.GetDataObject()
If 
iData.GetDataPresent(DataFormats.TextThen
result 
+= CType(iData.GetData(DataFormats.Text), String
ثم تتأكد أن Result او ٍString الناتج ليس Nothing و أيضا يبدأ بالكلمة "https://www.youtube"
فإن كان Ture تقوم بتمرير Result الي التكست بوكس

علي فكرة انت لا تحتاج أن تستخدم clipboard
lمثلا بعد نسخ اللينك مباشرة تقوم بحفظها في ملف مؤقت علي فهرس المشروع
ثم تستدعيها من الملف حين تحتاجها


ايوه صح اخى هذا ما كنت ابحث عنه وتم الحمدلله

جزاك الله كل خير

(12-10-17, 02:11 PM)a.ahmed كتب :
PHP كود :
Private Sub Form1_Load(ByVal sender As ObjectByVal e As EventArgsHandles MyBase.Load
    SetClipboardViewer
(Me.Handle)
End Sub

<Runtime.InteropServices.DllImport("User32.dll")> _
Public Shared Function SetClipboardViewer(ByVal hWndNewViewer As IntPtr) As IntPtr
End 
Function
Protected 
Overrides Sub WndProc(ByRef m As Message)
 
   If m.Msg = &H308 Then
        Me
.TextBox1.Clear()
 
       If Clipboard.GetText.Trim.StartsWith("https://www.youtube.com/watch?v="Then
            Me
.TextBox1.Text Clipboard.GetText
            Me
.WindowState FormWindowState.Normal
            Me
.Activate()
 
       End If
 
   End If
 
   MyBase.WndProc(m)
End Sub 

بارك الله فيك اخى الكريم احمد وجزاك كل الخيرات