Solved

problem in using clipboard class in webapplication

Posted on 2009-04-06
4
390 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

This document covers how to connect to SQL Server and browse its contents.  It is meant for those new to Visual Studio and/or working with Microsoft SQL Server.  It is not a guide to building SQL Server database connections in your code.  This is mo…
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 will give you a basic overview how to record your screen with Microsoft Expression Encoder. This program is still free and open for the public to download. This will be demonstrated using Microsoft Expression Encoder 4.
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 …

813 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

14 Experts available now in Live!

Get 1:1 Help Now