<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[c++ compiler probleme]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich versuche einen alten sourcecode- der mit borland geschrieben wurde wieder zu aktivieren (Ms visual 10). Leider bekomme ich es überhaupt nicht hin- Ich schätze, dass es Linker problem sind. Könnte ihr mir helfen?</p>
<p>Hier der Code</p>
<pre><code>// -------------------------------------------------------------------------- //
//
// -------------------------------------------------------------------------- //
#include &lt;Windows.h&gt;
#include &lt;StdIo.h&gt;
#include &quot;Feal.h&quot;
#include &quot;KNuth.h&quot;
#include &quot;wk.h&quot;

#pragma argsused

// -------------------------------------------------------------------------- //
void ShowData( LPSTR cTitle, BYTE * Table, DWORD Count )
{
    DWORD Index;
    printf( cTitle );
    for( Index = 0; Index &lt; Count; Index++ )
    {
        printf( &quot;%02X&quot;, Table[ Index ] );
    }
    printf( &quot;\n&quot; );
}

// -------------------------------------------------------------------------- //
void TKNuth20_GetTable( PKNuth20 pKN, BYTE * Plain, BYTE * Cipher )
{
    DWORD Index;
    DWORD Index01;

    for( Index = 0; Index &lt; 20; Index++ )
    {
        pKN-&gt;Data[ 19 - Index ] = Cipher[ Index ] ^ Plain[ Index ];
    }

    Index01 = 3;
    for( Index = 0; Index &lt; 20; Index++ )
    {
        pKN-&gt;Data[ Index ] -= pKN-&gt;Data[ Index01 ];
        Index01++;
        if( Index01 &gt; 19 )
            Index01 = 0;
    }
}

// -------------------------------------------------------------------------- //
void TKNuth21_GetTable( PKNuth21 pKN, BYTE * Plain, BYTE * Cipher )
{
    DWORD Index;
    DWORD Index01;

    for( Index = 0; Index &lt; 21; Index++ )
    {
        pKN-&gt;Data[ 20 - Index ] = Cipher[ Index ] ^ Plain[ Index ];
    }

    Index01 = 2;
    for( Index = 0; Index &lt; 21; Index++ )
    {
        pKN-&gt;Data[ Index ] -= pKN-&gt;Data[ Index01 ];
        Index01++;
        if( Index01 &gt; 20 )
            Index01 = 0;
    }

    /*
    pKN-&gt;Data[ 20 ] = Cipher[  0 ] ^ Plain[  0 ];
    pKN-&gt;Data[ 19 ] = Cipher[  1 ] ^ Plain[  1 ];
    pKN-&gt;Data[ 18 ] = Cipher[  2 ] ^ Plain[  2 ];
    pKN-&gt;Data[ 17 ] = Cipher[  3 ] ^ Plain[  3 ];
    pKN-&gt;Data[ 16 ] = Cipher[  4 ] ^ Plain[  4 ];
    pKN-&gt;Data[ 15 ] = Cipher[  5 ] ^ Plain[  5 ];
    pKN-&gt;Data[ 14 ] = Cipher[  6 ] ^ Plain[  6 ];
    pKN-&gt;Data[ 13 ] = Cipher[  7 ] ^ Plain[  7 ];
    pKN-&gt;Data[ 12 ] = Cipher[  8 ] ^ Plain[  8 ];

    pKN-&gt;Data[ 12 ] -= pKN-&gt;Data[ 14 ];
    pKN-&gt;Data[ 13 ] -= pKN-&gt;Data[ 15 ];
    pKN-&gt;Data[ 14 ] -= pKN-&gt;Data[ 16 ];
    pKN-&gt;Data[ 15 ] -= pKN-&gt;Data[ 17 ];
    pKN-&gt;Data[ 16 ] -= pKN-&gt;Data[ 18 ];
    pKN-&gt;Data[ 17 ] -= pKN-&gt;Data[ 19 ];
    pKN-&gt;Data[ 18 ] -= pKN-&gt;Data[ 20 ];

    pKN-&gt;Data[  1 ] = pKN-&gt;Data[ 13 ] - 0xB3;
    pKN-&gt;Data[  5 ] = pKN-&gt;Data[  1 ];

    pKN-&gt;Data[ 20 ] -= pKN-&gt;Data[ 1 ];

    pKN-&gt;Data[  0 ] = pKN-&gt;Data[ 12 ] - 0xB3;
    pKN-&gt;Data[  4 ] = pKN-&gt;Data[  0 ];

    pKN-&gt;Data[ 19 ] -= pKN-&gt;Data[ 0 ];

    pKN-&gt;Data[  2 ] = pKN-&gt;Data[ 14 ] - 0xB3;
    pKN-&gt;Data[  6 ] = pKN-&gt;Data[  2 ];
    pKN-&gt;Data[  3 ] = pKN-&gt;Data[ 15 ] - 0xB3;
    pKN-&gt;Data[  7 ] = pKN-&gt;Data[  3 ];
    pKN-&gt;Data[  8 ] = pKN-&gt;Data[ 16 ] - 0xB3;
    pKN-&gt;Data[  9 ] = pKN-&gt;Data[ 17 ] - 0xB3;
    pKN-&gt;Data[ 10 ] = pKN-&gt;Data[ 18 ] - 0xB3;
    pKN-&gt;Data[ 11 ] = pKN-&gt;Data[ 19 ] - 0xB3;
    */

}

// -------------------------------------------------------------------------- //
BOOL FindKeys( DWORD dwCipher, BYTE * Plain, BYTE * Cipher, BYTE * InitData, DWORD * KeyOut )
{
    KSchedule   KS;
    TKNuth21    KN21;
    TKNuth20    KN20;
    TKNuth20    New20 = { 0 };
    TKNuth21    New21 = { 0 };
    BYTE        TmpCipher[ 20 ];
    BOOL        Decremented = FALSE;
    BOOL        bRet;

    if( dwCipher == WKB_SEL_DIRECT )
    {
        TKNuth21_GetTable( &amp;KN21, Plain, Cipher );
        memcpy( KeyOut, KN21.Data + 4, 4 );
        memcpy( ( ( BYTE * ) KeyOut ) + 4, KN21.Data + 8, 4 );
        printf( &quot;þ Trying %08X %08X: &quot;, KeyOut[ 0 ], KeyOut[ 1 ] );

        // Check if its 100% valid
        TKNuth21_Init( &amp;New21, KeyOut[ 0 ], KeyOut[ 1 ] );
        TKNuth21_Enc( &amp;New21, Plain, TmpCipher, 20 );
        if( !memcmp( TmpCipher, Cipher, 20 ) )
        {
            printf( &quot; OK\n&quot; );
        }
        else
        {
            printf( &quot; BAD\n&quot; );
        }
    }
    else if( dwCipher == WKB_SEL_KNUTH20 )
    {
        TKNuth20_GetTable( &amp;KN20, Plain, Cipher );
        do {
            TKNuth21_GetTable( &amp;KN21, InitData, KN20.Data );
            memcpy( KeyOut, KN21.Data + 4, 4 );
            memcpy( ( ( BYTE * ) KeyOut ) + 4, KN21.Data + 8, 4 );
            printf( &quot;þ Trying %08X %08X: &quot;, KeyOut[ 0 ], KeyOut[ 1 ] );

            // Check if its 100% valid
            TKNuth21_Init( &amp;New21, KeyOut[ 0 ], KeyOut[ 1 ] );
            TKNuth21_Enc( &amp;New21, InitData, New20.Data, 20 );
            if( !( New20.Data[ 2 ] &amp; 0x01 ) )
            {
                New20.Data[ 2 ]++;
            }
            TKNuth20_Enc( &amp;New20, Plain, TmpCipher, 20 );

            if( !memcmp( TmpCipher, Cipher, 20 ) )
            {
                printf( &quot; OK\n&quot; );
                bRet = TRUE;
                break;
            }

            if( Decremented )
            {
                bRet = FALSE;
                break;
            }

            KN20.Data[ 2 ]--;
            printf( &quot; BAD\n&quot; );
            Decremented = TRUE;
        } while( TRUE );
    }
    return bRet;
}

// -------------------------------------------------------------------------- //
void main( void )
{
    DWORD       Key[]           = { 0, 0 };
    BYTE        knPlain[ 50 ]   = { 0 };
    BYTE        knCipher[ 50 ]  = { 0 };
    KSchedule   KS;
    TKNuth21    KN21;

    knPlain[  0 ]  = 0x00;
    knPlain[  1 ]  = 0x00;
    knPlain[  2 ]  = 0x00;
    knPlain[  3 ]  = 0x00;
    knPlain[  4 ]  = 0x00;
    knPlain[  5 ]  = 0x00;
    knPlain[  6 ]  = 0x00;
    knPlain[  7 ]  = 0x00;
    knPlain[  8 ]  = 0x00;
    knPlain[  9 ]  = 0x00;
    knPlain[ 10 ]  = 0x00;
    knPlain[ 11 ]  = 0x00;
    knPlain[ 12 ]  = 0x00;
    knPlain[ 13 ]  = 0x00;
    knPlain[ 14 ]  = 0x00;
    knPlain[ 15 ]  = 0x00;
    knPlain[ 16 ]  = 0x00;
    knPlain[ 17 ]  = 0x00;
    knPlain[ 18 ]  = 0x00;
    knPlain[ 19 ]  = 0x00;
    knPlain[ 20 ]  = 0x00;
    knPlain[ 21 ]  = 0x00;
    knPlain[ 22 ]  = 0x00;
    knPlain[ 23 ]  = 0x00;
    knPlain[ 24 ]  = 0x00;
    knPlain[ 25 ]  = 0x00;
    knPlain[ 26 ]  = 0x00;
    knPlain[ 27 ]  = 0x00;
    knPlain[ 28 ]  = 0x00;
    knPlain[ 29 ]  = 0x00;
    knPlain[ 30 ]  = 0x00;
    knPlain[ 31 ]  = 0x00;
    knPlain[ 32 ]  = 0x00;
    knPlain[ 33 ]  = 0x00;
    knPlain[ 34 ]  = 0x00;
    knPlain[ 35 ]  = 0x00;
    knPlain[ 36 ]  = 0x00;
    knPlain[ 37 ]  = 0x00;
    knPlain[ 38 ]  = 0x00;
    knPlain[ 39 ]  = 0x00;
    knPlain[ 40 ]  = 0x00;
    knPlain[ 41 ]  = 0x00;
    knPlain[ 42 ]  = 0x00;
    knPlain[ 43 ]  = 0x00;
    knPlain[ 44 ]  = 0x00;
    knPlain[ 45 ]  = 0x00;
    knPlain[ 46 ]  = 0x00;
    knPlain[ 47 ]  = 0x00;
    knPlain[ 48 ]  = 0x00;
    knPlain[ 49 ]  = 0x00;

    knCipher[  0 ] = 0x2B;
    knCipher[  1 ] = 0x0E;
    knCipher[  2 ] = 0x1E;
    knCipher[  3 ] = 0x7E;
    knCipher[  4 ] = 0xAD;
    knCipher[  5 ] = 0x59;
    knCipher[  6 ] = 0x0A;
    knCipher[  7 ] = 0xF7;
    knCipher[  8 ] = 0x33;
    knCipher[  9 ] = 0xDC;
    knCipher[ 10 ] = 0x73;
    knCipher[ 11 ] = 0x99;
    knCipher[ 12 ] = 0x4F;
    knCipher[ 13 ] = 0xC1;
    knCipher[ 14 ] = 0xF9;
    knCipher[ 15 ] = 0xAC;
    knCipher[ 16 ] = 0x6F;
    knCipher[ 17 ] = 0xD4;
    knCipher[ 18 ] = 0x19;
    knCipher[ 19 ] = 0xBF;
    knCipher[ 20 ] = 0x8F;
    knCipher[ 21 ] = 0x00;
    knCipher[ 22 ] = 0x00;
    knCipher[ 23 ] = 0x00;
    knCipher[ 24 ] = 0x00;
    knCipher[ 25 ] = 0x00;
    knCipher[ 26 ] = 0x00;
    knCipher[ 27 ] = 0x00;
    knCipher[ 28 ] = 0x00;
    knCipher[ 29 ] = 0x00;
    knCipher[ 30 ] = 0x00;
    knCipher[ 31 ] = 0x00;
    knCipher[ 32 ] = 0x00;
    knCipher[ 33 ] = 0x00;
    knCipher[ 34 ] = 0x00;
    knCipher[ 35 ] = 0x00;
    knCipher[ 36 ] = 0x00;
    knCipher[ 37 ] = 0x00;
    knCipher[ 38 ] = 0x00;
    knCipher[ 39 ] = 0x00;
    knCipher[ 40 ] = 0x00;
    knCipher[ 41 ] = 0x00;
    knCipher[ 42 ] = 0x00;
    knCipher[ 43 ] = 0x00;
    knCipher[ 44 ] = 0x00;
    knCipher[ 45 ] = 0x00;
    knCipher[ 46 ] = 0x00;
    knCipher[ 47 ] = 0x00;
    knCipher[ 48 ] = 0x00;
    knCipher[ 49 ] = 0x00;

    ShowData( &quot;knPlain       : &quot;, knPlain, 21 );
    ShowData( &quot;knCipher (Pre): &quot;, knCipher, 21 );
    TKNuth21_GetTable( &amp;KN21, knPlain, knCipher );
    ShowData( &quot;KNuth21_Table : &quot;, KN21.Data, sizeof( KN21.Data ) );

    ShowData( &quot;knPlain       : &quot;, knPlain, 21 );
    ShowData( &quot;knCipher      : &quot;, knCipher, 21 );
    FindKeys( WKB_SEL_DIRECT, knPlain, knCipher, NULL, ( DWORD * ) Key );
    ShowData( &quot;Keys          : &quot;, ( BYTE * ) Key, 8 );

    //KS.Rounds = 8;
    //Feal_SetKey( &amp;KS, Key );

    //Feal_Encrypt( &amp;KS, Plain );
    //ShowData( &quot;Cipher        : &quot;, ( BYTE * ) Plain, 8 );

    TKNuth21_Init( &amp;KN21, Key[ 0 ], Key[ 1 ] );
    ShowData( &quot;KNuth21_Table : &quot;, KN21.Data, sizeof( KN21.Data ) );

    ShowData( &quot;knPlain       : &quot;, knPlain, 21 );
    ShowData( &quot;knCipher (Pre): &quot;, knCipher, 21 );
    TKNuth21_Enc( &amp;KN21, knPlain, knCipher, 21 );
    ShowData( &quot;knCipher      : &quot;, knCipher, 21 );

    printf( &quot;----------------------------------------------------------------------------\n&quot; );

    knPlain[  0 ]  = 0x00;
    knPlain[  1 ]  = 0x00;
    knPlain[  2 ]  = 0x00;
    knPlain[  3 ]  = 0x00;
    knPlain[  4 ]  = 0x00;
    knPlain[  5 ]  = 0x00;
    knPlain[  6 ]  = 0x00;
    knPlain[  7 ]  = 0x00;
    knPlain[  8 ]  = 0x00;
    knPlain[  9 ]  = 0x00;
    knPlain[ 10 ]  = 0x00;
    knPlain[ 11 ]  = 0x00;
    knPlain[ 12 ]  = 0x00;
    knPlain[ 13 ]  = 0x00;
    knPlain[ 14 ]  = 0x00;
    knPlain[ 15 ]  = 0x00;
    knPlain[ 16 ]  = 0x00;
    knPlain[ 17 ]  = 0x00;
    knPlain[ 18 ]  = 0x00;
    knPlain[ 19 ]  = 0x00;
    knPlain[ 20 ]  = 0x00;
    knPlain[ 21 ]  = 0x00;
    knPlain[ 22 ]  = 0x00;
    knPlain[ 23 ]  = 0x00;
    knPlain[ 24 ]  = 0x00;
    knPlain[ 25 ]  = 0x00;
    knPlain[ 26 ]  = 0x00;
    knPlain[ 27 ]  = 0x00;
    knPlain[ 28 ]  = 0x00;
    knPlain[ 29 ]  = 0x00;
    knPlain[ 30 ]  = 0x00;
    knPlain[ 31 ]  = 0x00;
    knPlain[ 32 ]  = 0x00;
    knPlain[ 33 ]  = 0x00;
    knPlain[ 34 ]  = 0x00;
    knPlain[ 35 ]  = 0x00;
    knPlain[ 36 ]  = 0x00;
    knPlain[ 37 ]  = 0x00;
    knPlain[ 38 ]  = 0x00;
    knPlain[ 39 ]  = 0x00;
    knPlain[ 40 ]  = 0x00;
    knPlain[ 41 ]  = 0x00;
    knPlain[ 42 ]  = 0x00;
    knPlain[ 43 ]  = 0x00;
    knPlain[ 44 ]  = 0x00;
    knPlain[ 45 ]  = 0x00;
    knPlain[ 46 ]  = 0x00;
    knPlain[ 47 ]  = 0x00;
    knPlain[ 48 ]  = 0x00;
    knPlain[ 49 ]  = 0x00;

    knCipher[  0 ] = 0x5D;
    knCipher[  1 ] = 0xBE;
    knCipher[  2 ] = 0x29;
    knCipher[  3 ] = 0xD8;
    knCipher[  4 ] = 0x49;
    knCipher[  5 ] = 0xC8;
    knCipher[  6 ] = 0xCB;
    knCipher[  7 ] = 0x7F;
    knCipher[  8 ] = 0x99;
    knCipher[  9 ] = 0x6F;
    knCipher[ 10 ] = 0xB2;
    knCipher[ 11 ] = 0xD6;
    knCipher[ 12 ] = 0x1F;
    knCipher[ 13 ] = 0x13;
    knCipher[ 14 ] = 0xEE;
    knCipher[ 15 ] = 0x17;
    knCipher[ 16 ] = 0x09;
    knCipher[ 17 ] = 0x54;
    knCipher[ 18 ] = 0xD8;
    knCipher[ 19 ] = 0x58;
    knCipher[ 20 ] = 0xF3;
    knCipher[ 21 ] = 0x00;
    knCipher[ 22 ] = 0x00;
    knCipher[ 23 ] = 0x00;
    knCipher[ 24 ] = 0x00;
    knCipher[ 25 ] = 0x00;
    knCipher[ 26 ] = 0x00;
    knCipher[ 27 ] = 0x00;
    knCipher[ 28 ] = 0x00;
    knCipher[ 29 ] = 0x00;
    knCipher[ 30 ] = 0x00;
    knCipher[ 31 ] = 0x00;
    knCipher[ 32 ] = 0x00;
    knCipher[ 33 ] = 0x00;
    knCipher[ 34 ] = 0x00;
    knCipher[ 35 ] = 0x00;
    knCipher[ 36 ] = 0x00;
    knCipher[ 37 ] = 0x00;
    knCipher[ 38 ] = 0x00;
    knCipher[ 39 ] = 0x00;
    knCipher[ 40 ] = 0x00;
    knCipher[ 41 ] = 0x00;
    knCipher[ 42 ] = 0x00;
    knCipher[ 43 ] = 0x00;
    knCipher[ 44 ] = 0x00;
    knCipher[ 45 ] = 0x00;
    knCipher[ 46 ] = 0x00;
    knCipher[ 47 ] = 0x00;
    knCipher[ 48 ] = 0x00;
    knCipher[ 49 ] = 0x00;

    ShowData( &quot;knPlain       : &quot;, knPlain, 25 );
    ShowData( &quot;knCipher (Pre): &quot;, knCipher, 25 );
    TKNuth21_GetTable( &amp;KN21, knPlain, knCipher );
    ShowData( &quot;KNuth21_Table : &quot;, KN21.Data, sizeof( KN21.Data ) );

    ShowData( &quot;knPlain       : &quot;, knPlain, 25 );
    ShowData( &quot;knCipher      : &quot;, knCipher, 25 );
    FindKeys( WKB_SEL_DIRECT, knPlain, knCipher, NULL, ( DWORD * ) Key );
    ShowData( &quot;Keys          : &quot;, ( BYTE * ) Key, 8 );

    //KS.Rounds = 8;
    //Feal_SetKey( &amp;KS, Key );

    //Feal_Encrypt( &amp;KS, Plain );
    //ShowData( &quot;Cipher        : &quot;, ( BYTE * ) Plain, 8 );

    TKNuth21_Init( &amp;KN21, Key[ 0 ], Key[ 1 ] );
    ShowData( &quot;KNuth21_Table : &quot;, KN21.Data, sizeof( KN21.Data ) );

    ShowData( &quot;knPlain       : &quot;, knPlain, 21 );
    ShowData( &quot;knCipher (Pre): &quot;, knCipher, 21 );
    TKNuth21_Enc( &amp;KN21, knPlain, knCipher, 21 );
    ShowData( &quot;knCipher      : &quot;, knCipher, 21 );

}

// -------------------------------------------------------------------------- //
</code></pre>
<p>hier noch der Header Knuth:</p>
<pre><code>// -------------------------------------------------------------------------- //
//
// -------------------------------------------------------------------------- //
#include &lt;Windows.h&gt;

// -------------------------------------------------------------------------- //
typedef struct {
    DWORD dwSize;       // 04
    DWORD dwIndex01;    // 08
    DWORD dwIndex00;    // 0C
    BYTE  Data[ 50 ];
} TKNuth, * PKNuth;

typedef struct {
    BYTE  Data[ 20 ];
} TKNuth20, * PKNuth20;

typedef struct {
    BYTE  Data[ 21 ];
} TKNuth21, * PKNuth21;

typedef struct {
    BYTE  Data[ 47 ];
} TKNuth47, * PKNuth47;

// -------------------------------------------------------------------------- //
void TKNuth_Init( PKNuth pKN, DWORD dwSize );
void TKNuth_Enc( PKNuth pKN, BYTE * Buffer, DWORD dwCount );
void TKNuth20_Init( PKNuth pKN, DWORD KeyL, DWORD KeyR );
void TKNuth20_Enc( PKNuth20 pKN, BYTE * Plain, BYTE * Cipher, DWORD dwCount );
void TKNuth21_Init( PKNuth21 pKN, DWORD KeyL, DWORD KeyR );
void TKNuth21_Enc( PKNuth21 pKN, BYTE * Plain, BYTE * Cipher, DWORD dwCount );
void TKNuth47_Enc( PKNuth47 pKN, BYTE * Plain, BYTE * Cipher, DWORD dwCount );

// -------------------------------------------------------------------------- //
</code></pre>
<p>anbei der Fehlercode:</p>
<pre><code>1&gt;------ Erstellen gestartet: Projekt: GK_feal, Konfiguration: Release Win32 ------
1&gt;Der Buildvorgang wurde am 20.12.2011 14:38:36 gestartet.
1&gt;InitializeBuildStatus:
1&gt;  Aktualisieren des Timestamps von &quot;Release\GK_feal.unsuccessfulbuild&quot;.
1&gt;ClCompile:
1&gt;  Alle Ausgaben sind aktuell.
1&gt;ResourceCompile:
1&gt;  Alle Ausgaben sind aktuell.
1&gt;wkwin32.lib : warning LNK4003: Ungültiges Bibliotheksformat; Bibliothek wird ignoriert.
1&gt;wkwin32.lib : warning LNK4003: Ungültiges Bibliotheksformat; Bibliothek wird ignoriert.
1&gt;GK_FEAL.obj : error LNK2001: Nicht aufgelöstes externes Symbol &quot;_TKNuth21_Enc&quot;.
1&gt;GK_FEAL.obj : error LNK2001: Nicht aufgelöstes externes Symbol &quot;_TKNuth21_Init&quot;.
1&gt;GK_FEAL.obj : error LNK2001: Nicht aufgelöstes externes Symbol &quot;_TKNuth20_Enc&quot;.
1&gt;c:\users\home\documents\visual studio 2010\Projects\GK_feal\Release\GK_feal.exe : fatal error LNK1120: 3 nicht aufgelöste externe Verweise.
</code></pre>
<p>anbei alles als rar datei<br />
<a href="http://www.megaupload.com/?d=IPDI6ZE8" rel="nofollow">http://www.megaupload.com/?d=IPDI6ZE8</a></p>
<p>ich hoffe ihr könnt mir helfen-bin schon gespannt</p>
<p>Viele Gruße</p>
<p>lopogus</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/297165/c-compiler-probleme</link><generator>RSS for Node</generator><lastBuildDate>Wed, 12 Aug 2026 17:21:39 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/297165.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 20 Dec 2011 13:46:33 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to c++ compiler probleme on Tue, 20 Dec 2011 13:46:33 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich versuche einen alten sourcecode- der mit borland geschrieben wurde wieder zu aktivieren (Ms visual 10). Leider bekomme ich es überhaupt nicht hin- Ich schätze, dass es Linker problem sind. Könnte ihr mir helfen?</p>
<p>Hier der Code</p>
<pre><code>// -------------------------------------------------------------------------- //
//
// -------------------------------------------------------------------------- //
#include &lt;Windows.h&gt;
#include &lt;StdIo.h&gt;
#include &quot;Feal.h&quot;
#include &quot;KNuth.h&quot;
#include &quot;wk.h&quot;

#pragma argsused

// -------------------------------------------------------------------------- //
void ShowData( LPSTR cTitle, BYTE * Table, DWORD Count )
{
    DWORD Index;
    printf( cTitle );
    for( Index = 0; Index &lt; Count; Index++ )
    {
        printf( &quot;%02X&quot;, Table[ Index ] );
    }
    printf( &quot;\n&quot; );
}

// -------------------------------------------------------------------------- //
void TKNuth20_GetTable( PKNuth20 pKN, BYTE * Plain, BYTE * Cipher )
{
    DWORD Index;
    DWORD Index01;

    for( Index = 0; Index &lt; 20; Index++ )
    {
        pKN-&gt;Data[ 19 - Index ] = Cipher[ Index ] ^ Plain[ Index ];
    }

    Index01 = 3;
    for( Index = 0; Index &lt; 20; Index++ )
    {
        pKN-&gt;Data[ Index ] -= pKN-&gt;Data[ Index01 ];
        Index01++;
        if( Index01 &gt; 19 )
            Index01 = 0;
    }
}

// -------------------------------------------------------------------------- //
void TKNuth21_GetTable( PKNuth21 pKN, BYTE * Plain, BYTE * Cipher )
{
    DWORD Index;
    DWORD Index01;

    for( Index = 0; Index &lt; 21; Index++ )
    {
        pKN-&gt;Data[ 20 - Index ] = Cipher[ Index ] ^ Plain[ Index ];
    }

    Index01 = 2;
    for( Index = 0; Index &lt; 21; Index++ )
    {
        pKN-&gt;Data[ Index ] -= pKN-&gt;Data[ Index01 ];
        Index01++;
        if( Index01 &gt; 20 )
            Index01 = 0;
    }

    /*
    pKN-&gt;Data[ 20 ] = Cipher[  0 ] ^ Plain[  0 ];
    pKN-&gt;Data[ 19 ] = Cipher[  1 ] ^ Plain[  1 ];
    pKN-&gt;Data[ 18 ] = Cipher[  2 ] ^ Plain[  2 ];
    pKN-&gt;Data[ 17 ] = Cipher[  3 ] ^ Plain[  3 ];
    pKN-&gt;Data[ 16 ] = Cipher[  4 ] ^ Plain[  4 ];
    pKN-&gt;Data[ 15 ] = Cipher[  5 ] ^ Plain[  5 ];
    pKN-&gt;Data[ 14 ] = Cipher[  6 ] ^ Plain[  6 ];
    pKN-&gt;Data[ 13 ] = Cipher[  7 ] ^ Plain[  7 ];
    pKN-&gt;Data[ 12 ] = Cipher[  8 ] ^ Plain[  8 ];

    pKN-&gt;Data[ 12 ] -= pKN-&gt;Data[ 14 ];
    pKN-&gt;Data[ 13 ] -= pKN-&gt;Data[ 15 ];
    pKN-&gt;Data[ 14 ] -= pKN-&gt;Data[ 16 ];
    pKN-&gt;Data[ 15 ] -= pKN-&gt;Data[ 17 ];
    pKN-&gt;Data[ 16 ] -= pKN-&gt;Data[ 18 ];
    pKN-&gt;Data[ 17 ] -= pKN-&gt;Data[ 19 ];
    pKN-&gt;Data[ 18 ] -= pKN-&gt;Data[ 20 ];

    pKN-&gt;Data[  1 ] = pKN-&gt;Data[ 13 ] - 0xB3;
    pKN-&gt;Data[  5 ] = pKN-&gt;Data[  1 ];

    pKN-&gt;Data[ 20 ] -= pKN-&gt;Data[ 1 ];

    pKN-&gt;Data[  0 ] = pKN-&gt;Data[ 12 ] - 0xB3;
    pKN-&gt;Data[  4 ] = pKN-&gt;Data[  0 ];

    pKN-&gt;Data[ 19 ] -= pKN-&gt;Data[ 0 ];

    pKN-&gt;Data[  2 ] = pKN-&gt;Data[ 14 ] - 0xB3;
    pKN-&gt;Data[  6 ] = pKN-&gt;Data[  2 ];
    pKN-&gt;Data[  3 ] = pKN-&gt;Data[ 15 ] - 0xB3;
    pKN-&gt;Data[  7 ] = pKN-&gt;Data[  3 ];
    pKN-&gt;Data[  8 ] = pKN-&gt;Data[ 16 ] - 0xB3;
    pKN-&gt;Data[  9 ] = pKN-&gt;Data[ 17 ] - 0xB3;
    pKN-&gt;Data[ 10 ] = pKN-&gt;Data[ 18 ] - 0xB3;
    pKN-&gt;Data[ 11 ] = pKN-&gt;Data[ 19 ] - 0xB3;
    */

}

// -------------------------------------------------------------------------- //
BOOL FindKeys( DWORD dwCipher, BYTE * Plain, BYTE * Cipher, BYTE * InitData, DWORD * KeyOut )
{
    KSchedule   KS;
    TKNuth21    KN21;
    TKNuth20    KN20;
    TKNuth20    New20 = { 0 };
    TKNuth21    New21 = { 0 };
    BYTE        TmpCipher[ 20 ];
    BOOL        Decremented = FALSE;
    BOOL        bRet;

    if( dwCipher == WKB_SEL_DIRECT )
    {
        TKNuth21_GetTable( &amp;KN21, Plain, Cipher );
        memcpy( KeyOut, KN21.Data + 4, 4 );
        memcpy( ( ( BYTE * ) KeyOut ) + 4, KN21.Data + 8, 4 );
        printf( &quot;þ Trying %08X %08X: &quot;, KeyOut[ 0 ], KeyOut[ 1 ] );

        // Check if its 100% valid
        TKNuth21_Init( &amp;New21, KeyOut[ 0 ], KeyOut[ 1 ] );
        TKNuth21_Enc( &amp;New21, Plain, TmpCipher, 20 );
        if( !memcmp( TmpCipher, Cipher, 20 ) )
        {
            printf( &quot; OK\n&quot; );
        }
        else
        {
            printf( &quot; BAD\n&quot; );
        }
    }
    else if( dwCipher == WKB_SEL_KNUTH20 )
    {
        TKNuth20_GetTable( &amp;KN20, Plain, Cipher );
        do {
            TKNuth21_GetTable( &amp;KN21, InitData, KN20.Data );
            memcpy( KeyOut, KN21.Data + 4, 4 );
            memcpy( ( ( BYTE * ) KeyOut ) + 4, KN21.Data + 8, 4 );
            printf( &quot;þ Trying %08X %08X: &quot;, KeyOut[ 0 ], KeyOut[ 1 ] );

            // Check if its 100% valid
            TKNuth21_Init( &amp;New21, KeyOut[ 0 ], KeyOut[ 1 ] );
            TKNuth21_Enc( &amp;New21, InitData, New20.Data, 20 );
            if( !( New20.Data[ 2 ] &amp; 0x01 ) )
            {
                New20.Data[ 2 ]++;
            }
            TKNuth20_Enc( &amp;New20, Plain, TmpCipher, 20 );

            if( !memcmp( TmpCipher, Cipher, 20 ) )
            {
                printf( &quot; OK\n&quot; );
                bRet = TRUE;
                break;
            }

            if( Decremented )
            {
                bRet = FALSE;
                break;
            }

            KN20.Data[ 2 ]--;
            printf( &quot; BAD\n&quot; );
            Decremented = TRUE;
        } while( TRUE );
    }
    return bRet;
}

// -------------------------------------------------------------------------- //
void main( void )
{
    DWORD       Key[]           = { 0, 0 };
    BYTE        knPlain[ 50 ]   = { 0 };
    BYTE        knCipher[ 50 ]  = { 0 };
    KSchedule   KS;
    TKNuth21    KN21;

    knPlain[  0 ]  = 0x00;
    knPlain[  1 ]  = 0x00;
    knPlain[  2 ]  = 0x00;
    knPlain[  3 ]  = 0x00;
    knPlain[  4 ]  = 0x00;
    knPlain[  5 ]  = 0x00;
    knPlain[  6 ]  = 0x00;
    knPlain[  7 ]  = 0x00;
    knPlain[  8 ]  = 0x00;
    knPlain[  9 ]  = 0x00;
    knPlain[ 10 ]  = 0x00;
    knPlain[ 11 ]  = 0x00;
    knPlain[ 12 ]  = 0x00;
    knPlain[ 13 ]  = 0x00;
    knPlain[ 14 ]  = 0x00;
    knPlain[ 15 ]  = 0x00;
    knPlain[ 16 ]  = 0x00;
    knPlain[ 17 ]  = 0x00;
    knPlain[ 18 ]  = 0x00;
    knPlain[ 19 ]  = 0x00;
    knPlain[ 20 ]  = 0x00;
    knPlain[ 21 ]  = 0x00;
    knPlain[ 22 ]  = 0x00;
    knPlain[ 23 ]  = 0x00;
    knPlain[ 24 ]  = 0x00;
    knPlain[ 25 ]  = 0x00;
    knPlain[ 26 ]  = 0x00;
    knPlain[ 27 ]  = 0x00;
    knPlain[ 28 ]  = 0x00;
    knPlain[ 29 ]  = 0x00;
    knPlain[ 30 ]  = 0x00;
    knPlain[ 31 ]  = 0x00;
    knPlain[ 32 ]  = 0x00;
    knPlain[ 33 ]  = 0x00;
    knPlain[ 34 ]  = 0x00;
    knPlain[ 35 ]  = 0x00;
    knPlain[ 36 ]  = 0x00;
    knPlain[ 37 ]  = 0x00;
    knPlain[ 38 ]  = 0x00;
    knPlain[ 39 ]  = 0x00;
    knPlain[ 40 ]  = 0x00;
    knPlain[ 41 ]  = 0x00;
    knPlain[ 42 ]  = 0x00;
    knPlain[ 43 ]  = 0x00;
    knPlain[ 44 ]  = 0x00;
    knPlain[ 45 ]  = 0x00;
    knPlain[ 46 ]  = 0x00;
    knPlain[ 47 ]  = 0x00;
    knPlain[ 48 ]  = 0x00;
    knPlain[ 49 ]  = 0x00;

    knCipher[  0 ] = 0x2B;
    knCipher[  1 ] = 0x0E;
    knCipher[  2 ] = 0x1E;
    knCipher[  3 ] = 0x7E;
    knCipher[  4 ] = 0xAD;
    knCipher[  5 ] = 0x59;
    knCipher[  6 ] = 0x0A;
    knCipher[  7 ] = 0xF7;
    knCipher[  8 ] = 0x33;
    knCipher[  9 ] = 0xDC;
    knCipher[ 10 ] = 0x73;
    knCipher[ 11 ] = 0x99;
    knCipher[ 12 ] = 0x4F;
    knCipher[ 13 ] = 0xC1;
    knCipher[ 14 ] = 0xF9;
    knCipher[ 15 ] = 0xAC;
    knCipher[ 16 ] = 0x6F;
    knCipher[ 17 ] = 0xD4;
    knCipher[ 18 ] = 0x19;
    knCipher[ 19 ] = 0xBF;
    knCipher[ 20 ] = 0x8F;
    knCipher[ 21 ] = 0x00;
    knCipher[ 22 ] = 0x00;
    knCipher[ 23 ] = 0x00;
    knCipher[ 24 ] = 0x00;
    knCipher[ 25 ] = 0x00;
    knCipher[ 26 ] = 0x00;
    knCipher[ 27 ] = 0x00;
    knCipher[ 28 ] = 0x00;
    knCipher[ 29 ] = 0x00;
    knCipher[ 30 ] = 0x00;
    knCipher[ 31 ] = 0x00;
    knCipher[ 32 ] = 0x00;
    knCipher[ 33 ] = 0x00;
    knCipher[ 34 ] = 0x00;
    knCipher[ 35 ] = 0x00;
    knCipher[ 36 ] = 0x00;
    knCipher[ 37 ] = 0x00;
    knCipher[ 38 ] = 0x00;
    knCipher[ 39 ] = 0x00;
    knCipher[ 40 ] = 0x00;
    knCipher[ 41 ] = 0x00;
    knCipher[ 42 ] = 0x00;
    knCipher[ 43 ] = 0x00;
    knCipher[ 44 ] = 0x00;
    knCipher[ 45 ] = 0x00;
    knCipher[ 46 ] = 0x00;
    knCipher[ 47 ] = 0x00;
    knCipher[ 48 ] = 0x00;
    knCipher[ 49 ] = 0x00;

    ShowData( &quot;knPlain       : &quot;, knPlain, 21 );
    ShowData( &quot;knCipher (Pre): &quot;, knCipher, 21 );
    TKNuth21_GetTable( &amp;KN21, knPlain, knCipher );
    ShowData( &quot;KNuth21_Table : &quot;, KN21.Data, sizeof( KN21.Data ) );

    ShowData( &quot;knPlain       : &quot;, knPlain, 21 );
    ShowData( &quot;knCipher      : &quot;, knCipher, 21 );
    FindKeys( WKB_SEL_DIRECT, knPlain, knCipher, NULL, ( DWORD * ) Key );
    ShowData( &quot;Keys          : &quot;, ( BYTE * ) Key, 8 );

    //KS.Rounds = 8;
    //Feal_SetKey( &amp;KS, Key );

    //Feal_Encrypt( &amp;KS, Plain );
    //ShowData( &quot;Cipher        : &quot;, ( BYTE * ) Plain, 8 );

    TKNuth21_Init( &amp;KN21, Key[ 0 ], Key[ 1 ] );
    ShowData( &quot;KNuth21_Table : &quot;, KN21.Data, sizeof( KN21.Data ) );

    ShowData( &quot;knPlain       : &quot;, knPlain, 21 );
    ShowData( &quot;knCipher (Pre): &quot;, knCipher, 21 );
    TKNuth21_Enc( &amp;KN21, knPlain, knCipher, 21 );
    ShowData( &quot;knCipher      : &quot;, knCipher, 21 );

    printf( &quot;----------------------------------------------------------------------------\n&quot; );

    knPlain[  0 ]  = 0x00;
    knPlain[  1 ]  = 0x00;
    knPlain[  2 ]  = 0x00;
    knPlain[  3 ]  = 0x00;
    knPlain[  4 ]  = 0x00;
    knPlain[  5 ]  = 0x00;
    knPlain[  6 ]  = 0x00;
    knPlain[  7 ]  = 0x00;
    knPlain[  8 ]  = 0x00;
    knPlain[  9 ]  = 0x00;
    knPlain[ 10 ]  = 0x00;
    knPlain[ 11 ]  = 0x00;
    knPlain[ 12 ]  = 0x00;
    knPlain[ 13 ]  = 0x00;
    knPlain[ 14 ]  = 0x00;
    knPlain[ 15 ]  = 0x00;
    knPlain[ 16 ]  = 0x00;
    knPlain[ 17 ]  = 0x00;
    knPlain[ 18 ]  = 0x00;
    knPlain[ 19 ]  = 0x00;
    knPlain[ 20 ]  = 0x00;
    knPlain[ 21 ]  = 0x00;
    knPlain[ 22 ]  = 0x00;
    knPlain[ 23 ]  = 0x00;
    knPlain[ 24 ]  = 0x00;
    knPlain[ 25 ]  = 0x00;
    knPlain[ 26 ]  = 0x00;
    knPlain[ 27 ]  = 0x00;
    knPlain[ 28 ]  = 0x00;
    knPlain[ 29 ]  = 0x00;
    knPlain[ 30 ]  = 0x00;
    knPlain[ 31 ]  = 0x00;
    knPlain[ 32 ]  = 0x00;
    knPlain[ 33 ]  = 0x00;
    knPlain[ 34 ]  = 0x00;
    knPlain[ 35 ]  = 0x00;
    knPlain[ 36 ]  = 0x00;
    knPlain[ 37 ]  = 0x00;
    knPlain[ 38 ]  = 0x00;
    knPlain[ 39 ]  = 0x00;
    knPlain[ 40 ]  = 0x00;
    knPlain[ 41 ]  = 0x00;
    knPlain[ 42 ]  = 0x00;
    knPlain[ 43 ]  = 0x00;
    knPlain[ 44 ]  = 0x00;
    knPlain[ 45 ]  = 0x00;
    knPlain[ 46 ]  = 0x00;
    knPlain[ 47 ]  = 0x00;
    knPlain[ 48 ]  = 0x00;
    knPlain[ 49 ]  = 0x00;

    knCipher[  0 ] = 0x5D;
    knCipher[  1 ] = 0xBE;
    knCipher[  2 ] = 0x29;
    knCipher[  3 ] = 0xD8;
    knCipher[  4 ] = 0x49;
    knCipher[  5 ] = 0xC8;
    knCipher[  6 ] = 0xCB;
    knCipher[  7 ] = 0x7F;
    knCipher[  8 ] = 0x99;
    knCipher[  9 ] = 0x6F;
    knCipher[ 10 ] = 0xB2;
    knCipher[ 11 ] = 0xD6;
    knCipher[ 12 ] = 0x1F;
    knCipher[ 13 ] = 0x13;
    knCipher[ 14 ] = 0xEE;
    knCipher[ 15 ] = 0x17;
    knCipher[ 16 ] = 0x09;
    knCipher[ 17 ] = 0x54;
    knCipher[ 18 ] = 0xD8;
    knCipher[ 19 ] = 0x58;
    knCipher[ 20 ] = 0xF3;
    knCipher[ 21 ] = 0x00;
    knCipher[ 22 ] = 0x00;
    knCipher[ 23 ] = 0x00;
    knCipher[ 24 ] = 0x00;
    knCipher[ 25 ] = 0x00;
    knCipher[ 26 ] = 0x00;
    knCipher[ 27 ] = 0x00;
    knCipher[ 28 ] = 0x00;
    knCipher[ 29 ] = 0x00;
    knCipher[ 30 ] = 0x00;
    knCipher[ 31 ] = 0x00;
    knCipher[ 32 ] = 0x00;
    knCipher[ 33 ] = 0x00;
    knCipher[ 34 ] = 0x00;
    knCipher[ 35 ] = 0x00;
    knCipher[ 36 ] = 0x00;
    knCipher[ 37 ] = 0x00;
    knCipher[ 38 ] = 0x00;
    knCipher[ 39 ] = 0x00;
    knCipher[ 40 ] = 0x00;
    knCipher[ 41 ] = 0x00;
    knCipher[ 42 ] = 0x00;
    knCipher[ 43 ] = 0x00;
    knCipher[ 44 ] = 0x00;
    knCipher[ 45 ] = 0x00;
    knCipher[ 46 ] = 0x00;
    knCipher[ 47 ] = 0x00;
    knCipher[ 48 ] = 0x00;
    knCipher[ 49 ] = 0x00;

    ShowData( &quot;knPlain       : &quot;, knPlain, 25 );
    ShowData( &quot;knCipher (Pre): &quot;, knCipher, 25 );
    TKNuth21_GetTable( &amp;KN21, knPlain, knCipher );
    ShowData( &quot;KNuth21_Table : &quot;, KN21.Data, sizeof( KN21.Data ) );

    ShowData( &quot;knPlain       : &quot;, knPlain, 25 );
    ShowData( &quot;knCipher      : &quot;, knCipher, 25 );
    FindKeys( WKB_SEL_DIRECT, knPlain, knCipher, NULL, ( DWORD * ) Key );
    ShowData( &quot;Keys          : &quot;, ( BYTE * ) Key, 8 );

    //KS.Rounds = 8;
    //Feal_SetKey( &amp;KS, Key );

    //Feal_Encrypt( &amp;KS, Plain );
    //ShowData( &quot;Cipher        : &quot;, ( BYTE * ) Plain, 8 );

    TKNuth21_Init( &amp;KN21, Key[ 0 ], Key[ 1 ] );
    ShowData( &quot;KNuth21_Table : &quot;, KN21.Data, sizeof( KN21.Data ) );

    ShowData( &quot;knPlain       : &quot;, knPlain, 21 );
    ShowData( &quot;knCipher (Pre): &quot;, knCipher, 21 );
    TKNuth21_Enc( &amp;KN21, knPlain, knCipher, 21 );
    ShowData( &quot;knCipher      : &quot;, knCipher, 21 );

}

// -------------------------------------------------------------------------- //
</code></pre>
<p>hier noch der Header Knuth:</p>
<pre><code>// -------------------------------------------------------------------------- //
//
// -------------------------------------------------------------------------- //
#include &lt;Windows.h&gt;

// -------------------------------------------------------------------------- //
typedef struct {
    DWORD dwSize;       // 04
    DWORD dwIndex01;    // 08
    DWORD dwIndex00;    // 0C
    BYTE  Data[ 50 ];
} TKNuth, * PKNuth;

typedef struct {
    BYTE  Data[ 20 ];
} TKNuth20, * PKNuth20;

typedef struct {
    BYTE  Data[ 21 ];
} TKNuth21, * PKNuth21;

typedef struct {
    BYTE  Data[ 47 ];
} TKNuth47, * PKNuth47;

// -------------------------------------------------------------------------- //
void TKNuth_Init( PKNuth pKN, DWORD dwSize );
void TKNuth_Enc( PKNuth pKN, BYTE * Buffer, DWORD dwCount );
void TKNuth20_Init( PKNuth pKN, DWORD KeyL, DWORD KeyR );
void TKNuth20_Enc( PKNuth20 pKN, BYTE * Plain, BYTE * Cipher, DWORD dwCount );
void TKNuth21_Init( PKNuth21 pKN, DWORD KeyL, DWORD KeyR );
void TKNuth21_Enc( PKNuth21 pKN, BYTE * Plain, BYTE * Cipher, DWORD dwCount );
void TKNuth47_Enc( PKNuth47 pKN, BYTE * Plain, BYTE * Cipher, DWORD dwCount );

// -------------------------------------------------------------------------- //
</code></pre>
<p>anbei der Fehlercode:</p>
<pre><code>1&gt;------ Erstellen gestartet: Projekt: GK_feal, Konfiguration: Release Win32 ------
1&gt;Der Buildvorgang wurde am 20.12.2011 14:38:36 gestartet.
1&gt;InitializeBuildStatus:
1&gt;  Aktualisieren des Timestamps von &quot;Release\GK_feal.unsuccessfulbuild&quot;.
1&gt;ClCompile:
1&gt;  Alle Ausgaben sind aktuell.
1&gt;ResourceCompile:
1&gt;  Alle Ausgaben sind aktuell.
1&gt;wkwin32.lib : warning LNK4003: Ungültiges Bibliotheksformat; Bibliothek wird ignoriert.
1&gt;wkwin32.lib : warning LNK4003: Ungültiges Bibliotheksformat; Bibliothek wird ignoriert.
1&gt;GK_FEAL.obj : error LNK2001: Nicht aufgelöstes externes Symbol &quot;_TKNuth21_Enc&quot;.
1&gt;GK_FEAL.obj : error LNK2001: Nicht aufgelöstes externes Symbol &quot;_TKNuth21_Init&quot;.
1&gt;GK_FEAL.obj : error LNK2001: Nicht aufgelöstes externes Symbol &quot;_TKNuth20_Enc&quot;.
1&gt;c:\users\home\documents\visual studio 2010\Projects\GK_feal\Release\GK_feal.exe : fatal error LNK1120: 3 nicht aufgelöste externe Verweise.
</code></pre>
<p>anbei alles als rar datei<br />
<a href="http://www.megaupload.com/?d=IPDI6ZE8" rel="nofollow">http://www.megaupload.com/?d=IPDI6ZE8</a></p>
<p>ich hoffe ihr könnt mir helfen-bin schon gespannt</p>
<p>Viele Gruße</p>
<p>lopogus</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2159220</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2159220</guid><dc:creator><![CDATA[lopogus18]]></dc:creator><pubDate>Tue, 20 Dec 2011 13:46:33 GMT</pubDate></item><item><title><![CDATA[Reply to c++ compiler probleme on Tue, 20 Dec 2011 13:49:00 GMT]]></title><description><![CDATA[<p>Du hast da offenbar nicht den vollen Sourcecode. Ein Teil ist in einer Library, mit der dein Compiler nichts anfangen kann: «wkwin32.lib : warning LNK4003: Ungültiges Bibliotheksformat; Bibliothek wird ignoriert.»</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2159221</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2159221</guid><dc:creator><![CDATA[Bashar]]></dc:creator><pubDate>Tue, 20 Dec 2011 13:49:00 GMT</pubDate></item><item><title><![CDATA[Reply to c++ compiler probleme on Tue, 20 Dec 2011 14:03:57 GMT]]></title><description><![CDATA[<p>danke für die schnelle Antwort.<br />
hmm; nur wenn ich die datei ´rausnehme dann kommt folgende Fehlermeldung:<br />
ich bin mir ziemlich sicher, das der code vollständig ist</p>
<p>hier die fehlermeldung bei gelöscht wkwin32.lib</p>
<pre><code>1&gt;------ Erstellen gestartet: Projekt: GK_feal, Konfiguration: Release Win32 ------
1&gt;Der Buildvorgang wurde am 20.12.2011 15:00:48 gestartet.
1&gt;InitializeBuildStatus:
1&gt;  Aktualisieren des Timestamps von &quot;Release\GK_feal.unsuccessfulbuild&quot;.
1&gt;ClCompile:
1&gt;  Alle Ausgaben sind aktuell.
1&gt;ResourceCompile:
1&gt;  Alle Ausgaben sind aktuell.
1&gt;LINK : fatal error LNK1104: Datei &quot;wkwin32.lib&quot; kann nicht geöffnet werden.
1&gt;
1&gt;Fehler beim Erstellen
1&gt;
1&gt;Verstrichene Zeit 00:00:00.16
========== Erstellen: 0 erfolgreich, Fehler bei 1, 0 aktuell, 0 übersprungen ==========
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2159228</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2159228</guid><dc:creator><![CDATA[lopogus18]]></dc:creator><pubDate>Tue, 20 Dec 2011 14:03:57 GMT</pubDate></item><item><title><![CDATA[Reply to c++ compiler probleme on Tue, 20 Dec 2011 14:13:40 GMT]]></title><description><![CDATA[<p>???</p>
<p>OK, dann halt nochmal etwas ausführlicher: Das Projekt besteht zum Teil aus einer vorkompilierten Library, zu der du den Quelltext anscheinend nicht hast. Dein Compiler (bzw. dessen Linker) kann diese Library nicht verarbeiten, also fehlen die darin enthaltenen Bestandteile. Die Library deswegen zu löschen ist relativ sinnfrei, das ändert ja nichts daran, dass du sie brauchst.</p>
<p>Falls du den Quelltext dafür doch hast, solltest du versuchen, sie neu zu bauen. Ansonsten solltest du den Quelltext besorgen und sie bauen, oder den originalen Autor ausfindig machen. Eventuell gibt es davon auch eine neuere Version. Oder was weiß ich <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2159231</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2159231</guid><dc:creator><![CDATA[Bashar]]></dc:creator><pubDate>Tue, 20 Dec 2011 14:13:40 GMT</pubDate></item><item><title><![CDATA[Reply to c++ compiler probleme on Tue, 20 Dec 2011 14:24:00 GMT]]></title><description><![CDATA[<p>Ok Danke,</p>
<p>das werde ich versuchen. Die Quelldatei habe ich ja noch. Danke<br />
Darf ich dich nochmal anschreiben sollte ich auch dabei nicht weiter kommen.</p>
<p>Nochmals vielen Danke für deine Info</p>
<p>VG lopogus</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2159236</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2159236</guid><dc:creator><![CDATA[lopogus18]]></dc:creator><pubDate>Tue, 20 Dec 2011 14:24:00 GMT</pubDate></item><item><title><![CDATA[Reply to c++ compiler probleme on Tue, 20 Dec 2011 17:51:04 GMT]]></title><description><![CDATA[<p>Beim Borland-Builder gibt es ein Tool 'coff2omf', um Libs umzuwandeln. Ich weiß aber nicht, ob es auch in die andere Richtung &quot;Borland -&gt; Microsoft&quot; (omf2coff) geht.</p>
<p>P.S: Da hat ja ein echter Crack an dem Projekt gearbeitet, z.B. wie die Arrays knPlain und knCipher initialisiert werden. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";-)"
      alt="😉"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2159239</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2159239</guid><dc:creator><![CDATA[Th69]]></dc:creator><pubDate>Tue, 20 Dec 2011 17:51:04 GMT</pubDate></item><item><title><![CDATA[Reply to c++ compiler probleme on Tue, 20 Dec 2011 14:32:56 GMT]]></title><description><![CDATA[<p>Das Problem liegt in den verschiedenen .lib Dateiformaten. Microsoft benutzt COFF, Borland/Codegear/Embarcadero hingegen OMF. Die jeweiligen Linker können mit dem fremden Bibliotheksformat nichts anfangen, daher die Fehlermeldung. B/C/E liefern mit ihrer IDE ein Tool namens COFF2OMF, um die COFF Bibliothek in´s OMF Format zu bringen. Ob es ein OMF2COFF Tool gibt weiß ich nicht, das sollte bei google ´ne Frage wert sein.</p>
<p>Edit:<br />
Um 3 Sekunden geschlagen <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2159241</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2159241</guid><dc:creator><![CDATA[DocShoe]]></dc:creator><pubDate>Tue, 20 Dec 2011 14:32:56 GMT</pubDate></item><item><title><![CDATA[Reply to c++ compiler probleme on Tue, 20 Dec 2011 18:19:06 GMT]]></title><description><![CDATA[<p>kann das di editbin.exe von ms visual auch?<br />
ich habe das tool omf2coff im netz gefunden-nur halt kein download link.<br />
Und v.a. keine anleitung how to use it <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":-)"
      alt="🙂"
    /><br />
Könnt ihr weiterhelfen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2159398</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2159398</guid><dc:creator><![CDATA[lopogus18]]></dc:creator><pubDate>Tue, 20 Dec 2011 18:19:06 GMT</pubDate></item><item><title><![CDATA[Reply to c++ compiler probleme on Wed, 21 Dec 2011 09:01:56 GMT]]></title><description><![CDATA[<p>Vielleicht</p>
<pre><code>omf2coff /?
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2159583</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2159583</guid><dc:creator><![CDATA[DocShoe]]></dc:creator><pubDate>Wed, 21 Dec 2011 09:01:56 GMT</pubDate></item><item><title><![CDATA[Reply to c++ compiler probleme on Wed, 21 Dec 2011 09:50:53 GMT]]></title><description><![CDATA[<p>Wieso wollt ihr ihn die Bibliothek konvertieren lassen wenn er den Sourcecode hat?<br />
Einfach den Source ins Projekt hinzufügen und gut.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2159592</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2159592</guid><dc:creator><![CDATA[Ethon]]></dc:creator><pubDate>Wed, 21 Dec 2011 09:50:53 GMT</pubDate></item><item><title><![CDATA[Reply to c++ compiler probleme on Wed, 21 Dec 2011 09:58:07 GMT]]></title><description><![CDATA[<p>Den Sourcecode wird er wahrscheinlich nicht haben. Es handelt sich bei wkwin32.dll (bzw. .lib) um eine Bibliothek, die mit dem Treiber für WibuKey-Kopierschutzdongles spricht, also höchst proprietäres Zeug. Womöglich kriegt man das aber auf der Wibu-Webseite im Binärformat runtergeladen, im Zweifel <a href="http://www.wibu.com/en/downloads-developer-software.html" rel="nofollow">hier</a>.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2159596</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2159596</guid><dc:creator><![CDATA[seldon]]></dc:creator><pubDate>Wed, 21 Dec 2011 09:58:07 GMT</pubDate></item><item><title><![CDATA[Reply to c++ compiler probleme on Thu, 22 Dec 2011 14:13:08 GMT]]></title><description><![CDATA[<p>wie schon gesagt, ich habe den source code.<br />
ich werde es versuchen ihn hinzuzufügen</p>
<p>vg</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2160153</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2160153</guid><dc:creator><![CDATA[lopogus18]]></dc:creator><pubDate>Thu, 22 Dec 2011 14:13:08 GMT</pubDate></item><item><title><![CDATA[Reply to c++ compiler probleme on Wed, 07 Mar 2012 16:49:23 GMT]]></title><description><![CDATA[<p>@lopogus18</p>
<p>und hast es hinbekommen ?</p>
<p>soviel ich weiss ist dieser source für Borland c++ V5</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2189515</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2189515</guid><dc:creator><![CDATA[Landogar]]></dc:creator><pubDate>Wed, 07 Mar 2012 16:49:23 GMT</pubDate></item></channel></rss>