Solved

Clipboard Problem

Posted on 2003-10-26
10
444 Views
Last Modified: 2013-11-25
I've written a program that uses Clipboard.SetText to copy some text from a textbox. It copies it and my program can then paste that data into other text boxes. But when I try and paste the copied data into a different program, it pastes whatever was on the clipboard that wasn't set by my program.
I came to the conclusion that the Clipboard.SetText function must be a local function, that uses an internal app clipboard, not the system one. So how do I access the system clipboard from VB and paste text to it.

I'd appreciate a quick answer as I need to upgrade the program that some users have already downloaded.
0
Comment
Question by:TheBaker
10 Comments
 
LVL 1

Author Comment

by:TheBaker
ID: 9622697
I've checked on MSDN and the Clipboard object IS the system one, so why can't Internet Explorer or Mozilla (the two browsers I've tried) access it?
0
 
LVL 3

Accepted Solution

by:
monkesdb earned 34 total points
ID: 9622986
You need to clear it before you call SetText.
0
 
LVL 1

Author Comment

by:TheBaker
ID: 9623023
Nope, that still hasn't done it. I clear the clipboard before setting the text but it still does the same thing!
0
Active Directory Webinar

We all know we need to protect and secure our privileges, but where to start? Join Experts Exchange and ManageEngine on Tuesday, April 11, 2017 10:00 AM PDT to learn how to track and secure privileged users in Active Directory.

 
LVL 8

Assisted Solution

by:fozylet
fozylet earned 33 total points
ID: 9623664
Sub Test
    Clipboard.Clear
    Clipboard.SetText ("Hello World")
    MsgBox Clipboard.GetText
End Sub

Try running that sub, and then pasting the clipboard in a TEXT field.
clipboard has datatype settings and if you try pasting in some other datatype area, it may not paste.

this may help: http://msdn.microsoft.com/library/en-us/dnvbpj00/html/clip0002.asp
0
 
LVL 5

Expert Comment

by:fantasy1001
ID: 9624894
you have to clear the clipboard first

sub cmdClear_OnClick
   clipboard.clear
   clipboard.settext text1.text
end sub
0
 
LVL 2

Assisted Solution

by:BUCHAS
BUCHAS earned 33 total points
ID: 9624964
I suppose that what's happening is that you copy your data to the clipboard in you application, and then another running app (in the background or not) in other process override your data by saving his own data into the clipboard object.

close all other concurrently running  applications and run your app normally
0
 
LVL 7

Expert Comment

by:_agj_
ID: 9625092
The max u wud hav to do is:

Clipboard.Clear
Clipboard.SetText text1.text, vbCFText
0
 
LVL 1

Author Comment

by:TheBaker
ID: 9625482
I've tried clearing the data, but I still have the same problem. I can't close all other apps, because I  need a browser open (the text copied needs to be pasted into a web browser.

Would using the clipboard via the Windows API work? Could someone give me an example of how to copy text using the Windows API?
0
 
LVL 1

Author Comment

by:TheBaker
ID: 9625498
I can provide the compiled program if that will help. It is:
http://freehost14.websamba.com:81/NDifference/content/smileyxtra_setup.exe
0
 
LVL 1

Author Comment

by:TheBaker
ID: 9625627
I've managed to solve the problem, I'm not sure quite what was happenning, but it's fixed now. Thanks to all that helped. I've split the points between those who's answers led me to the solution.
0

Featured Post

Free Tool: Site Down Detector

Helpful to verify reports of your own downtime, or to double check a downed website you are trying to access.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

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

If you have ever used Microsoft Word then you know that it has a good spell checker and it may have occurred to you that the ability to check spelling might be a nice piece of functionality to add to certain applications of yours. Well the code that…
Most everyone who has done any programming in VB6 knows that you can do something in code like Debug.Print MyVar and that when the program runs from the IDE, the value of MyVar will be displayed in the Immediate Window. Less well known is Debug.Asse…
As developers, we are not limited to the functions provided by the VBA language. In addition, we can call the functions that are part of the Windows operating system. These functions are part of the Windows API (Application Programming Interface). U…
Show developers how to use a criteria form to limit the data that appears on an Access report. It is a common requirement that users can specify the criteria for a report at runtime. The easiest way to accomplish this is using a criteria form that a…

828 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