Advertisement
Guest User

Untitled

a guest
Sep 24th, 2017
61
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.66 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Text;
  4. using System.Threading;
  5. using System.Windows.Forms;
  6.  
  7. namespace dIRC7
  8. {
  9. public static class IRCClipBoard
  10. {
  11. #region Declarations
  12. private static string Data;
  13. private static string NewData;
  14. #endregion
  15.  
  16. public static void AddDataToClipboard(string Text)
  17. {
  18. if (String.IsNullOrEmpty(Data))
  19. {
  20. if (String.IsNullOrEmpty(Text)) { return; }
  21. Data = Text;
  22. Thread ClipboardThread = new Thread(_ClipboardWaiter);
  23. ClipboardThread.SetApartmentState(ApartmentState.STA);
  24. ClipboardThread.Start();
  25. }
  26. else
  27. {
  28. //Thread currently running
  29. NewData = Text;
  30. }
  31. }
  32.  
  33. private static void _ClipboardWaiter()
  34. {
  35. bool bSuccess = false;
  36. while (!bSuccess)
  37. {
  38. // load clipboard data untill it actually loads.
  39. try
  40. {
  41. if (!String.IsNullOrEmpty(NewData))
  42. {
  43. Clipboard.SetText(NewData);
  44. }
  45. else
  46. {
  47. Clipboard.SetText(Data);
  48. }
  49. bSuccess = true;
  50. Data = null;
  51. NewData = null;
  52. break;
  53. }
  54. catch
  55. {
  56. Thread.Sleep(500);
  57. }
  58. }
  59. }
  60. }
  61. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement