Solved

problem in using clipboard class in webapplication

Posted on 2009-04-06
4
389 Views
Last Modified: 2013-12-17
Hi

I was reading an article on clipboard.

http://www.codeproject.com/KB/shell/clipboard01.aspx?print=true

But when I am using this code on the web application I am getting runtime error.


"object reference is not set"

I am attaching the code where I am getting this error.

Can't we use it in web application
if(Clipboard.GetDataObject().GetDataPresent(DataFormats.Text))

Open in new window

0
Comment
Question by:KaranGupta
  • 2
4 Comments
 
LVL 15

Accepted Solution

by:
oobayly earned 500 total points
ID: 24075690
I'm guessing that you've included a reference to System.Windows.Forms so that you are able to use the Clipboard object.

You might try calling the Clipboard methods in a Single Thread Aparment (STA).

However, you may find some nasty side effects using the clipboard in a Web App. If two users call the same method at the same time, one my place data in the clipboard, and the other retrieves that data.
Private Sub ee24297524()

    Dim td As New System.Threading.Thread(AddressOf GetClipboardText)

    td.ApartmentState = System.Threading.ApartmentState.STA

    td.Start()

    td.Join()

End Sub
 

Private Sub GetClipboardText()

    Dim b As Boolean = System.Windows.Forms.Clipboard.ContainsText()

End Sub

Open in new window

0
 
LVL 16

Expert Comment

by:sunithnair
ID: 24075695
Why would you want to do this in a web application? This code and post is useful only in the context of a winforms application. If you need to access the client clipboard data then you will have to do it using javascript.
0
 
LVL 15

Expert Comment

by:oobayly
ID: 24075929
Thanks for the points, I gave an answer that would work, but I do agree with sunithnair.
I'd recommend using the Session variable, the cache or a temp file instead of the clipboard.
0
 
LVL 3

Expert Comment

by:techprocess
ID: 24206509
Where to call ee24297524() given in above comment. I getting error -
"the Current thread must be set to single thread apartment (STA) mode before
OLE calls can be made. Ensure that your Main function has STAThreadAttribute
marked on it. This exception is only raised if a debugger is attached to the
process."
Is there is any solution?
Regards,
Krishna Mohan Singh
0

Featured Post

DevOps Toolchain Recommendations

Read this Gartner Research Note and discover how your IT organization can automate and optimize DevOps processes using a toolchain architecture.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Calculating holidays and working days is a function that is often needed yet it is not one found within the Framework. This article presents one approach to building a working-day calculator for use in .NET.
It was really hard time for me to get the understanding of Delegates in C#. I went through many websites and articles but I found them very clumsy. After going through those sites, I noted down the points in a easy way so here I am sharing that unde…
This Micro Tutorial hows how you can integrate  Mac OSX to a Windows Active Directory Domain. Apple has made it easy to allow users to bind their macs to a windows domain with relative ease. The following video show how to bind OSX Mavericks to …
Along with being a a promotional video for my three-day Annielytics Dashboard Seminor, this Micro Tutorial is an intro to Google Analytics API data.

912 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

17 Experts available now in Live!

Get 1:1 Help Now