C++ Builder 6 mit Microsoft Platform SDK Feb 2003



  • Hi!

    Vermutlich eine absolute Anfängerfrage, aber wie kann ich das Microsoft SDK mit dem C Builder verwenden?
    Nachdem ich die Header/Lib Verzeichnisse an die erste Stelle in den Projekteigenschaften beschwert sich der Builder mächtig für Assembler-Inline-Ausdrücke (E2211) und die Hilfe meint lapidar ich solle diese doch bitte entfernen... Und halt noch eine Menge anderer Meldungen, die aber irgendwie wie Folgemeldungen der ersten aussehen (E2309 ist auch noch verwirrend, soll ich die Header Dateien jetzt vorcompilieren? das wäre die nächste nach der E2211).

    Leider hab ich im Web nirgends einen brauchbaren Hinweis für mein Problem gefunden, bin mir aber praktisch sicher das es machbar sein sollte, immerhin sind viele WinAPI Befehle mit reinem Builder 6 ohne SDK nicht verwendbar (zumindest nicht so ohne weiteres).
    Also wie tun?

    Hoffe auf baldige Antwort!

    mfg, Roland



  • Win API Funktionen sind auch ohne SDK verwendbar,
    ggf. sind .h Files oder dlls zu ergänzen.

    Was geht denn in deiner Anwendung mit dem BCB nicht?



  • Geo schrieb:

    Win API Funktionen sind auch ohne SDK verwendbar,
    ggf. sind .h Files oder dlls zu ergänzen.

    Naja, ist so nicht ganz richtig. Richtig ist, dass der BCB bereits ein Plattform SDK mitliefert. (o;

    -junix



  • Stimmt schon, die meisten Funktionen gehen auf Anhieb, nur ist das von Borland mitgelieferte SDK vermutlich so alt wie der BCB6, und tw. hat sich da halt schon was am Microsoft SDK verändert.

    Aufgefallen ist es mir bei den Shell Funktionen, zB. IsNetDrive http://msdn.microsoft.com/library/default.asp?url=/library/en-us/shellcc/platform/shell/reference/functions/isnetdrive.asp?frame=true geht nicht auf Anhieb mit dem BCB, und daher hab ich mir eben das SDK besorgt, nur halt eben ohne Erfolg.

    Gibts keinen Weg die 2 Welten zu verbinden? MS SDK und Borland BCB? Oder soll ich nur die benötigten Header ersetzen? Und nicht gleich alles in den Suchpfad für Include und Lib mit einbinden?

    mfg, Roland



  • Du kannst das aktuelle(re) SDK in einem eigenen Verzeichnis ablegen und dieses an erster Stelle in den Include-Pfad aufnehmen. Allerdings nimmt Borland wohl einige Anpassungen an den mit dem BCB ausgelieferten SDK-Headern vor, die du dann ggf. nachvollziehen musst. Und natürlich musst du dir ausserdem noch Borland-kompatible Libs erzeugen.



  • Das mit eigenem Verzeichnis hatte ich ja schon getestet, das geht so leider nicht weil ich eben wie schon erwähnt praktisch nur Fehlermeldungen beim compilieren erhalte.
    Wenn ich mir die Header Dateien so ansehe versteh ich nur Bahnhof. Also mit auf "Borland kompatibel" abändern ist mal nicht.
    Und mein Versuch mal nur die von mir benötigen Datei im Borland Include Verzeichnis zu ersetzen ist auch gescheitert (weitere mir nichtssagende Fehlermeldung), also wieder rückgängig gemacht.
    Gibts keinen einzigen Borland Fan der sich schonmal die Mühe gemacht hat das aktuelle SDK Borland gerecht aufzubereiten?
    Muss ja mehr geben die es verwenden wollen...

    mfg, Roland



  • Die Zeilen in der MSN

    Minimum DLL Version: shell32.dll version 5.0 or later
    Header: shlobj.h
    Minimum operating systems: Windows 2000

    hast du natürlich beachtet?



  • Daran liegts nicht, hab Windows XP als Unterbau, das Problem ist das in der shlobj.h von Borland diese Funktion einfach noch nicht enthalten ist. Kann von daher auch nicht einfach so verwendet werden.

    Ich versteh einfach nicht warum irgendwie keiner, damit mein ich nicht nur hier das Forum, sondern auch die weite Welt im Internet, wert darauf legt mit dem BCD auch das neue SDK verwenden zu können.

    Kann sonst mal wer ein Beispiel geben wie man mit LoadLibrary und Registerclass solche Funktionen verwenden kann (wie eben mein IsNetDrive)? Hab das zwar nach bestem Gewissen versucht, hab aber nur eine andere störende Fehlermeldung eingefangen. Der wollte mir nicht Glauben das IsNetDrive einen Parameter braucht....

    mfg, Roland


Anmelden zum Antworten