Hackerboard Wiki HaboBlog
Hackerboard bei Facebook Hackerboard bei Google+ Hackerboard bei Twitter

[HaBo]

 
Code Kitchen Allgemeines Coder-Forum rund um das Programmieren eigenständiger, ausführbarer Programme.

[C++] Wo steckt der fehler ?

Diskussion: [C++] Wo steckt der fehler ? im Forum Code Kitchen, in der Kategorie Software Home; Anzeige Code: void CheckCLP() { if(curr_clpdata!=GetCLPData()) { curr_clpdata=GetCLPData(); AddHTML("<br>Neuer Text in der Zwischenablage:<br>","gray",3,true,false,true); AddHTMLBox(curr_clpdata); } } Code: char* GetCLPData() { ...

Antwort
Alt 16.01.07, 19:38   #1 (permalink)
 
Registriert seit: 13.01.07
Felheart Leistung: Facit NTK
Likes: 0
Standard [C++] Wo steckt der fehler ?

Anzeige

Code:
void CheckCLP()
{
	if(curr_clpdata!=GetCLPData())
	{
		curr_clpdata=GetCLPData();
		AddHTML("<br>Neuer Text in der Zwischenablage:<br>","gray",3,true,false,true);
		AddHTMLBox(curr_clpdata);
	}
}
Code:
char* GetCLPData()
{
	HWND r = FindWindowA("ConsoleWindowClass",NULL);
	if (OpenClipboard(r))
	{
		if (::IsClipboardFormatAvailable(CF_TEXT) || ::IsClipboardFormatAvailable(CF_OEMTEXT))
		{
			// Retrieve the Clipboard data
			HANDLE hClipboardData = GetClipboardData(CF_TEXT);

			char *pchData = (char*)GlobalLock(hClipboardData);
			GlobalUnlock(hClipboardData);
			CloseClipboard();
			return pchData;
		}
		else { return "*** NO TEXT DATA IN CLIPBOARD! ***"; }
	}
	return "nrc"; // (N)ever (R)eachable (C)ode
}

curr_clpdata ist ein "string"
AddHTML ist einfach ne funktion die das in ne datei schreibt...
genauso wie addhatmlbox


Die Funktion "CheckCLP" wird mit while(1)
von nem thread aufgerufen;

also jedes mal wenn ein NEUER text in der zwischenablage ist,
wird er also in ne datei geschieben -.-

die funktion funktioniert auch soweit,
ABER! wenn ich jetzt "Druck" auf der Tastatur drücke
kommt ja kein text (sondern ein BMP) in die zwischenablage.

ab genau diesem zeitpunkt, funktioniret das ganze kein bissel mehr.
Es wird GARNICHTS mehr in das file geschrieben -.-

z.B.:

ich kopier irgen nen text ins CLP
und noch einen text.

dann drück ich "DRUCK" (Screenshot)

dann kopier ich noch mal 2 sachen ins CLP (text)
-----

dann sollte das file doch folgendermaasen aussehen:

Code:
BLA BLA BLA

awurhohwet BLA1

***NO TEXT DATA IN CLIPBOARD!***

ewiuobgt

lollololololol
aber es sieht leider nur so aus -.-

Code:
BLA BLA BLA 

awurhohwet BLA1

***NO TEXT DATA IN CLIPBOARD!***

also die funktion funzt ned mehr nachdem einmal "Nicht-TExt-daten"
da reingekommen sind :(


Wo liegt mein denkfehler ?
Warum tut das nich so wie ich will ???

//EDIT: bevor ich es vergesse:

-ide: MS VS 2005 prof
-os: winXP
-anwendung: öhh... halt ein consolen project ^^



///////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////


OK !

es hat lange gedauert,
hab den fehler gefunden !


ich hab in vergessen das wenn ein "nicht text" ins CLP kommt VOR dem return das CLP
global wiedeer freizugeben und den handle zu schliessen :)
Felheart ist offline   Mit Zitat antworten
Antwort
   
- Anzeige -

Werbung ist gerade online    

[HaBo] » Software Home » Code Kitchen » [C++] Wo steckt der fehler ?
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind aus
Pingbacks sind aus
Refbacks sind aus


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Tablet Stift steckt fest :D Serow Hardware Probleme 7 09.10.08 22:26
Wo steckt user_avatar_upload() im PhpBB Xalon (Web-) Design und webbasierte Sprachen 2 05.04.06 22:10
Danasoftsignatur, was steckt genau dahinter? Matthias (Web-) Design und webbasierte Sprachen 2 08.04.04 14:04
was steckt hinter welchen Port? kklaus1 (In)security allgemein 5 01.08.03 06:47
Virus steckt im ACT Moe News & Ankündigungen 0 16.06.02 12:29


1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61