imagesearch

02/24/2012 15:11 a0ke#1
grüße,
ich versuche folgende imagesearch funktion bei mir zu implementieren:


das funktioniert soweit auch ganz super doch wenn ich die funktion dann in meinem main programm aufrufen möchte mit :

Code:
[c] answer = ImageSearch(0,0,1920,1080,"c:\\pic.bmp");
std::cout << "ImageSearch Fehler (id: " << GetLastError() << ")" << std::endl;[/c]

springt er an der stelle
Code:
[c] int image_type;
HBITMAP hbitmap_image = LoadPicture(aImageFile, width, height, image_type, icon_number, false);

if (!hbitmap_image)
return "0"; [/c]
raus und der fehlercode gibt mir 2 zurück was ja bedeuted datei nich gefunden, also gehe ich davon aus dass ich beim angeben des dateifpades irgendwas falsch mache...ich will später die bilder einfach aus nem einfachen res ordner lesen (der im selben ordner ist,in dem auch das programm ist ohne richtigen dateipfad)
der aufruf ist so wie im ichs in der bsp .cpp gefunden habe...(ohne error code)..., ich hab auch schon einfach "pic.bmp" versucht und die in den projektordner gepackt...selbes problem...hat hier jemand ne idee bzw erfahrung mit der imagesearchfunktion?`
02/24/2012 15:57 .SkyneT.#2
Warum C:\\ , nicht bei jedem ist die Hauptfestplatte mit C bezeichnet...
Und warum zwei \\ ...
02/24/2012 16:15 jacky919#3
Quote:
Originally Posted by .SkyneT. View Post
Und warum zwei \\ ...
Weil der Backslash in C/C++ und anderen Sprachen eine Escape-Sequenz einleitet.

@TE: Ein Code-Tag geht mit den BB-Codes [code]...[/code] und nicht [c]...[/c]
02/24/2012 19:20 a0ke#4
Quote:
Originally Posted by .SkyneT. View Post
Warum C:\\ , nicht bei jedem ist die Hauptfestplatte mit C bezeichnet...
Und warum zwei \\ ...

wie bereits erwähnt war das der beispiel aufruf aus der cpp aus der die imagesearch stammt, ich habe aber auch schon versucht einfach "bild.bmp" zu schreiben und die datei direkt in den ordner zu packen...glaube auch bereits erwähnt...also die fragen von dir waren jetzt nich so hilfreich :confused::confused::confused:

Quote:
Originally Posted by jacky919 View Post
@TE: Ein Code-Tag geht mit den BB-Codes [code]...[/code] und nicht [c]...[/c]
ich weiß hab den beitrag ausm anderen forum einfach kopiert und im nachhinein hier code rumgehaun ;) dort stand [c] dafür dass es c/c++ quellcode ist :)
02/24/2012 19:25 käsekuchen11elf#5
Hm, naja, du kannst nicht einfach kommen, uns 250 Zeilen copy&paste code um die Ohren hauen und erwarten, dass wir das für dich debuggen :)
Da musst du schon selber eine Mindestmenge an Arbeit investieren, entweder in den Code, oder in die Fehlersuche, bevor du auf Hilfe hoffen kannst.

viel Erfolg,
cheesecake
02/24/2012 19:34 a0ke#6
Quote:
Originally Posted by käsekuchen11elf View Post
Hm, naja, du kannst nicht einfach kommen, uns 250 Zeilen copy&paste code um die Ohren hauen und erwarten, dass wir das für dich debuggen :)
Da musst du schon selber eine Mindestmenge an Arbeit investieren, entweder in den Code, oder in die Fehlersuche, bevor du auf Hilfe hoffen kannst.

viel Erfolg,
cheesecake

dann hast du wohl mein beitrag nich richtig gelesen? wozu geb ich den extra die zeile vor in den 250 zeilen code wo der fehler auftritt?
wenn ich nich debugged hätte woher wüsst ich dann an welcher stelle er aus der funktion springt?
woher wüsste ich welchenfehlercode ich erhalte und was er bedeuted?
okay ich kann die frage ja nochmal "idioten"sicher formulieren...
wie verwende ich die pfadangabe für die "LoadPicture" funktion(siehe msdna)
damit er meine bilddatei auch findet bzw muss die datei sich an nem bestimmten ort befinden(ich verwennde übrigends visual c++ express 2010)...oder wolltest du mir sagen ich soll die loadpicture funktion aus der standartlib debuggen damit ich rausfinde wie sie den dateipfad auswerted?O.o -.-'

(ps der grund wozu ich den ganzen quellcode geposted habe ist, weil ich leuten die auch eine imagesearch für c++ suchen in dem thread gleich eine finden ;) ich hab da so meine probleme gehabt eine zu finden die funktioniert)
02/24/2012 19:49 käsekuchen11elf#7
Hm, das is ja spannend... ich find in der MSDNA gar nix zu LoadPicture. Hast du mal nen link parat?
02/24/2012 19:53 a0ke#8
[Only registered and activated users can see links. Click Here To Register...]

aber die hilft mir auch kein bischen weiter...
02/24/2012 19:56 käsekuchen11elf#9
Quote:
Originally Posted by a0ke View Post
[Only registered and activated users can see links. Click Here To Register...]

aber die hilft mir auch kein bischen weiter...
könnte daran liegen, dass es die VB Referenz ist ;)
02/24/2012 20:08 a0ke#10
hm das hilft schonmal wiesos mir nich weiter hilft ^^
gut dem quellcode zu entnehmen ist es die loadpicture funktion von gdi+
dann werd ich die jetzt mal durchgehen...das problem allgemein ist aber dass der fehler eher ein denkfehler als ein programmierfehler sein müsste...denn die funktion ist ja original die imagesearch die auch autohk und autoit benutzen nur dass ich den quellcode verwende und kein dll-call...
und die loadpicture funktion in gdi+ denke ich wird auch richtig implementiert sein dass sie ein dateipfadangabe wie "bild.bmp" verstehen sollte? :confused:
02/25/2012 00:35 SmackJew#11
Quote:
Originally Posted by a0ke View Post
wenn ich nich debugged hätte woher wüsst ich dann an welcher stelle er aus der funktion springt?
woher wüsste ich welchenfehlercode ich erhalte und was er bedeuted?
Das ist nicht Debuggen, das ist GetLastError() callen und den Fehlercode in einer Tabelle raussuchen.
02/25/2012 09:13 käsekuchen11elf#12
Kannst du mal bitte ein paar tests fahren, und uns sagen, welchen Wert die Variable "aImageFile" zum zeitpunkt des LoadPicture calls hat? (Bzw. wie der String hinter dem Pointer aussieht)
02/28/2012 17:17 a0ke#13
Quote:
Originally Posted by SmackJew View Post
Das ist nicht Debuggen, das ist GetLastError() callen und den Fehlercode in einer Tabelle raussuchen.

stimmt weil GetLastError() einem ja auch sagt an welche stelle mein programm aus einer funktion springt, mir sagt dass meine imagedatei keine daten enthällt, mir genau die if abfrage der funktion gibt an der mein fehler auftritt und von alleine breakpoints setzt damit ichs sehe....
jaja stimmt getlasterror ist kein debuggen das ist fehlerbehandlung im programm selber...aber hab ja zum glück auch mit keinem wort gesagt dass ich nur getlasterror gecalled habe und das als debuggen bezeichnet ;)
oh man ey lesen, denken, antworten....


ich hab das problem jetzt selber gelöst es war wie vermuted nur nen denkfehler/einstellungsfehler und hatte nix mit quellcode direkt zutun.
auch wenn einige leute hier lieber direkt loshaten und mit unterstellungen um sich werfen, anstatt mal zu lesen was jemand wircklich schreibt und 1&1 zusammen zu zählen, bedanke ich mich für die hilfe hier
02/28/2012 19:37 SmackJew#14
Quote:
Originally Posted by a0ke View Post
stimmt weil GetLastError() einem ja auch sagt an welche stelle mein programm aus einer funktion springt, mir sagt dass meine imagedatei keine daten enthällt, mir genau die if abfrage der funktion gibt an der mein fehler auftritt und von alleine breakpoints setzt damit ichs sehe....
jaja stimmt getlasterror ist kein debuggen das ist fehlerbehandlung im programm selber...aber hab ja zum glück auch mit keinem wort gesagt dass ich nur getlasterror gecalled habe und das als debuggen bezeichnet ;)
oh man ey lesen, denken, antworten....


ich hab das problem jetzt selber gelöst es war wie vermuted nur nen denkfehler/einstellungsfehler und hatte nix mit quellcode direkt zutun.
auch wenn einige leute hier lieber direkt loshaten und mit unterstellungen um sich werfen, anstatt mal zu lesen was jemand wircklich schreibt und 1&1 zusammen zu zählen, bedanke ich mich für die hilfe hier
Verzeih' mir dass ich anhand deines sichtlich fehlenden Wissens über simple Programmierbegriffe, deinem Unvermögen einfachste Tags zu benutzen und deines katastrophalen Programmierstils voreilige Schlüsse gezogen habe. Du bist ganz offensichtlich mehr als fähig einen Debugger zu benutzen und greifst wirklich nur bei harten Programmiernüssen auf Expertenforen wie epvp zurück. ;)
02/28/2012 20:39 käsekuchen11elf#15
Ich glaube, zu diesem Thema wird nichts hinreichend sinnvolles mehr beigetragen :)

/vote for #close