Jump to content

Sky Slate Blueberry Blackcurrant Watermelon Strawberry Orange Banana Apple Emerald Chocolate
Photo

ClipBoard Funktion will nicht so wie ich will :)


  • Please log in to reply
34 replies to this topic
fump2000
  • Members
  • 591 posts
  • Last active: Nov 11 2015 07:52 AM
  • Joined: 01 Nov 2012

Funktion sieht nun so aus:

OnClipboardChange:
Critical
errlvl := ErrorLevel
Return

getClipboardSafe2()
	{
		global errlvl
		ClipSaved := ClipboardAll
		Clipboard =
		SendInput, ^c
		FileDelete,test.txt
		FileAppend,%ClipboardAll%,test.txt
		Clipboard:=""
		FileRead,Clipboard,*C test.txt
		FileDelete,test.txt
		ClipWait,3,1
		If ErrorLevel
			{
				MsgBox, Kopieren des Textes in die Zwischenablage fehlgeschlagen.
				Return
			}
		If (errlvl = 1)
			msgbox Text
		If (errlvl = 2)
			msgbox kein Text, vllt. Bild
		v := Clipboard
		Clipboard := ClipSaved
		ClipSaved =
		Return v
	}

Teste die mal bitte bei dir...

 

Bei mir wird die msgbox errlvl nicht angezeigt. Anscheinend stimmt da was mit den timings nicht.

 

Das mit dem beibehalten der Formatierung klappt auch nicht wirklich.

 

Hast du noch ne idee?



D_FoX
  • Members
  • 77 posts
  • Last active: Oct 17 2013 11:26 PM
  • Joined: 08 May 2013

guck mal in meine Topics, im Forum da hat ich solche Probleme die du auch hast.



D_FoX
  • Members
  • 77 posts
  • Last active: Oct 17 2013 11:26 PM
  • Joined: 08 May 2013

Bei mir geht das, mit Format.

OnClipboardChange:
ToolTip ClipboardNummer: %A_EventInfo%
Sleep 1000
ToolTip  
Return

;Speichern
2::
Send, ^c
Clipwait
ClipSicherung := ClipboardAll
;FileAppend, %ClipSicherung%, %A_Scriptdir%\logo.clip      ;für später in datei speichern
return

;Laden

3::
Clipboard := ClipSicherung
Clipwait
;FileRead, Datei, *c %A_Scriptdir%\logo.clip  
send, ^v
return


ESC::EXITAPP


nnnik
  • Members
  • 1625 posts
  • Last active: Jan 24 2019 02:19 PM
  • Joined: 28 Jul 2012

Bei dir fehlt ein ClipWait zwischen send ^c und FileAppend,%ClipboardAll%.

OnClipboardChange:
Critical
errlvl := ErrorLevel
Return

wieso Errorlevel?

Muss es nicht A_EventInfo heissen?


Visit the new forum ahkscript.org.

http://ahkscript.org


fump2000
  • Members
  • 591 posts
  • Last active: Nov 11 2015 07:52 AM
  • Joined: 01 Nov 2012

Ob A_EventInfo oder Errorlevel scheint egal zu sein. Enthält die gleichen Werte.

 

Ist teste es gleich mal aus.



fump2000
  • Members
  • 591 posts
  • Last active: Nov 11 2015 07:52 AM
  • Joined: 01 Nov 2012

Ich raff es nicht...

 

Bau mir bitte eine Funktion mit der du in in Word einen Formatierten Text kopierst und diesen inkl. Formatierung wieder einfügen kannst.

 

Ich bekomm es anscheinend nicht hin.



nnnik
  • Members
  • 1625 posts
  • Last active: Jan 24 2019 02:19 PM
  • Joined: 28 Jul 2012

Da ich weder Word noch zeit dazu habe geht das einfach nicht.

 

Ich hab mir die WinAPI Funktionen dazu angeschaut.

Die benötigen einen Typ was sie aus dem Clipboard holen sollen.

So ist 1 z.B. Text und 2. Bild.

Wenn es einen Typ "formatierten Word Text" gibt kannst du diesen benutzen.

Ich werd was versuchen aber im moment hab ich echt viel zu tun.


Visit the new forum ahkscript.org.

http://ahkscript.org


fump2000
  • Members
  • 591 posts
  • Last active: Nov 11 2015 07:52 AM
  • Joined: 01 Nov 2012

Das mit der Bitte war auch mehr aus Frust geschrieben :) Sorry!

 

Ich glaube ich habe es selbst verbockt.

Eigentlich liefert AHK alles was nötig ist.

Ich habe den Fileread in eine eigene Var gemacht. Dann erscheint beim einfügen irgendein Zeichen. Wenn ich den Fileread ins Clipboard mache dann wird der Text ausgegeben.

Das klappt nun.

 

Was nicht so zuverlässig funktioniert ist die übergabe des A_Eventinfo von OnClipboardChange. Oft ist es 0 aber eigentlich sollte es 1 sein, auch wenn ich ein Bild kopiere ist es oft 0 obwohl es 2 sein sollte.

Irgendwie klappts nicht so gut. Warum weiß ich auch nicht.



nnnik
  • Members
  • 1625 posts
  • Last active: Jan 24 2019 02:19 PM
  • Joined: 28 Jul 2012

Windows... ;)


Visit the new forum ahkscript.org.

http://ahkscript.org


fump2000
  • Members
  • 591 posts
  • Last active: Nov 11 2015 07:52 AM
  • Joined: 01 Nov 2012

So wie D_Fox das macht klappt es komischerweise.

 

Anscheinend mag das in einer Funktion nicht funktionieren. Ist halt doof weil ich dann bei 6 Zwischenablagen tatsächlich 6 mal den gleichen Code leicht geändert im Script stehen habe.



nnnik
  • Members
  • 1625 posts
  • Last active: Jan 24 2019 02:19 PM
  • Joined: 28 Jul 2012
Okay sorry ich hab bei deinem Code etwas überlesen und dann den Code falsch interpretiert.
Du suchst nach einer Möglichkeit die Zwischenablage zu speichern und genau so auszugeben.

Da bin ich selber grade dran ich arbeite mit FileAppend, FileSize und einer MoveBuffer DLL...
So einfach über diese Funktion wird es nicht funktionieren.
Ich meld mich sobald ich fertig bin.

Visit the new forum ahkscript.org.

http://ahkscript.org


fump2000
  • Members
  • 591 posts
  • Last active: Nov 11 2015 07:52 AM
  • Joined: 01 Nov 2012

Das wäre wirklich wundervoll!!! Vielen Dank im voraus!!!



nnnik
  • Members
  • 1625 posts
  • Last active: Jan 24 2019 02:19 PM
  • Joined: 28 Jul 2012

Es wird eine Class und ziemlich kompliziert. :D

Ich kanns aber erklären.


Visit the new forum ahkscript.org.

http://ahkscript.org


just me
  • Members
  • 1496 posts
  • Last active: Nov 03 2015 04:32 PM
  • Joined: 28 May 2011

Hallo,

 

ich habe vor einigen Jahren mal versucht, eine Textbausteinverwaltung für formatierte Texte mit "ClipboardAll" Dateien zu schreiben. Ich habe dann aufgegeben, weil die Formatierung nie die Nacht und manchmal auch nur deutlich kürzere Zeit überlebt hat. Entweder ist sie ganz verschwunden oder war vermurkst. Die beteiligten Anwendungen waren Word, Notes und RichText-Controls. Wenn jemand auf diese Art einen dauerhaften Erfolg erzielt hat, möge er bitte zeigen, wie er das geschafft hat.


Prefer ahkscript.org for the time being.


fump2000
  • Members
  • 591 posts
  • Last active: Nov 11 2015 07:52 AM
  • Joined: 01 Nov 2012

nnnik bekommt das bestimmt hin :) Ich hoffe es jedenfalls... Alles andere was ich bisher gesehen habe schafft den erhalt der Formatierung nicht immer. Selbst wenn man den gleichen Text kopiert und nacheinander einfügrt passiert es das Formatierungen verloren gehen.


Liegt das an AHK selbst? Ist wohl nicht so einfach damit umzugehen.