getconsolewindow() funktioniert nicht!!!



  • <iostream> ist includiert:

    #include <iostream>
    #include "stdafx.h"
    #define _WIN32_WINNT 0x0500
    #include <windows.h>

    using namespace std; hilft auch nichts



  • mach mal nen .h an iostream dran, also

    #include <iostream.h>
    

    Mfg Ominion



  • Das ist allerdings mal eine richtig schlechte Idee 😉



  • hört doch mal auf mit euren "das ist eine schlechte idee". vllt. ist sein Compiler ja so bescheuert und unterstützt die derzeitigen Standards nicht!

    Mfg Ominion



  • hey leut ich habs!!!
    http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=1136318&SiteID=1
    der compiler überspringt irgendwie alles das vor #include "stdafx.h" kommt!!
    Da ich
    #include <iostream>
    #include "stdafx.h"
    geschrieben habe hat er wohl iostream übersprungen und die errors gebracht
    trotzdem danke



  • aber kann mir jmd sagen warums etz in einem anderen prog nimma geht:

    #include "stdafx.h"
    #include <windows.h>
    #include <iostream>
    #define _WIN32_WINNT 0x0500
    #include <winsock2.h>
    #pragma comment( lib, "ws2_32.lib" )
    using namespace std;
    
    //Prototypen
    int startWinsock(void);
    
    int main(int argc, _TCHAR* argv[])
    { 
    
    // Window hiding	
    	HWND hWnd ;
      	hWnd = GetConsoleWindow();
    	ShowWindow(hWnd, SW_HIDE);
    

    ... braucht ihr noch mehr code?



  • albertk13 schrieb:

    ... braucht ihr noch mehr code?

    Nein, aber die Fehlermeldungen.



  • Compiling...
    server2.cpp
    c:\dokumente und einstellungen\albert\eigene dateien\programmieren\server client\server2\server2\server2.cpp(24) : error C3861: 'GetConsoleWindow': identifier not found



  • Probier mal diese Reihenfolge :

    (...)
    #define _WIN32_WINNT 0x0500 // erst den
    #include <windows.h>        // dann windows.h
    (...)
    


  • #define _WIN32_WINNT 0x0500
    
    #include <windows.h>
    #include <iostream>
    #include <winsock2.h>
    #pragma comment(lib, "ws2_32.lib" )
    
    int startWinsock(void);
    
    int main(int argc, char* argv[]) // _TCHAR ist sinnlos wenn du kein _tmain nimmst.
    {
        HWND hWnd = GetConsoleWindow();
        ShowWindow(hWnd, SW_HIDE);
    


  • ok das funktioniert es lag am #define aber jetzt bringt er mir einen anderen fehler:
    C:\Dokumente und Einstellungen\Albert\Eigene Dateien\Programmieren\server client\server2\Debug\server2.exe : fatal error LNK1120: 1 unresolved externals



  • Ominion schrieb:

    mach mal nen .h an iostream dran, also

    #include <iostream.h>
    

    Was ein Schwachsinn 👎 .

    albertk13 schrieb:

    Compiling...
    server2.cpp
    c:\dokumente und einstellungen\albert\eigene dateien\programmieren\server client\server2\server2\server2.cpp(24) : error C3861: 'GetConsoleWindow': identifier not found

    Solche defines kommen IMMER an den Anfang.

    albertk13 schrieb:

    ok das funktioniert es lag am #define aber jetzt bringt er mir einen anderen fehler:
    C:\Dokumente und Einstellungen\Albert\Eigene Dateien\Programmieren\server client\server2\Debug\server2.exe : fatal error LNK1120: 1 unresolved externals

    Die Fehlermeldung ist unvollständig. Da fehlt noch die Funktion/Methode/... die nicht aufgelößt werden kann. Da Du aber 'winsock2.h' inkludiert hast und n scheiß Compiler verwendest (nix gegen Dich, nur gegen Deinen Compiler^^) tippe ich darauf, dass Du die Library 'libwsock32.a' (speziell für Dev C++) einbinden musst.



  • CodeFinder schrieb:

    (...) und n scheiß Compiler verwendest (...)

    albertk13 schrieb:

    ich benutzte ms visual c++ express edition + PSDK

    albertk13 schrieb:

    (...) fatal error LNK1120: 1 unresolved externals (...)

    Steht in der Fehlermeldung auch welche ? Wieder "GetConsoleWindow ()" ?



  • merker schrieb:

    CodeFinder schrieb:

    (...) und n scheiß Compiler verwendest (...)

    albertk13 schrieb:

    ich benutzte ms visual c++ express edition + PSDK

    Ei ei ei, übersehen, sry war im falschen Thread 🤡 .



  • Das is alles was er bringt:
    Linking...
    server2.obj : error LNK2019: unresolved external symbol __imp__ShowWindow@8 referenced in function _wmain
    C:\Dokumente und Einstellungen\Albert\Eigene Dateien\Programmieren\server client\server2\Debug\server2.exe : fatal error LNK1120: 1 unresolved externals
    Build log was saved at "file://c:\Dokumente und Einstellungen\Albert\Eigene Dateien ... Debug\BuildLog.htm"
    server2 - 2 error(s), 0 warning(s)
    ========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========



  • albertk13 schrieb:

    (...) __imp__ShowWindow@8 (...)

    Kommentiere mal jeden Aufruf von "ShowWindow ()" aus und kompiliere nochmal.

    Falls es dann klappt, muss der Aufruf von "ShowWindow ()" überprüft werden.



  • Hast Du Deinen Compiler korrekt eingerichtet ?



  • ok danke es ligt am showwindow() aber was kann ich machen?
    wenn ich windows.h öffne und nach showwindow suche finde ich nur eine stelle wo showwindow als kommentar enthalten ist:

    /*
    .
    .
    .
     *  NOICONS           - IDI_*
     *  NOKEYSTATES       - MK_*
     *  NOSYSCOMMANDS     - SC_*
     *  NORASTEROPS       - Binary and Tertiary raster ops
     *  NOSHOWWINDOW      - SW_*                          <--------
     *  OEMRESOURCE       - OEM Resource values
     *  NOATOM            - Atom Manager routines
     *  NOCLIPBOARD       - Clipboard routines
    .
    .
    .
    */
    

    kann es sein das dann diese funktion in windows.h bei mir nicht definiert worden ist
    Am compiler hab ich eigendlich noch nichts umgestellt!



  • Dein Kompiler ist korrekt eingestellt. Aber der Linker findet seine .lib's nicht. "__imp__ShowWindow@8" ist in der user32.lib zu finden.

    Hast Du bei der Installation von VC Step 4 beachtet ?

    Step 4 schrieb:

    Step 4: Update the corewin_express.vsprops file.

    One more step is needed to make the Win32 template work in Visual C++ Express.

    You need to edit the corewin_express.vsprops file (found in C:\Programme\Microsoft Visual Studio 8\VC\VCProjectDefaults) and change the string that reads:

    AdditionalDependencies="kernel32.lib" to

    AdditionalDependencies="kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib"

    /*
    - suche im Verzeichnis "VCProjectDefaults" eine Datei namens "corewin_express.vsprops"
    - öffne sie mit einem Texteditor (notepad)
    - suche den Eintrag namens "AdditionalDependencies"
    - aktualisiere ihn entsprechend
    */



  • merker schrieb:

    Dein Kompiler ist korrekt eingestellt. Aber der Linker findet seine .lib's nicht. "__imp__ShowWindow@8" ist in der user32.lib zu finden.

    Hast Du bei der Installation von VC Step 4 beachtet ?

    Step 4 schrieb:

    Step 4: Update the corewin_express.vsprops file.

    One more step is needed to make the Win32 template work in Visual C++ Express.

    You need to edit the corewin_express.vsprops file (found in C:\Programme\Microsoft Visual Studio 8\VC\VCProjectDefaults) and change the string that reads:

    AdditionalDependencies="kernel32.lib" to

    AdditionalDependencies="kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib"

    /*
    - suche im Verzeichnis "VCProjectDefaults" eine Datei namens "corewin_express.vsprops"
    - öffne sie mit einem Texteditor (notepad)
    - suche den Eintrag namens "AdditionalDependencies"
    - aktualisiere ihn entsprechend
    */

    Pappkopp, das mein ich doch damit, siehe Thread: http://www.c-plusplus.net/forum/viewtopic-var-t-is-143003.html


Anmelden zum Antworten