Crash bei Verbindung zu WMI / COM ***25 EURO Gutschein für Fix***



  • Hallo zusammen,

    es ist normalerweise nicht meine Art, bei Problemen in Foren zu posten. Diesen Bug hier kriege ich allerdings schon seit etwa 4 Wochen nicht gelöst. Ich habe in mein Programm eine Methode implementiert, die eine Hardware ID aus der mainboard + mac ID berechnen soll.. das funktioniert soweit auch meistens. Die MB ID kann ausgelesen werden. Manchmal jedoch (charakteristika einer race condition), crasht das ganze in der ConnectServer() Funktionion mit einer Access Violation:

    Eine Ausnahme (erste Chance) bei 0x75035d7e (KernelBase.dll) in MeineUI.exe: 0xC0000005: Zugriffsverletzung beim Lesen an Position 0x00b1f02e.
    Unbehandelte Ausnahme bei 0x75035d7e (KernelBase.dll) in MeineUI.exe: 0xC0000005: Zugriffsverletzung beim Lesen an Position 0x00b1f02e.

    Stack Trace:

    KernelBase.dll!_QueryRegValue@24() + 0xe9 Bytes
    KernelBase.dll!_ValidateLocaleRegistryKey@12() + 0x3f Bytes
    KernelBase.dll!_MakeNamedLocaleHashNode@8() + 0xa7 Bytes
    KernelBase.dll!@GetNamedLocaleHashNode@8() + 0x56 Bytes
    KernelBase.dll!_NlsValidateNamedLocale@4() + 0xf Bytes
    KernelBase.dll!_LocaleNameToLCID@8() + 0x17 Bytes
    wbemcomn.dll!CMUILocale::_LocaleNameToLCID() + 0x2a Bytes
    wbemcomn.dll!CMUILocale::LocaleName_To_LCID() + 0x2c Bytes
    wbemcomn.dll!CMUILocale::GetPreferredLanguages() - 0x75 Bytes
    wbemprox.dll!CDCOMTrans::DoActualConnection() + 0x30c Bytes
    wbemprox.dll!CDCOMTrans::DoConnection() + 0x27 Bytes
    wbemprox.dll!CLocator::ConnectServer() + 0x79 Bytes
    > meine.exe!Engine::calcMainboardID() Zeile 166 + 0x27 Bytes C++
    meine.exe!Engine::Engine() Zeile 37 + 0xf Bytes C++
    meine.exe!Engine::getInstance() Zeile 40 + 0x22 Bytes C++
    meine.exe!MeineApplication::MeineApplication(int argc=1, char * * argv=0x002a2178) Zeile 22 + 0x9 Bytes C++
    meine.exe!main(int argc=1, char * * argv=0x002a2178) Zeile 53 + 0x10 Bytes C++
    meine.exe!__tmainCRTStartup() Zeile 278 + 0x19 Bytes C
    meine.exe!mainCRTStartup() Zeile 189 C
    kernel32.dll!@BaseThreadInitThunk@12() + 0x12 Bytes
    ntdll.dll!___RtlUserThreadStart@8() + 0x27 Bytes
    ntdll.dll!__RtlUserThreadStart@8() + 0x1b Bytes

    Wie man also sieht, kommt das ganze tief aus der Kernelbase.dll... normalerweise hat das nichts zu bedeuten und der fehler liegt trotzdem in meinem Code, aber bei diesem Fehler bin ich mir nichtmehr so ganz sicher. Ich habe meinen WMI Code aus der offiziellen Example App von Microsoft, um ganz sicher zu gehen es richtig zu nutzen. Trotzdem hier mein Code:

    std::string Engine::calcMainboardID() {
    
    	HRESULT hres;
    
        // Initialize COM.
        hres =  CoInitializeEx(0, COINIT_MULTITHREADED); 
    	//hres = CoInitialize(0);
        if (FAILED(hres)) {
            std::cout << "Failed to initialize COM library. " 
                << "Error code = 0x" 
                << hex << hres << endl;
            //return std::string("fail1");             // Program has failed.
        }
    
        // Initialize 
        hres =  CoInitializeSecurity(
            NULL,     
            -1,      // COM negotiates service                  
            NULL,    // Authentication services
            NULL,    // Reserved
            RPC_C_AUTHN_LEVEL_DEFAULT,    // authentication
            RPC_C_IMP_LEVEL_IMPERSONATE,  // Impersonation
            NULL,             // Authentication info 
            EOAC_NONE,        // Additional capabilities
            NULL              // Reserved
            );
    
        if (FAILED(hres)) {
            std::cout << "Failed to initialize security. " 
                << "Error code = 0x" 
                << hex << hres << endl;
    //        CoUninitialize();
            return std::string("fail2");          // Program has failed.
        }
    
        // Obtain the initial locator to Windows Management on a particular host computer.
        IWbemLocator *pLoc = 0;
    
        hres = CoCreateInstance(
            CLSID_WbemLocator,             
            0, 
            CLSCTX_INPROC_SERVER, 
            IID_IWbemLocator, (LPVOID *) &pLoc);
    
        if (FAILED(hres) || !pLoc) {
            std::cout << "Failed to create IWbemLocator object. "
                << "Error code = 0x"
                << hex << hres << endl;
    //        CoUninitialize();
    		return std::string("fail3");       // Program has failed.
        }
        IWbemServices *pSvc = 0;
    
    	std::cout << "before var \n";
    
    	_bstr_t testVar = _bstr_t("ROOT\\CIMV2");
    
    	std::cout << "before connect \n";
    
    	qDebug() << "ploc is: " << pLoc << "::" << endl;
    
        // Connect to the root\cimv2 namespace with the current user and obtain pointer pSvc to make IWbemServices calls
        hres = pLoc->ConnectServer(
           testVar, // WMI namespace
            NULL,                    // User name
            NULL,                    // User password
            0,                       // Locale
            NULL,                    // Security flags                 
            0,                       // Authority       
            0,                       // Context object
            &pSvc                    // IWbemServices proxy
            );                              
    
    	///////// TODO: Hier ist Crash /////////////
    	std::cout << "after connect \n";
    
        if (FAILED(hres)) {
            std::cout << "Could not connect. Error code = 0x" 
                << hex << hres << endl;
            pLoc->Release();     
    //        CoUninitialize();
           return std::string("fail4");               // Program has failed.
        }
        std::cout << "Connected to ROOT\\CIMV2 WMI namespace" << endl;
    
        // Set the IWbemServices proxy so that impersonation of the user (client) occurs.
        hres = CoSetProxyBlanket(
           pSvc,                         // the proxy to set
           RPC_C_AUTHN_WINNT,            // authentication service
           RPC_C_AUTHZ_NONE,             // authorization service
           NULL,                         // Server principal name
           RPC_C_AUTHN_LEVEL_CALL,       // authentication level
           RPC_C_IMP_LEVEL_IMPERSONATE,  // impersonation level
           NULL,                         // client identity 
           EOAC_NONE                     // proxy capabilities     
        );
    
        if (FAILED(hres)) {
            cout << "Could not set proxy blanket. Error code = 0x" 
                 << hex << hres << endl;
            pSvc->Release();
            pLoc->Release();     
    //        CoUninitialize();
            return std::string("fail5");               // Program has failed.
        }
    
        // Use the IWbemServices pointer to make requests of WMI. Make requests here:
    
    	std::cout << "before query \n";
    
        // For example, query for all the running processes
        IEnumWbemClassObject* pEnumerator = NULL;
        hres = pSvc->ExecQuery(
            bstr_t("WQL"), 
            bstr_t("SELECT * FROM Win32_BaseBoard"), //Win32_Process"),
            WBEM_FLAG_FORWARD_ONLY | WBEM_FLAG_RETURN_IMMEDIATELY, 
            NULL,
            &pEnumerator);
    
        if (FAILED(hres)) {
            cout << "Query for processes failed. "
                 << "Error code = 0x" 
                 << hex << hres << endl;
            pSvc->Release();
            pLoc->Release();     
    //        CoUninitialize();
            return std::string("fail6");               // Program has failed.
    
    	} else { 
            IWbemClassObject *pclsObj;
            ULONG uReturn = 0;
    
    		std::cout << "debug 122 \n";
    
            while (pEnumerator) {
    
    			std::cout << "DEBUG 123\n";
    
                hres = pEnumerator->Next(WBEM_INFINITE, 1, 
                    &pclsObj, &uReturn);
    
                if(0 == uReturn) {
                    break;
                }
    
                VARIANT vtProp;
    
                // Get the value of the SerialNumber property
                hres = pclsObj->Get(L"SerialNumber"/*"Name"*/, 0, &vtProp, 0, 0);
                //wcout << "Process Name : " << vtProp.bstrVal << endl;
    
    			std::cout << "before copyString \n";
    
    			// Convert output to std::string
    			std::wstring outputW(vtProp.bstrVal, SysStringLen(vtProp.bstrVal));
    			std::string output(outputW.begin(), outputW.end());
    
    			VariantClear(&vtProp);
    			return output;
            }
    
        }
    
        // Cleanup
        // ========
        /*pSvc->Release();
        pLoc->Release();     
        CoUninitialize();
        */
        return std::string("fail77");
    }
    

    Ich habe hier momentan die release/uninit dinger auskommentiert weil ich den Verdacht hatte das ich etwas freigebe, was ich nicht hätte freigeben sollen. Das ganze brachte aber keine Änderung. Auch tritt der Crash manchmal mehrmals hintereinander auf oder beim der ersten Ausführung nach System Restart, sodass ich es wage auszuschließen das es am nicht ordentlichem aufräumen liegt.

    Nun, in welcher Umgebung crasht das ganze ? Ich nutze Visual C++ via MSVC 2010, habe ein multi-projekt setup (Libary, App) obwohl die Einstellungen in allen Projekten eigtl. identisch sind. Ich kann jedoch nicht ausschließen, dass das ganze mit einer ungeeigneten Konfiguration zusammenhängt (z.B. musste ich x86 als TargetMachine entfernen, sodass er eigtl. universell compilen sollte). Ich öffne viele viele Threads in meinem Program, allerdings eigtl. erst später nachdem dieser Code ausgeführt wurde.

    Als kleinen Anreiz mir bei diesem schwierigem Problem zu helfen, bin ich bereit für denjenigen der mir als erster helfen kann das Problem final zu fixxen, einen 25 EURO Gutschein (z.B. Amazon / Ikea / Rewe / ...) zu spendieren. Ich werde aber ggf. auch in weiteren Foren (MSDN) posten. ⚠

    Jeder Verdacht, um was für eine Art von problem es sich handeln könnte ist willkommen.

    Grüße
    jah1993



  • Hier noch der Auszug aus der DLL Assembly, falls jemand daraus etwas ablesen kann:

    _QueryRegValue@24:
    75035C95 8B FF                mov         edi,edi  
    75035C97 55                   push        ebp  
    75035C98 8B EC                mov         ebp,esp  
    75035C9A 83 EC 0C             sub         esp,0Ch  
    75035C9D 8B 45 1C             mov         eax,dword ptr [ebp+1Ch]  
    75035CA0 53                   push        ebx  
    75035CA1 56                   push        esi  
    75035CA2 33 F6                xor         esi,esi  
    75035CA4 57                   push        edi  
    75035CA5 89 75 FC             mov         dword ptr [ebp-4],esi  
    75035CA8 3B C6                cmp         eax,esi  
    75035CAA 74 02                je          _QueryRegValue@24+19h (75035CAEh)  
    75035CAC 89 30                mov         dword ptr [eax],esi  
    75035CAE FF 75 0C             push        dword ptr [ebp+0Ch]  
    75035CB1 8D 45 F4             lea         eax,[ebp-0Ch]  
    75035CB4 50                   push        eax  
    75035CB5 FF 15 94 10 00 75    call        dword ptr [__imp__RtlInitUnicodeString@8 (75001094h)]  
    75035CBB FF 75 14             push        dword ptr [ebp+14h]  
    75035CBE 56                   push        esi  
    75035CBF 8B 75 10             mov         esi,dword ptr [ebp+10h]  
    75035CC2 FF 36                push        dword ptr [esi]  
    75035CC4 E8 67 12 00 00       call        _memset (75036F30h)  
    75035CC9 8B 3D 18 11 00 75    mov         edi,dword ptr [__imp__NtQueryValueKey@24 (75001118h)]  
    75035CCF 83 C4 0C             add         esp,0Ch  
    75035CD2 8D 45 0C             lea         eax,[ebp+0Ch]  
    75035CD5 50                   push        eax  
    75035CD6 FF 75 14             push        dword ptr [ebp+14h]  
    75035CD9 33 DB                xor         ebx,ebx  
    75035CDB FF 36                push        dword ptr [esi]  
    75035CDD 43                   inc         ebx  
    75035CDE 53                   push        ebx  
    75035CDF 8D 45 F4             lea         eax,[ebp-0Ch]  
    75035CE2 50                   push        eax  
    75035CE3 FF 75 08             push        dword ptr [ebp+8]  
    75035CE6 FF D7                call        edi  
    75035CE8 89 45 14             mov         dword ptr [ebp+14h],eax  
    75035CEB 3D 05 00 00 80       cmp         eax,80000005h  
    75035CF0 75 59                jne         _QueryRegValue@24+0B6h (75035D4Bh)  
    75035CF2 83 7D 1C 00          cmp         dword ptr [ebp+1Ch],0  
    75035CF6 74 53                je          _QueryRegValue@24+0B6h (75035D4Bh)  
    75035CF8 64 A1 18 00 00 00    mov         eax,dword ptr fs:[00000018h]  
    75035CFE FF 75 0C             push        dword ptr [ebp+0Ch]  
    75035D01 8B 40 30             mov         eax,dword ptr [eax+30h]  
    75035D04 6A 08                push        8  
    75035D06 FF 70 18             push        dword ptr [eax+18h]  
    75035D09 FF 15 18 10 00 75    call        dword ptr [__imp__RtlAllocateHeap@12 (75001018h)]  
    75035D0F 89 45 FC             mov         dword ptr [ebp-4],eax  
    75035D12 85 C0                test        eax,eax  
    75035D14 75 0A                jne         _QueryRegValue@24+8Bh (75035D20h)  
    75035D16 B8 17 00 00 C0       mov         eax,0C0000017h  
    75035D1B E9 9A 00 00 00       jmp         _QueryRegValue@24+125h (75035DBAh)  
    75035D20 FF 75 0C             push        dword ptr [ebp+0Ch]  
    75035D23 89 06                mov         dword ptr [esi],eax  
    75035D25 6A 00                push        0  
    75035D27 50                   push        eax  
    75035D28 E8 03 12 00 00       call        _memset (75036F30h)  
    75035D2D 83 C4 0C             add         esp,0Ch  
    75035D30 8D 45 0C             lea         eax,[ebp+0Ch]  
    75035D33 50                   push        eax  
    75035D34 FF 75 0C             push        dword ptr [ebp+0Ch]  
    75035D37 8D 45 F4             lea         eax,[ebp-0Ch]  
    75035D3A FF 36                push        dword ptr [esi]  
    75035D3C 53                   push        ebx  
    75035D3D 50                   push        eax  
    75035D3E FF 75 08             push        dword ptr [ebp+8]  
    75035D41 FF D7                call        edi  
    75035D43 89 45 14             mov         dword ptr [ebp+14h],eax  
    75035D46 8B 45 1C             mov         eax,dword ptr [ebp+1Ch]  
    75035D49 89 18                mov         dword ptr [eax],ebx  
    75035D4B 8B 45 18             mov         eax,dword ptr [ebp+18h]  
    75035D4E 33 D2                xor         edx,edx  
    75035D50 B9 4C 01 00 C0       mov         ecx,0C000014Ch  
    75035D55 3B C2                cmp         eax,edx  
    75035D57 74 0A                je          _QueryRegValue@24+0CEh (75035D63h)  
    75035D59 8B 3E                mov         edi,dword ptr [esi]  
    75035D5B 39 47 04             cmp         dword ptr [edi+4],eax  
    75035D5E 74 03                je          _QueryRegValue@24+0CEh (75035D63h)  
    75035D60 89 4D 14             mov         dword ptr [ebp+14h],ecx  
    75035D63 8B 36                mov         esi,dword ptr [esi]  
    75035D65 39 5E 04             cmp         dword ptr [esi+4],ebx  
    75035D68 75 1E                jne         _QueryRegValue@24+0F3h (75035D88h)  
    75035D6A 8B 46 0C             mov         eax,dword ptr [esi+0Ch]  
    75035D6D 84 C3                test        bl,al  
    75035D6F 75 14                jne         _QueryRegValue@24+0F0h (75035D85h)  
    75035D71 83 F8 02             cmp         eax,2  
    75035D74 72 0F                jb          _QueryRegValue@24+0F0h (75035D85h)  
    75035D76 8B 7E 08             mov         edi,dword ptr [esi+8]  
    75035D79 D1 E8                shr         eax,1  
    75035D7B 8D 04 47             lea         eax,[edi+eax*2]  
    75035D7E 66 39 54 30 FE       cmp         word ptr [eax+esi-2],dx  
    75035D83 74 03                je          _QueryRegValue@24+0F3h (75035D88h)  
    75035D85 89 4D 14             mov         dword ptr [ebp+14h],ecx  
    75035D88 39 55 14             cmp         dword ptr [ebp+14h],edx  
    75035D8B 7D 2B                jge         _QueryRegValue@24+123h (75035DB8h)  
    75035D8D 8B 45 1C             mov         eax,dword ptr [ebp+1Ch]  
    75035D90 3B C2                cmp         eax,edx  
    75035D92 74 1F                je          _QueryRegValue@24+11Eh (75035DB3h)  
    75035D94 39 10                cmp         dword ptr [eax],edx  
    75035D96 74 1B                je          _QueryRegValue@24+11Eh (75035DB3h)  
    75035D98 39 55 FC             cmp         dword ptr [ebp-4],edx  
    75035D9B 74 16                je          _QueryRegValue@24+11Eh (75035DB3h)  
    75035D9D FF 75 FC             push        dword ptr [ebp-4]  
    75035DA0 64 A1 18 00 00 00    mov         eax,dword ptr fs:[00000018h]  
    75035DA6 8B 40 30             mov         eax,dword ptr [eax+30h]  
    75035DA9 52                   push        edx  
    75035DAA FF 70 18             push        dword ptr [eax+18h]  
    75035DAD FF 15 14 10 00 75    call        dword ptr [__imp__RtlFreeHeap@12 (75001014h)]  
    75035DB3 8B 45 14             mov         eax,dword ptr [ebp+14h]  
    75035DB6 EB 02                jmp         _QueryRegValue@24+125h (75035DBAh)  
    75035DB8 33 C0                xor         eax,eax  
    75035DBA 5F                   pop         edi  
    75035DBB 5E                   pop         esi  
    75035DBC 5B                   pop         ebx  
    75035DBD C9                   leave  
    75035DBE C2 18 00             ret         18h  
    75035DC1 CC                   int         3  
    75035DC2 CC                   int         3  
    75035DC3 CC                   int         3  
    75035DC4 CC                   int         3  
    75035DC5 CC                   int         3
    

    (Quelle: KernelBase.dll // _QueryRegValue)



  • Mach doch mal ein frisches Konsolenapp-Projekt und schau, ob es dort auch crasht...



  • Nimm noch mal das Original-Beispiel:
    http://msdn.microsoft.com/en-us/library/aa390423



  • Beides getestet. Original Code von Microsoft hat wie erwartet keine Änderung gebracht. Ich habe den Code ja nur minimal geändert gehabt und das auch nur ganz unten und nicht beim connect part.

    Eine frische Konsolen-App zeigt vorerst keine Crashs, wobei dies auch einfach bedeuten kann das dort das Timing den Fehler nicht auslöst (siehe oben; das Verhalten ähnelt einer Race Condition sehr). Ich poste einfach mal meine Projekt Konfiguration, vlt. sieht jemand dort inkompatiblitäten:

    [code]<?xml version="1.0" encoding="utf-8"?>
    <Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
    <ItemGroup Label="ProjectConfigurations">
    <ProjectConfiguration Include="Debug|Win32">
    <Configuration>Debug</Configuration>
    <Platform>Win32</Platform>
    </ProjectConfiguration>
    <ProjectConfiguration Include="Release|Win32">
    <Configuration>Release</Configuration>
    <Platform>Win32</Platform>
    </ProjectConfiguration>
    </ItemGroup>
    <PropertyGroup Label="Globals">
    <ProjectGuid>{12345678-1234-1234-123456789012345}</ProjectGuid>
    <Keyword>Qt4VSv1.0</Keyword>
    </PropertyGroup>
    <Import Project="(VCTargetsPath)\\Microsoft.Cpp.Default.props" /> (Platform)==DebugWin32"Label="Configuration"><ConfigurationType>Application</ConfigurationType><CharacterSet>NotSet</CharacterSet></PropertyGroup><PropertyGroupCondition="(Platform)'=='Debug|Win32'" Label="Configuration"> <ConfigurationType>Application</ConfigurationType> <CharacterSet>NotSet</CharacterSet> </PropertyGroup> <PropertyGroup Condition="'(Configuration)|(Platform)==ReleaseWin32"Label="Configuration"><ConfigurationType>Application</ConfigurationType><WholeProgramOptimization>false</WholeProgramOptimization><CLRSupport>false</CLRSupport><UseOfMfc>false</UseOfMfc></PropertyGroup><ImportProject="(Platform)'=='Release|Win32'" Label="Configuration"> <ConfigurationType>Application</ConfigurationType> <WholeProgramOptimization>false</WholeProgramOptimization> <CLRSupport>false</CLRSupport> <UseOfMfc>false</UseOfMfc> </PropertyGroup> <Import Project="(VCTargetsPath)\Microsoft.Cpp.props" />
    <ImportGroup Label="ExtensionSettings">
    </ImportGroup>
    <ImportGroup Condition="'(Configuration)(Configuration)|(Platform)'=='Debug|Win32'" Label="PropertySheets">
    <Import Project="(UserRootDir)\\Microsoft.Cpp.(Platform).user.props" Condition="exists('(UserRootDir)\\Microsoft.Cpp.(Platform).user.props')" Label="LocalAppDataPlatform" />
    </ImportGroup>
    <ImportGroup Condition="'(Configuration)(Configuration)|(Platform)'=='Release|Win32'" Label="PropertySheets">
    <Import Project="(UserRootDir)\\Microsoft.Cpp.(Platform).user.props" Condition="exists('(UserRootDir)\\Microsoft.Cpp.(Platform).user.props')" Label="LocalAppDataPlatform" />
    </ImportGroup>
    <PropertyGroup Label="UserMacros" />
    <PropertyGroup>
    <_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
    <CodeAnalysisRuleSet Condition="'(Configuration)(Configuration)|(Platform)'=='Debug|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
    <CodeAnalysisRules Condition="'(Configuration)(Configuration)|(Platform)'=='Debug|Win32'" />
    <CodeAnalysisRuleAssemblies Condition="'(Configuration)(Configuration)|(Platform)'=='Debug|Win32'" />
    <CodeAnalysisRuleSet Condition="'(Configuration)(Configuration)|(Platform)'=='Release|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
    <CodeAnalysisRules Condition="'(Configuration)(Configuration)|(Platform)'=='Release|Win32'" />
    <CodeAnalysisRuleAssemblies Condition="'(Configuration)(Configuration)|(Platform)'=='Release|Win32'" />
    <OutDir Condition="'(Configuration)(Configuration)|(Platform)'=='Debug|Win32'">(SolutionDir)(SolutionDir)(Platform)\(Configuration)\\ (Platform)==ReleaseWin32">(Platform)'=='Release|Win32'">(SolutionDir)(Platform)\\(Configuration)\</OutDir>
    <IncludePath Condition="'(Configuration)(Configuration)|(Platform)'=='Release|Win32'">C:\Users\myName\Documents\libs;(IncludePath)</IncludePath><LibraryPathCondition="(IncludePath)</IncludePath> <LibraryPath Condition="'(Configuration)|(Platform)'=='Release|Win32'">C:\\Users\\myName\\Documents\\Visual Studio 2010\\Projects\\myLibrary\\Release;(LibraryPath)</LibraryPath>
    <IgnoreImportLibrary Condition="'(Configuration)(Configuration)|(Platform)'=='Release|Win32'">false</IgnoreImportLibrary>
    <LinkIncremental Condition="'(Configuration)(Configuration)|(Platform)'=='Release|Win32'">false</LinkIncremental>
    </PropertyGroup>
    <ItemDefinitionGroup Condition="'(Configuration)(Configuration)|(Platform)'=='Debug|Win32'">
    <ClCompile>
    <PreprocessorDefinitions>UNICODE;QT_CORE_LIB;QT_GUI_LIB;QT_NETWORK_LIB;QT_XML_LIB;_HAS_ITERATOR_DEBUGGING=1;_ITERATOR_DEBUG_LEVEL=2;%(PreprocessorDefinitions)</PreprocessorDefinitions>
    <AdditionalIncludeDirectories>.\GeneratedFiles;.;(QTDIR)\\include;.\\GeneratedFiles\\(ConfigurationName);(QTDIR)\\include\\QtCore;(QTDIR)\include\QtGui;(QTDIR)\\include\\QtNetwork;(QTDIR)\include\QtXml;C:\Users\myName\Documents\libs;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
    <Optimization>Disabled</Optimization>
    <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
    <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
    <TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
    <PrecompiledHeader>Use</PrecompiledHeader>
    <PrecompiledHeaderFile>StdAfx.h</PrecompiledHeaderFile>
    <PrecompiledHeaderOutputFile>(IntDir)(IntDir)(TargetName).pch</PrecompiledHeaderOutputFile>
    <EnableEnhancedInstructionSet>NotSet</EnableEnhancedInstructionSet>
    <AdditionalOptions>/D "_HAS_ITERATOR_DEBUGGING=1" %(AdditionalOptions)</AdditionalOptions>
    <PreprocessKeepComments>true</PreprocessKeepComments>
    <InlineFunctionExpansion>Disabled</InlineFunctionExpansion>
    <StructMemberAlignment>Default</StructMemberAlignment>
    <MultiProcessorCompilation>true</MultiProcessorCompilation>
    <AssemblerOutput>All</AssemblerOutput>
    </ClCompile>
    <Link>
    <SubSystem>Console</SubSystem>
    <OutputFile>(OutDir)\\(ProjectName).exe</OutputFile>
    <AdditionalLibraryDirectories>C:\Users\myName\Documents\libs\luajit2\src_debug;C:\Users\myName\Documents\libs\QtDebug;(QTDIR)\\lib;C:\\Users\\myName\\Documents\\libs;C:\\Users\\myName\\Documents\\Visual Studio 2010\\Projects\\myLibrary\\Debug;C:\\Users\\myName\\Documents\\Visual Studio 2010\\Projects\\myLibrary\\Win32\\Debug;%(AdditionalLibraryDirectories) true comsuppw.lib;Imm32.lib;Winmm.lib;ws2_32.lib;LibcmtD.lib;qtmaind.lib;QtCored.lib;QtGuid.lib;QtNetworkd.lib;myLibary.lib;QtXmld.lib;lua51.lib;wbemuuid.lib;%(AdditionalDependencies) false libcmtd.lib;libcmt.lib;%(IgnoreSpecificDefaultLibraries) true MultiplyDefinedSymbolOnly true true NotSet false UNICODE;QT\_NO\_DEBUG;NDEBUG;QT\_CORE\_LIB;QT\_GUI\_LIB;QT\_NETWORK\_LIB;QT\_XML\_LIB;%(PreprocessorDefinitions) .\\GeneratedFiles;.;(QTDIR)\include;.\GeneratedFiles\(ConfigurationName);(ConfigurationName);(QTDIR)\include\QtCore;(QTDIR)\\include\\QtGui;(QTDIR)\include\QtNetwork;(QTDIR)\\include\\QtXml;C:\\Users\\myName\\Documents\\libs;%(AdditionalIncludeDirectories) MultiThreaded false Use StdAfx.h (IntDir)(TargetName).pch</PrecompiledHeaderOutputFile><InlineFunctionExpansion>Disabled</InlineFunctionExpansion><IntrinsicFunctions>false</IntrinsicFunctions><FavorSizeOrSpeed>Neither</FavorSizeOrSpeed><OmitFramePointers>false</OmitFramePointers><EnableFiberSafeOptimizations>false</EnableFiberSafeOptimizations><WholeProgramOptimization>false</WholeProgramOptimization><MultiProcessorCompilation>true</MultiProcessorCompilation><PreprocessKeepComments>false</PreprocessKeepComments><StructMemberAlignment>Default</StructMemberAlignment><Optimization>Disabled</Optimization><DebugInformationFormat>EditAndContinue</DebugInformationFormat></ClCompile><Link><SubSystem>Windows</SubSystem><OutputFile>(TargetName).pch</PrecompiledHeaderOutputFile> <InlineFunctionExpansion>Disabled</InlineFunctionExpansion> <IntrinsicFunctions>false</IntrinsicFunctions> <FavorSizeOrSpeed>Neither</FavorSizeOrSpeed> <OmitFramePointers>false</OmitFramePointers> <EnableFiberSafeOptimizations>false</EnableFiberSafeOptimizations> <WholeProgramOptimization>false</WholeProgramOptimization> <MultiProcessorCompilation>true</MultiProcessorCompilation> <PreprocessKeepComments>false</PreprocessKeepComments> <StructMemberAlignment>Default</StructMemberAlignment> <Optimization>Disabled</Optimization> <DebugInformationFormat>EditAndContinue</DebugInformationFormat> </ClCompile> <Link> <SubSystem>Windows</SubSystem> <OutputFile>(OutDir)\(ProjectName).exe</OutputFile><AdditionalLibraryDirectories>(ProjectName).exe</OutputFile> <AdditionalLibraryDirectories>(QTDIR)\lib;C:\Users\myName\Documents\libs;C:\Users\myName\Documents\Visual Studio 2010\Projects\myLibrary\Release;C:\Users\myName\Documents\Visual Studio 2010\Projects\myLibrary\Win32\Release;C:\Users\myName\Documents\libs\ljit2;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
    <GenerateDebugInformation>true</GenerateDebugInformation>
    <AdditionalDependencies>Imm32.lib;Winmm.lib;ws2_32.lib;Libcmt.lib;qtmain.lib;QtCore.lib;QtGui.lib;QtNetwork.lib;QtXmlPatterns.lib;QtXml.lib;myLibary.lib;wbemuuid.lib;%(AdditionalDependencies)</AdditionalDependencies>
    <TurnOffAssemblyGeneration>false</TurnOffAssemblyGeneration>
    <SetChecksum>true</SetChecksum>
    <IgnoreSpecificDefaultLibraries>Libcmt.lib</IgnoreSpecificDefaultLibraries>
    <IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries>
    <GenerateMapFile>true</GenerateMapFile>
    <MapExports>true</MapExports>
    <AssemblyDebug>true</AssemblyDebug>
    <EnableCOMDATFolding>false</EnableCOMDATFolding>
    <OptimizeReferences>false</OptimizeReferences>
    <ForceFileOutput>MultiplyDefinedSymbolOnly</ForceFileOutput>
    <TargetMachine>NotSet</TargetMachine>
    </Link>
    <ProjectReference>
    <UseLibraryDependencyInputs>true</UseLibraryDependencyInputs>
    </ProjectReference>
    </ItemDefinitionGroup>
    <ItemGroup>
    <ClCompile Include="..\..\clientOverlay\clientOverlay\clientoverlay.cpp" />
    <ClCompile Include="addFileDialog.cpp" />
    <ClCompile Include="AnalyzerCooldownAbstract.cpp" />
    <ClCompile Include="AnalyzerCooldownClient.cpp" />
    <ClCompile Include="AnalyzerCooldownPotion.cpp" />
    <ClCompile Include="AnalyzerMessageBuffer.cpp" />
    <ClCompile Include="AnalyzerMessageListenerAbstract.cpp" />
    <ClCompile Include="AnalyzerMessageListenerAll.cpp" />
    <ClCompile Include="AnalyzerMessageListenerFail.cpp" />
    <ClCompile Include="AnalyzerMessageListenerLoot.cpp" />
    <ClCompile Include="AnalyzerMessageListenerNPC.cpp" />
    <ClCompile Include="AnalyzerMessageListenerStatusDoorFail.cpp" />
    <ClCompile Include="AnalyzerMessageListenerUsing.cpp" />
    <ClCompile Include="AnalyzerMessageListenerYouSee.cpp" />
    <ClCompile Include="AnalyzerModuleChat.cpp" />
    <ClCompile Include="AnalyzerModuleCooldown.cpp" />
    <ClCompile Include="BaseItem.cpp" />
    <ClCompile Include="Cavebot.cpp" />
    <ClCompile Include="CavebotAttacksItem.cpp" />
    <ClCompile Include="CavebotItem.cpp" />
    <ClCompile Include="CavebotLooter.cpp" />
    <ClCompile Include="CavebotMonstersItem.cpp" />
    <ClCompile Include="CavebotSmartWalker.cpp" />
    <ClCompile Include="CavebotTargettingRule.cpp" />
    <ClCompile Include="CavebotWalker.cpp" />
    <ClCompile Include="CavebotWalkerAbstract.cpp" />
    <ClCompile Include="CavebotWaypointAbstract.cpp" />
    <ClCompile Include="CavebotWaypointDoor.cpp" />
    <ClCompile Include="CavebotWaypointNode.cpp" />
    <ClCompile Include="CavebotWaypointPick.cpp" />
    <ClCompile Include="CavebotWaypointRope.cpp" />
    <ClCompile Include="CavebotWaypointShovel.cpp" />
    <ClCompile Include="CavebotWaypointStand.cpp" />
    <ClCompile Include="CavebotWaypointWeapon.cpp" />
    <ClCompile Include="chooseFileDialog.cpp" />
    <ClCompile Include="ConfigurationTree.cpp" />
    <ClCompile Include="ContainerHelper.cpp" />
    <ClCompile Include="deleteFileDialog.cpp" />
    <ClCompile Include="editFileDialog.cpp" />
    <ClCompile Include="Engine.cpp" />
    <ClCompile Include="EngineInstance.cpp" />
    <ClCompile Include="EngineModule.cpp" />
    <ClCompile Include="ExampleDelegate.cpp" />
    <ClCompile Include="ExportTradeData.cpp" />
    <ClCompile Include="ExportTradeGUI.cpp" />
    <ClCompile Include="FileIndexTreeItem.cpp" />
    <ClCompile Include="FileIndexTreeModel.cpp" />
    <ClCompile Include="FileListEntry.cpp" />
    <ClCompile Include="FileProxyModel.cpp" />
    <ClCompile Include="FolderProxyModel.cpp" />
    <ClCompile Include="GeneratedFiles\Debug\moc_addFileDialog.cpp">
    <ExcludedFromBuild Condition="'(Configuration)(Configuration)|(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
    </ClCompile>
    <ClCompile Include="GeneratedFiles\Debug\moc_AnalyzerCooldownAbstract.cpp">
    <ExcludedFromBuild Condition="'(Configuration)(Configuration)|(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
    </ClCompile>
    <ClCompile Include="GeneratedFiles\Debug\moc_AnalyzerCooldownPotion.cpp">
    <ExcludedFromBuild Condition="'(Configuration)(Configuration)|(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
    </ClCompile>
    <ClCompile Include="GeneratedFiles\Debug\moc_Cavebot.cpp">
    <ExcludedFromBuild Condition="'(Configuration)(Configuration)|(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
    </ClCompile>
    <ClCompile Include="GeneratedFiles\Debug\moc_chooseFileDialog.cpp">
    <ExcludedFromBuild Condition="'(Configuration)(Configuration)|(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
    </ClCompile>
    <ClCompile Include="GeneratedFiles\Debug\moc_clientoverlay.cpp">
    <ExcludedFromBuild Condition="'(Configuration)(Configuration)|(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
    </ClCompile>
    <ClCompile Include="GeneratedFiles\Debug\moc_deleteFileDialog.cpp">
    <ExcludedFromBuild Condition="'(Configuration)(Configuration)|(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
    </ClCompile>
    <ClCompile Include="GeneratedFiles\Debug\moc_editFileDialog.cpp">
    <ExcludedFromBuild Condition="'(Configuration)(Configuration)|(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
    </ClCompile>
    <ClCompile Include="GeneratedFiles\Debug\moc_Engine.cpp">
    <ExcludedFromBuild Condition="'(Configuration)(Configuration)|(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
    </ClCompile>
    <ClCompile Include="GeneratedFiles\Debug\moc_EngineInstance.cpp">
    <ExcludedFromBuild Condition="'(Configuration)(Configuration)|(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
    </ClCompile>
    <ClCompile Include="GeneratedFiles\Debug\moc_ExampleDelegate.cpp">
    <ExcludedFromBuild Condition="'(Configuration)(Configuration)|(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
    </ClCompile>
    <ClCompile Include="GeneratedFiles\Debug\moc_ExportTradeGUI.cpp">
    <ExcludedFromBuild Condition="'(Configuration)(Configuration)|(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
    </ClCompile>
    <ClCompile Include="GeneratedFiles\Debug\moc_FileIndexTreeModel.cpp">
    <ExcludedFromBuild Condition="'(Configuration)(Configuration)|(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
    </ClCompile>
    <ClCompile Include="GeneratedFiles\Debug\moc_FileProxyModel.cpp">
    <ExcludedFromBuild Condition="'(Configuration)(Configuration)|(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
    </ClCompile>
    <ClCompile Include="GeneratedFiles\Debug\moc_FolderProxyModel.cpp">
    <ExcludedFromBuild Condition="'(Configuration)(Configuration)|(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
    </ClCompile>
    <ClCompile Include="GeneratedFiles\Debug\moc_Healer.cpp">
    <ExcludedFromBuild Condition="'(Configuration)(Configuration)|(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
    </ClCompile>
    <ClCompile Include="GeneratedFiles\Debug\moc_HUD.cpp">
    <ExcludedFromBuild Condition="'(Configuration)(Configuration)|(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
    </ClCompile>
    <ClCompile Include="GeneratedFiles\Debug\moc_HudWidget.cpp">
    <ExcludedFromBuild Condition="'(Configuration)(Configuration)|(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
    </ClCompile>
    <ClCompile Include="GeneratedFiles\Debug\moc_ItemActionButton.cpp">
    <ExcludedFromBuild Condition="'(Configuration)(Configuration)|(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
    </ClCompile>
    <ClCompile Include="GeneratedFiles\Debug\moc_mapviewer.cpp">
    <ExcludedFromBuild Condition="'(Configuration)(Configuration)|(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
    </ClCompile>
    <ClCompile Include="GeneratedFiles\Debug\moc_OverlayUI.cpp">
    <ExcludedFromBuild Condition="'(Configuration)(Configuration)|(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
    </ClCompile>
    <ClCompile Include="GeneratedFiles\Debug\moc_MyApplication.cpp">
    <ExcludedFromBuild Condition="'(Configuration)(Configuration)|(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
    </ClCompile>
    <ClCompile Include="GeneratedFiles\Debug\moc_ProxyModel.cpp">
    <ExcludedFromBuild Condition="'(Configuration)(Configuration)|(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
    </ClCompile>
    <ClCompile Include="GeneratedFiles\Debug\moc_ScriptEditorUI.cpp">
    <ExcludedFromBuild Condition="'(Configuration)(Configuration)|(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
    </ClCompile>
    <ClCompile Include="GeneratedFiles\Debug\moc_TreeModel.cpp">
    <ExcludedFromBuild Condition="'(Configuration)(Configuration)|(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
    </ClCompile>
    <ClCompile Include="GeneratedFiles\Debug\moc_TreeviewDelegate.cpp">
    <ExcludedFromBuild Condition="'(Configuration)(Configuration)|(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
    </ClCompile>
    <ClCompile Include="GeneratedFiles\Debug\moc_UIChooseWidget.cpp">
    <ExcludedFromBuild Condition="'(Configuration)(Configuration)|(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
    </ClCompile>
    <ClCompile Include="GeneratedFiles\Debug\moc_unionui.cpp">
    <ExcludedFromBuild Condition="'(Configuration)(Configuration)|(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
    </ClCompile>
    <ClCompile Include="GeneratedFiles\qrc_unionui.cpp">
    <PrecompiledHeader Condition="'(Configuration)(Configuration)|(Platform)'=='Debug|Win32'">
    </PrecompiledHeader>
    <PrecompiledHeader Condition="'(Configuration)(Configuration)|(Platform)'=='Release|Win32'">
    </PrecompiledHeader>
    </ClCompile>
    <ClCompile Include="GeneratedFiles\Release\moc_addFileDialog.cpp">
    <ExcludedFromBuild Condition="'(Configuration)(Configuration)|(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
    </ClCompile>
    <ClCompile Include="GeneratedFiles\Release\moc_AnalyzerCooldownAbstract.cpp">
    <ExcludedFromBuild Condition="'(Configuration)(Configuration)|(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
    </ClCompile>
    <ClCompile Include="GeneratedFiles\Release\moc_AnalyzerCooldownPotion.cpp">
    <ExcludedFromBuild Condition="'(Configuration)(Configuration)|(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
    </ClCompile>
    <ClCompile Include="GeneratedFiles\Release\moc_Cavebot.cpp">
    <ExcludedFromBuild Condition="'(Configuration)(Configuration)|(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
    </ClCompile>
    <ClCompile Include="GeneratedFiles\Release\moc_chooseFileDialog.cpp">
    <ExcludedFromBuild Condition="'(Configuration)(Configuration)|(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
    </ClCompile>
    <ClCompile Include="GeneratedFiles\Release\moc_clientoverlay.cpp">
    <ExcludedFromBuild Condition="'(Configuration)(Configuration)|(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
    </ClCompile>
    <ClCompile Include="GeneratedFiles\Release\moc_deleteFileDialog.cpp">
    <ExcludedFromBuild Condition="'(Configuration)(Configuration)|(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
    </ClCompile>
    <ClCompile Include="GeneratedFiles\Release\moc_editFileDialog.cpp">
    <ExcludedFromBuild Condition="'(Configuration)(Configuration)|(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
    </ClCompile>
    <ClCompile Include="GeneratedFiles\Release\moc_Engine.cpp">
    <ExcludedFromBuild Condition="'(Configuration)(Configuration)|(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
    </ClCompile>
    <ClCompile Include="GeneratedFiles\Release\moc_EngineInstance.cpp">
    <ExcludedFromBuild Condition="'(Configuration)(Configuration)|(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
    </ClCompile>
    <ClCompile Include="GeneratedFiles\Release\moc_ExampleDelegate.cpp">
    <ExcludedFromBuild Condition="'(Configuration)(Configuration)|(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
    </ClCompile>
    <ClCompile Include="GeneratedFiles\Release\moc_ExportTradeGUI.cpp">
    <ExcludedFromBuild Condition="'(Configuration)(Configuration)|(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
    </ClCompile>
    <ClCompile Include="GeneratedFiles\Release\moc_FileIndexTreeModel.cpp">
    <ExcludedFromBuild Condition="'(Configuration)(Configuration)|(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
    </ClCompile>
    <ClCompile Include="GeneratedFiles\Release\moc_FileProxyModel.cpp">
    <ExcludedFromBuild Condition="'(Configuration)(Configuration)|(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
    </ClCompile>
    <ClCompile Include="GeneratedFiles\Release\moc_FolderProxyModel.cpp">
    <ExcludedFromBuild Condition="'(Configuration)(Configuration)|(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
    </ClCompile>
    <ClCompile Include="GeneratedFiles\Release\moc_Healer.cpp">
    <ExcludedFromBuild Condition="'(Configuration)(Configuration)|(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
    </ClCompile>
    <ClCompile Include="GeneratedFiles\Release\moc_HUD.cpp">
    <ExcludedFromBuild Condition="'(Configuration)(Configuration)|(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
    </ClCompile>
    <ClCompile Include="GeneratedFiles\Release\moc_HudWidget.cpp">
    <ExcludedFromBuild Condition="'(Configuration)(Configuration)|(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
    </ClCompile>
    <ClCompile Include="GeneratedFiles\Release\moc_ItemActionButton.cpp">
    <ExcludedFromBuild Condition="'(Configuration)(Configuration)|(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
    </ClCompile>
    <ClCompile Include="GeneratedFiles\Release\moc_mapviewer.cpp">
    <ExcludedFromBuild Condition="'(Configuration)(Configuration)|(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
    </ClCompile>
    <ClCompile Include="GeneratedFiles\Release\moc_OverlayUI.cpp">
    <ExcludedFromBuild Condition="'(Configuration)(Configuration)|(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
    </ClCompile>
    <ClCompile Include="GeneratedFiles\Release\moc_MyApplication.cpp">
    <ExcludedFromBuild Condition="'(Configuration)(Configuration)|(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
    </ClCompile>
    <ClCompile Include="GeneratedFiles\Release\moc_ProxyModel.cpp">
    <ExcludedFromBuild Condition="'(Configuration)(Configuration)|(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
    </ClCompile>
    <ClCompile Include="GeneratedFiles\Release\moc_ScriptEditorUI.cpp">
    <ExcludedFromBuild Condition="'(Configuration)(Configuration)|(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
    </ClCompile>
    <ClCompile Include="GeneratedFiles\Release\moc_TreeModel.cpp">
    <ExcludedFromBuild Condition="'(Configuration)(Configuration)|(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
    </ClCompile>
    <ClCompile Include="GeneratedFiles\Release\moc_TreeviewDelegate.cpp">
    <ExcludedFromBuild Condition="'(Configuration)(Configuration)|(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
    </ClCompile>
    <ClCompile Include="GeneratedFiles\Release\moc_UIChooseWidget.cpp">
    <ExcludedFromBuild Condition="'(Configuration)(Configuration)|(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
    </ClCompile>
    <ClCompile Include="GeneratedFiles\Release\moc_unionui.cpp">
    <ExcludedFromBuild Condition="'(Configuration)(Configuration)|(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
    </ClCompile>
    <ClCompile Include="Healer.cpp" />
    <ClCompile Include="HealerItem.cpp" />
    <ClCompile Include="HealerMethod.cpp" />
    <ClCompile Include="HealerRule.cpp" />
    <ClCompile Include="HealerRuleCooldownList.cpp" />
    <ClCompile Include="HealerRulesItem.cpp" />
    <ClCompile Include="HotkeyHelper.cpp" />
    <ClCompile Include="HUD.cpp" />
    <ClCompile Include="HudDockAnchor.cpp" />
    <ClCompile Include="HudWidget.cpp" />
    <ClCompile Include="HudWidgetObject.cpp" />
    <ClCompile Include="HudWidgetObjectRect.cpp" />
    <ClCompile Include="HudWidgetObjectText.cpp" />
    <ClCompile Include="ItemActionButton.cpp" />
    <ClCompile Include="LuaFunctionsHUD.cpp" />
    <ClCompile Include="LuaInstance.cpp" />
    <ClCompile Include="LuaScript.cpp" />
    <ClCompile Include="main.cpp" />
    <ClCompile Include="mapviewer.cpp" />
    <ClCompile Include="MinimapTile.cpp" />
    <ClCompile Include="OverlayUI.cpp" />
    <ClCompile Include="PathFinder.cpp" />
    <ClCompile Include="MyApplication.cpp" />
    <ClCompile Include="ProxyModel.cpp" />
    <ClCompile Include="ScriptEditorUI.cpp" />
    <ClCompile Include="stdafx.cpp">
    <PrecompiledHeader Condition="'(Configuration)(Configuration)|(Platform)'=='Debug|Win32'">Create</PrecompiledHeader>
    <PrecompiledHeader Condition="'(Configuration)(Configuration)|(Platform)'=='Release|Win32'">Create</PrecompiledHeader>
    </ClCompile>
    <ClCompile Include="TreeItem.cpp" />
    <ClCompile Include="TreeModel.cpp" />
    <ClCompile Include="TreeviewDelegate.cpp" />
    <ClCompile Include="UIChooseWidget.cpp" />
    <ClCompile Include="UILabel.cpp" />
    <ClCompile Include="unionui.cpp" />
    <ClCompile Include="UtilDatHelper.cpp" />
    <ClCompile Include="UtilGUIHelper.cpp" />
    </ItemGroup>
    <ItemGroup>
    <CustomBuild Include="..\..\clientOverlay\clientOverlay\clientoverlay.h">
    <AdditionalInputs Condition="'(Configuration)(Configuration)|(Platform)'=='Debug|Win32'">(QTDIR)\\bin\\moc.exe;%(FullPath) Moc%27ing clientoverlay.h... .\\GeneratedFiles\\(ConfigurationName)\moc_%(Filename).cpp</Outputs>
    <Command Condition="'(Configuration)(Configuration)|(Platform)'=='Debug|Win32'">"(QTDIR)\\bin\\moc.exe" "%(FullPath)" -o ".\\GeneratedFiles\\(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_XML_LIB -D_HAS_ITERATOR_DEBUGGING=1 -D_ITERATOR_DEBUG_LEVEL=2 "-I.\GeneratedFiles" "-I." "-I(QTDIR)\\include" "-I.\\GeneratedFiles\\(ConfigurationName)\." "-I(QTDIR)\\include\\QtCore" "-I(QTDIR)\include\QtGui" "-I(QTDIR)\\include\\QtNetwork" "-I(QTDIR)\include\QtXml" "-IC:\Users\myName\Documents\libs" "-fStdAfx.h" "-f../../../../clientOverlay/clientOverlay/clientoverlay.h"</Command>
    <AdditionalInputs Condition="'(Configuration)(Configuration)|(Platform)'=='Release|Win32'">(QTDIR)\\bin\\moc.exe;%(FullPath) Moc%27ing clientoverlay.h... .\\GeneratedFiles\\(ConfigurationName)\moc_%(Filename).cpp</Outputs>
    <Command Condition="'(Configuration)(Configuration)|(Platform)'=='Release|Win32'">"(QTDIR)\\bin\\moc.exe" "%(FullPath)" -o ".\\GeneratedFiles\\(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_XML_LIB "-I.\GeneratedFiles" "-I." "-I(QTDIR)\\include" "-I.\\GeneratedFiles\\(ConfigurationName)\." "-I(QTDIR)\\include\\QtCore" "-I(QTDIR)\include\QtGui" "-I(QTDIR)\\include\\QtNetwork" "-I(QTDIR)\include\QtXml" "-IC:\Users\myName\Documents\libs" "-fStdAfx.h" "-f../../../../clientOverlay/clientOverlay/clientoverlay.h"</Command>
    </CustomBuild>
    <CustomBuild Include="addFileDialog.h">
    <AdditionalInputs Condition="'(Configuration)(Configuration)|(Platform)'=='Debug|Win32'">(QTDIR)\\bin\\moc.exe;%(FullPath) Moc%27ing addFileDialog.h... .\\GeneratedFiles\\(ConfigurationName)\moc_%(Filename).cpp</Outputs>
    <Command Condition="'(Configuration)(Configuration)|(Platform)'=='Debug|Win32'">"(QTDIR)\\bin\\moc.exe" "%(FullPath)" -o ".\\GeneratedFiles\\(ConfigurationName)\moc_%(Filename).cpp" "-fStdAfx.h" "-f../../addFileDialog.h" -DUNICODE -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_XML_LIB -D_HAS_ITERATOR_DEBUGGING=1 -D_ITERATOR_DEBUG_LEVEL=2 "-I.\GeneratedFiles" "-I." "-I(QTDIR)\\include" "-I.\\GeneratedFiles\\(ConfigurationName)\." "-I(QTDIR)\\include\\QtCore" "-I(QTDIR)\include\QtGui" "-I(QTDIR)\\include\\QtNetwork" "-I(QTDIR)\include\QtXml" "-IC:\Users\myName\Documents\libs"</Command>
    <AdditionalInputs Condition="'(Configuration)(Configuration)|(Platform)'=='Release|Win32'">(QTDIR)\\bin\\moc.exe;%(FullPath) Moc%27ing addFileDialog.h... .\\GeneratedFiles\\(ConfigurationName)\moc_%(Filename).cpp</Outputs>
    <Command Condition="'(Configuration)(Configuration)|(Platform)'=='Release|Win32'">"(QTDIR)\\bin\\moc.exe" "%(FullPath)" -o ".\\GeneratedFiles\\(ConfigurationName)\moc_%(Filename).cpp" "-fStdAfx.h" "-f../../addFileDialog.h" -DUNICODE -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_XML_LIB "-I.\GeneratedFiles" "-I." "-I(QTDIR)\\include" "-I.\\GeneratedFiles\\(ConfigurationName)\." "-I(QTDIR)\\include\\QtCore" "-I(QTDIR)\include\QtGui" "-I(QTDIR)\\include\\QtNetwork" "-I(QTDIR)\include\QtXml" "-IC:\Users\myName\Documents\libs"</Command>
    </CustomBuild>
    <ClInclude Include="addresses.h" />
    <CustomBuild Include="AnalyzerCooldownAbstract.h">
    <AdditionalInputs Condition="'(Configuration)(Configuration)|(Platform)'=='Debug|Win32'">(QTDIR)\\bin\\moc.exe;%(FullPath) Moc%27ing AnalyzerCooldownAbstract.h... .\\GeneratedFiles\\(ConfigurationName)\moc_%(Filename).cpp</Outputs>
    <Command Condition="'(Configuration)(Configuration)|(Platform)'=='Debug|Win32'">"(QTDIR)\\bin\\moc.exe" "%(FullPath)" -o ".\\GeneratedFiles\\(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_XML_LIB -D_HAS_ITERATOR_DEBUGGING=1 -D_ITERATOR_DEBUG_LEVEL=2 "-I.\GeneratedFiles" "-I." "-I(QTDIR)\\include" "-I.\\GeneratedFiles\\(ConfigurationName)\." "-I(QTDIR)\\include\\QtCore" "-I(QTDIR)\include\QtGui" "-I(QTDIR)\\include\\QtNetwork" "-I(QTDIR)\include\QtXml" "-IC:\Users\myName\Documents\libs" "-fStdAfx.h" "-f../../AnalyzerCooldownAbstract.h"</Command>
    <AdditionalInputs Condition="'(Configuration)(Configuration)|(Platform)'=='Release|Win32'">(QTDIR)\\bin\\moc.exe;%(FullPath) Moc%27ing AnalyzerCooldownAbstract.h... .\\GeneratedFiles\\(ConfigurationName)\moc_%(Filename).cpp</Outputs>
    <Command Condition="'(Configuration)(Configuration)|(Platform)'=='Release|Win32'">"(QTDIR)\\bin\\moc.exe" "%(FullPath)" -o ".\\GeneratedFiles\\(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_XML_LIB "-I.\GeneratedFiles" "-I." "-I(QTDIR)\\include" "-I.\\GeneratedFiles\\(ConfigurationName)\." "-I(QTDIR)\\include\\QtCore" "-I(QTDIR)\include\QtGui" "-I(QTDIR)\\include\\QtNetwork" "-I(QTDIR)\include\QtXml" "-IC:\Users\myName\Documents\libs" "-fStdAfx.h" "-f../../AnalyzerCooldownAbstract.h"</Command>
    </CustomBuild>
    <ClInclude Include="AnalyzerCooldownClient.h" />
    <CustomBuild Include="AnalyzerCooldownPotion.h">
    <AdditionalInputs Condition="'(Configuration)(Configuration)|(Platform)'=='Debug|Win32'">(QTDIR)\\bin\\moc.exe;%(FullPath) Moc%27ing AnalyzerCooldownPotion.h... .\\GeneratedFiles\\(ConfigurationName)\moc_%(Filename).cpp</Outputs>
    <Command Condition="'(Configuration)(Configuration)|(Platform)'=='Debug|Win32'">"(QTDIR)\\bin\\moc.exe" "%(FullPath)" -o ".\\GeneratedFiles\\(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_XML_LIB -D_HAS_ITERATOR_DEBUGGING=1 -D_ITERATOR_DEBUG_LEVEL=2 "-I.\GeneratedFiles" "-I." "-I(QTDIR)\\include" "-I.\\GeneratedFiles\\(ConfigurationName)\." "-I(QTDIR)\\include\\QtCore" "-I(QTDIR)\include\QtGui" "-I(QTDIR)\\include\\QtNetwork" "-I(QTDIR)\include\QtXml" "-IC:\Users\myName\Documents\libs" "-fStdAfx.h" "-f../../AnalyzerCooldownPotion.h"</Command>
    <AdditionalInputs Condition="'(Configuration)(Configuration)|(Platform)'=='Release|Win32'">(QTDIR)\\bin\\moc.exe;%(FullPath) Moc%27ing AnalyzerCooldownPotion.h... .\\GeneratedFiles\\(ConfigurationName)\moc_%(Filename).cpp</Outputs>
    <Command Condition="'(Configuration)(Configuration)|(Platform)'=='Release|Win32'">"(QTDIR)\\bin\\moc.exe" "%(FullPath)" -o ".\\GeneratedFiles\\(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_XML_LIB "-I.\GeneratedFiles" "-I." "-I(QTDIR)\\include" "-I.\\GeneratedFiles\\(ConfigurationName)\." "-I(QTDIR)\\include\\QtCore" "-I(QTDIR)\include\QtGui" "-I(QTDIR)\\include\\QtNetwork" "-I(QTDIR)\include\QtXml" "-IC:\Users\myName\Documents\libs" "-fStdAfx.h" "-f../../AnalyzerCooldownPotion.h"</Command>
    </CustomBuild>
    <ClInclude Include="AnalyzerMessageBuffer.h" />
    <ClInclude Include="AnalyzerMessageListenerAbstract.h" />
    <ClInclude Include="AnalyzerMessageListenerAll.h" />
    <ClInclude Include="AnalyzerMessageListenerFail.h" />
    <ClInclude Include="AnalyzerMessageListenerLoot.h" />
    <ClInclude Include="AnalyzerMessageListenerNPC.h" />
    <ClInclude Include="AnalyzerMessageListenerStatusDoorFail.h" />
    <ClInclude Include="AnalyzerMessageListenerUsing.h" />
    <ClInclude Include="AnalyzerMessageListenerYouSee.h" />
    <ClInclude Include="AnalyzerModuleChat.h" />
    <ClInclude Include="AnalyzerModuleCooldown.h" />
    <ClInclude Include="BaseItem.h" />
    <ClInclude Include="CavebotWaypointDoor.h" />
    <ClInclude Include="CavebotWaypointNode.h" />
    <ClInclude Include="CavebotWaypointPick.h" />
    <ClInclude Include="CavebotWaypointRope.h" />
    <ClInclude Include="CavebotWaypointShovel.h" />
    <ClInclude Include="CavebotWaypointWeapon.h" />
    <CustomBuild Include="chooseFileDialog.h">
    <AdditionalInputs Condition="'(Configuration)(Configuration)|(Platform)'=='Debug|Win32'">(QTDIR)\\bin\\moc.exe;%(FullPath) Moc%27ing chooseFileDialog.h... .\\GeneratedFiles\\(ConfigurationName)\moc_%(Filename).cpp</Outputs>
    <Command Condition="'(Configuration)(Configuration)|(Platform)'=='Debug|Win32'">"(QTDIR)\\bin\\moc.exe" "%(FullPath)" -o ".\\GeneratedFiles\\(ConfigurationName)\moc_%(Filename).cpp" "-fStdAfx.h" "-f../../chooseFileDialog.h" -DUNICODE -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_XML_LIB -D_HAS_ITERATOR_DEBUGGING=1 -D_ITERATOR_DEBUG_LEVEL=2 "-I.\GeneratedFiles" "-I." "-I(QTDIR)\\include" "-I.\\GeneratedFiles\\(ConfigurationName)\." "-I(QTDIR)\\include\\QtCore" "-I(QTDIR)\include\QtGui" "-I(QTDIR)\\include\\QtNetwork" "-I(QTDIR)\include\QtXml" "-IC:\Users\myName\Documents\libs"</Command>
    <AdditionalInputs Condition="'(Configuration)(Configuration)|(Platform)'=='Release|Win32'">(QTDIR)\\bin\\moc.exe;%(FullPath) Moc%27ing chooseFileDialog.h... .\\GeneratedFiles\\(ConfigurationName)\moc_%(Filename).cpp</Outputs>
    <Command Condition="'(Configuration)(Configuration)|(Platform)'=='Release|Win32'">"(QTDIR)\\bin\\moc.exe" "%(FullPath)" -o ".\\GeneratedFiles\\(ConfigurationName)\moc_%(Filename).cpp" "-fStdAfx.h" "-f../../chooseFileDialog.h" -DUNICODE -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_XML_LIB "-I.\GeneratedFiles" "-I." "-I(QTDIR)\\include" "-I.\\GeneratedFiles\\(ConfigurationName)\." "-I(QTDIR)\\include\\QtCore" "-I(QTDIR)\include\QtGui" "-I(QTDIR)\\include\\QtNetwork" "-I(QTDIR)\include\QtXml" "-IC:\Users\myName\Documents\libs"</Command>
    </CustomBuild>
    <ClInclude Include="ContainerHelper.h" />
    <CustomBuild Include="MyApplication.h">
    <AdditionalInputs Condition="'(Configuration)(Configuration)|(Platform)'=='Debug|Win32'">(QTDIR)\\bin\\moc.exe;%(FullPath) Moc%27ing MyApplication.h... .\\GeneratedFiles\\(ConfigurationName)\moc_%(Filename).cpp</Outputs>
    <Command Condition="'(Configuration)(Configuration)|(Platform)'=='Debug|Win32'">"(QTDIR)\\bin\\moc.exe" "%(FullPath)" -o ".\\GeneratedFiles\\(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_XML_LIB -D_HAS_ITERATOR_DEBUGGING=1 -D_ITERATOR_DEBUG_LEVEL=2 "-I.\GeneratedFiles" "-I." "-I(QTDIR)\\include" "-I.\\GeneratedFiles\\(ConfigurationName)\." "-I(QTDIR)\\include\\QtCore" "-I(QTDIR)\include\QtGui" "-I(QTDIR)\\include\\QtNetwork" "-I(QTDIR)\include\QtXml" "-IC:\Users\myName\Documents\libs" "-fStdAfx.h" "-f../../MyApplication.h"</Command>
    <AdditionalInputs Condition="'(Configuration)(Configuration)|(Platform)'=='Release|Win32'">(QTDIR)\\bin\\moc.exe;%(FullPath) Moc%27ing MyApplication.h... .\\GeneratedFiles\\(ConfigurationName)\moc_%(Filename).cpp</Outputs>
    <Command Condition="'(Configuration)(Configuration)|(Platform)'=='Release|Win32'">"(QTDIR)\\bin\\moc.exe" "%(FullPath)" -o ".\\GeneratedFiles\\(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_XML_LIB "-I.\GeneratedFiles" "-I." "-I(QTDIR)\\include" "-I.\\GeneratedFiles\\(ConfigurationName)\." "-I(QTDIR)\\include\\QtCore" "-I(QTDIR)\include\QtGui" "-I(QTDIR)\\include\\QtNetwork" "-I(QTDIR)\include\QtXml" "-IC:\Users\myName\Documents\libs" "-fStdAfx.h" "-f../../MyApplication.h"</Command>
    </CustomBuild>
    <CustomBuild Include="editFileDialog.h">
    <AdditionalInputs Condition="'(Configuration)(Configuration)|(Platform)'=='Debug|Win32'">(QTDIR)\\bin\\moc.exe;%(FullPath) Moc%27ing editFileDialog.h... .\\GeneratedFiles\\(ConfigurationName)\moc_%(Filename).cpp</Outputs>
    <Command Condition="'(Configuration)(Configuration)|(Platform)'=='Debug|Win32'">"(QTDIR)\\bin\\moc.exe" "%(FullPath)" -o ".\\GeneratedFiles\\(ConfigurationName)\moc_%(Filename).cpp" "-fStdAfx.h" "-f../../editFileDialog.h" -DUNICODE -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_XML_LIB -D_HAS_ITERATOR_DEBUGGING=1 -D_ITERATOR_DEBUG_LEVEL=2 "-I.\GeneratedFiles" "-I." "-I(QTDIR)\\include" "-I.\\GeneratedFiles\\(ConfigurationName)\." "-I(QTDIR)\\include\\QtCore" "-I(QTDIR)\include\QtGui" "-I(QTDIR)\\include\\QtNetwork" "-I(QTDIR)\include\QtXml" "-IC:\Users\myName\Documents\libs"</Command>
    <AdditionalInputs Condition="'(Configuration)(Configuration)|(Platform)'=='Release|Win32'">(QTDIR)\\bin\\moc.exe;%(FullPath) Moc%27ing editFileDialog.h... .\\GeneratedFiles\\(ConfigurationName)\moc_%(Filename).cpp</Outputs>
    <Command Condition="'(Configuration)(Configuration)|(Platform)'=='Release|Win32'">"(QTDIR)\\bin\\moc.exe" "%(FullPath)" -o ".\\GeneratedFiles\\(ConfigurationName)\moc_%(Filename).cpp" "-fStdAfx.h" "-f../../editFileDialog.h" -DUNICODE -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_XML_LIB "-I.\GeneratedFiles" "-I." "-I(QTDIR)\\include" "-I.\\GeneratedFiles\\(ConfigurationName)\." "-I(QTDIR)\\include\\QtCore" "-I(QTDIR)\include\QtGui" "-I(QTDIR)\\include\\QtNetwork" "-I(QTDIR)\include\QtXml" "-IC:\Users\myName\Documents\libs"</Command>
    </CustomBuild>
    <CustomBuild Include="deleteFileDialog.h">
    <AdditionalInputs Condition="'(Configuration)(Configuration)|(Platform)'=='Debug|Win32'">(QTDIR)\\bin\\moc.exe;%(FullPath) Moc%27ing deleteFileDialog.h... .\\GeneratedFiles\\(ConfigurationName)\moc_%(Filename).cpp</Outputs>
    <Command Condition="'(Configuration)(Configuration)|(Platform)'=='Debug|Win32'">"(QTDIR)\\bin\\moc.exe" "%(FullPath)" -o ".\\GeneratedFiles\\(ConfigurationName)\moc_%(Filename).cpp" "-fStdAfx.h" "-f../../deleteFileDialog.h" -DUNICODE -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_XML_LIB -D_HAS_ITERATOR_DEBUGGING=1 -D_ITERATOR_DEBUG_LEVEL=2 "-I.\GeneratedFiles" "-I." "-I(QTDIR)\\include" "-I.\\GeneratedFiles\\(ConfigurationName)\." "-I(QTDIR)\\include\\QtCore" "-I(QTDIR)\include\QtGui" "-I(QTDIR)\\include\\QtNetwork" "-I(QTDIR)\include\QtXml" "-IC:\Users\myName\Documents\libs"</Command>
    <AdditionalInputs Condition="'(Configuration)(Configuration)|(Platform)'=='Release|Win32'">(QTDIR)\\bin\\moc.exe;%(FullPath) Moc%27ing deleteFileDialog.h... .\\GeneratedFiles\\(ConfigurationName)\moc_%(Filename).cpp</Outputs>
    <Command Condition="'(Configuration)(Configuration)|(Platform)'=='Release|Win32'">"(QTDIR)\\bin\\moc.exe" "%(FullPath)" -o ".\\GeneratedFiles\\(ConfigurationName)\moc_%(Filename).cpp" "-fStdAfx.h" "-f../../deleteFileDialog.h" -DUNICODE -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_XML_LIB "-I.\GeneratedFiles" "-I." "-I(QTDIR)\\include" "-I.\\GeneratedFiles\\(ConfigurationName)\." "-I(QTDIR)\\include\\QtCore" "-I(QTDIR)\include\QtGui" "-I(QTDIR)\\include\\QtNetwork" "-I(QTDIR)\include\QtXml" "-IC:\Users\myName\Documents\libs"</Command>
    </CustomBuild>
    <ClInclude Include="ExportTradeData.h" />
    <CustomBuild Include="ExportTradeGUI.h">
    <AdditionalInputs Condition="'(Configuration)(Configuration)|(Platform)'=='Debug|Win32'">(QTDIR)\\bin\\moc.exe;%(FullPath) Moc%27ing ExportTradeGUI.h... .\\GeneratedFiles\\(ConfigurationName)\moc_%(Filename).cpp</Outputs>
    <Command Condition="'(Configuration)(Configuration)|(Platform)'=='Debug|Win32'">"(QTDIR)\\bin\\moc.exe" "%(FullPath)" -o ".\\GeneratedFiles\\(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_XML_LIB -D_HAS_ITERATOR_DEBUGGING=1 -D_ITERATOR_DEBUG_LEVEL=2 "-I.\GeneratedFiles" "-I." "-I(QTDIR)\\include" "-I.\\GeneratedFiles\\(ConfigurationName)\." "-I(QTDIR)\\include\\QtCore" "-I(QTDIR)\include\QtGui" "-I(QTDIR)\\include\\QtNetwork" "-I(QTDIR)\include\QtXml" "-IC:\Users\myName\Documents\libs" "-fStdAfx.h" "-f../../ExportTradeGUI.h"</Command>
    <AdditionalInputs Condition="'(Configuration)(Configuration)|(Platform)'=='Release|Win32'">(QTDIR)\\bin\\moc.exe;%(FullPath) Moc%27ing ExportTradeGUI.h... .\\GeneratedFiles\\(ConfigurationName)\moc_%(Filename).cpp</Outputs>
    <Command Condition="'(Configuration)(Configuration)|(Platform)'=='Release|Win32'">"(QTDIR)\\bin\\moc.exe" "%(FullPath)" -o ".\\GeneratedFiles\\(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_XML_LIB "-I.\GeneratedFiles" "-I." "-I(QTDIR)\\include" "-I.\\GeneratedFiles\\(ConfigurationName)\." "-I(QTDIR)\\include\\QtCore" "-I(QTDIR)\include\QtGui" "-I(QTDIR)\\include\\QtNetwork" "-I(QTDIR)\include\QtXml" "-IC:\Users\myName\Documents\libs" "-fStdAfx.h" "-f../../ExportTradeGUI.h"</Command>
    </CustomBuild>
    <ClInclude Include="FileIndexTreeItem.h" />
    <CustomBuild Include="FileIndexTreeModel.h">
    <AdditionalInputs Condition="'(Configuration)(Configuration)|(Platform)'=='Debug|Win32'">(QTDIR)\\bin\\moc.exe;%(FullPath) Moc%27ing FileIndexTreeModel.h... .\\GeneratedFiles\\(ConfigurationName)\moc_%(Filename).cpp</Outputs>
    <Command Condition="'(Configuration)(Configuration)|(Platform)'=='Debug|Win32'">"(QTDIR)\\bin\\moc.exe" "%(FullPath)" -o ".\\GeneratedFiles\\(ConfigurationName)\moc_%(Filename).cpp" "-fStdAfx.h" "-f../../FileIndexTreeModel.h" -DUNICODE -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_XML_LIB -D_HAS_ITERATOR_DEBUGGING=1 -D_ITERATOR_DEBUG_LEVEL=2 "-I.\GeneratedFiles" "-I." "-I(QTDIR)\\include" "-I.\\GeneratedFiles\\(ConfigurationName)\." "-I(QTDIR)\\include\\QtCore" "-I(QTDIR)\include\QtGui" "-I(QTDIR)\\include\\QtNetwork" "-I(QTDIR)\include\QtXml" "-IC:\Users\myName\Documents\libs"</Command>
    <AdditionalInputs Condition="'(Configuration)(Configuration)|(Platform)'=='Release|Win32'">(QTDIR)\\bin\\moc.exe;%(FullPath) Moc%27ing FileIndexTreeModel.h... .\\GeneratedFiles\\(ConfigurationName)\moc_%(Filename).cpp</Outputs>
    <Command Condition="'(Configuration)(Configuration)|(Platform)'=='Release|Win32'">"(QTDIR)\\bin\\moc.exe" "%(FullPath)" -o ".\\GeneratedFiles\\(ConfigurationName)\moc_%(Filename).cpp" "-fStdAfx.h" "-f../../FileIndexTreeModel.h" -DUNICODE -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_XML_LIB "-I.\GeneratedFiles" "-I." "-I(QTDIR)\\include" "-I.\\GeneratedFiles\\(ConfigurationName)\." "-I(QTDIR)\\include\\QtCore" "-I(QTDIR)\include\QtGui" "-I(QTDIR)\\include\\QtNetwork" "-I(QTDIR)\include\QtXml" "-IC:\Users\myName\Documents\libs"</Command>
    </CustomBuild>
    <ClInclude Include="FileListEntry.h" />
    <CustomBuild Include="FolderProxyModel.h">
    <AdditionalInputs Condition="'(Configuration)(Configuration)|(Platform)'=='Debug|Win32'">(QTDIR)\\bin\\moc.exe;%(FullPath) Moc%27ing FolderProxyModel.h... .\\GeneratedFiles\\(ConfigurationName)\moc_%(Filename).cpp</Outputs>
    <Command Condition="'(Configuration)(Configuration)|(Platform)'=='Debug|Win32'">"(QTDIR)\\bin\\moc.exe" "%(FullPath)" -o ".\\GeneratedFiles\\(ConfigurationName)\moc_%(Filename).cpp" "-fStdAfx.h" "-f../../FolderProxyModel.h" -DUNICODE -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_XML_LIB -D_HAS_ITERATOR_DEBUGGING=1 -D_ITERATOR_DEBUG_LEVEL=2 "-I.\GeneratedFiles" "-I." "-I(QTDIR)\\include" "-I.\\GeneratedFiles\\(ConfigurationName)\." "-I(QTDIR)\\include\\QtCore" "-I(QTDIR)\include\QtGui" "-I(QTDIR)\\include\\QtNetwork" "-I(QTDIR)\include\QtXml" "-IC:\Users\myName\Documents\libs"</Command>
    <AdditionalInputs Condition="'(Configuration)(Configuration)|(Platform)'=='Release|Win32'">(QTDIR)\\bin\\moc.exe;%(FullPath) Moc%27ing FolderProxyModel.h... .\\GeneratedFiles\\(ConfigurationName)\moc_%(Filename).cpp</Outputs>
    <Command Condition="'(Configuration)(Configuration)|(Platform)'=='Release|Win32'">"(QTDIR)\\bin\\moc.exe" "%(FullPath)" -o ".\\GeneratedFiles\\(ConfigurationName)\moc_%(Filename).cpp" "-fStdAfx.h" "-f../../FolderProxyModel.h" -DUNICODE -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_XML_LIB "-I.\GeneratedFiles" "-I." "-I(QTDIR)\\include" "-I.\\GeneratedFiles\\(ConfigurationName)\." "-I(QTDIR)\\include\\QtCore" "-I(QTDIR)\include\QtGui" "-I(QTDIR)\\include\\QtNetwork" "-I(QTDIR)\include\QtXml" "-IC:\Users\myName\Documents\libs"</Command>
    </CustomBuild>
    <CustomBuild Include="FileProxyModel.h">
    <AdditionalInputs Condition="'(Configuration)(Configuration)|(Platform)'=='Debug|Win32'">(QTDIR)\\bin\\moc.exe;%(FullPath) Moc%27ing FileProxyModel.h... .\\GeneratedFiles\\(ConfigurationName)\moc_%(Filename).cpp</Outputs>
    <Command Condition="'(Configuration)(Configuration)|(Platform)'=='Debug|Win32'">"(QTDIR)\\bin\\moc.exe" "%(FullPath)" -o ".\\GeneratedFiles\\(ConfigurationName)\moc_%(Filename).cpp" "-fStdAfx.h" "-f../../FileProxyModel.h" -DUNICODE -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_XML_LIB -D_HAS_ITERATOR_DEBUGGING=1 -D_ITERATOR_DEBUG_LEVEL=2 "-I.\GeneratedFiles" "-I." "-I(QTDIR)\\include" "-I.\\GeneratedFiles\\(ConfigurationName)\." "-I(QTDIR)\\include\\QtCore" "-I(QTDIR)\include\QtGui" "-I(QTDIR)\\include\\QtNetwork" "-I(QTDIR)\include\QtXml" "-IC:\Users\myName\Documents\libs"</Command>
    <AdditionalInputs Condition="'(Configuration)(Configuration)|(Platform)'=='Release|Win32'">(QTDIR)\\bin\\moc.exe;%(FullPath) Moc%27ing FileProxyModel.h... .\\GeneratedFiles\\(ConfigurationName)\moc_%(Filename).cpp</Outputs>
    <Command Condition="'(Configuration)(Configuration)|(Platform)'=='Release|Win32'">"(QTDIR)\\bin\\moc.exe" "%(FullPath)" -o ".\\GeneratedFiles\\(ConfigurationName)\moc_%(Filename).cpp" "-fStdAfx.h" "-f../../FileProxyModel.h" -DUNICODE -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_XML_LIB "-I.\GeneratedFiles" "-I." "-I(QTDIR)\\include" "-I.\\GeneratedFiles\\(ConfigurationName)\." "-I(QTDIR)\\include\\QtCore" "-I(QTDIR)\include\QtGui" "-I(QTDIR)\\include\\QtNetwork" "-I(QTDIR)\include\QtXml" "-IC:\Users\myName\Documents\libs"</Command>
    </CustomBuild>
    <ClInclude Include="GeneratedFiles\ui_backup_chooseFileDialog.h" />
    <ClInclude Include="GeneratedFiles\ui_chooseFileDialog.h" />
    <ClInclude Include="GeneratedFiles\ui_chooseFileDialog_AddFile.h" />
    <ClInclude Include="GeneratedFiles\ui_chooseFileDialog_DeleteFile.h" />
    <ClInclude Include="GeneratedFiles\ui_chooseFileDialog_EditFile.h" />
    <ClInclude Include="GeneratedFiles\ui_clientoverlay.h" />
    <ClInclude Include="GeneratedFiles\ui_fileDialog.h" />
    <ClInclude Include="GeneratedFiles\ui_market2.h" />
    <ClInclude Include="GeneratedFiles\ui_ScriptEditor.h" />
    <ClInclude Include="GeneratedFiles\ui_TradeExportUI.h" />
    <ClInclude Include="HealerRuleCooldownList.h" />
    <CustomBuild Include="HUD.h">
    <AdditionalInputs Condition="'(Configuration)(Configuration)|(Platform)'=='Debug|Win32'">(QTDIR)\\bin\\moc.exe;%(FullPath) Moc%27ing HUD.h... .\\GeneratedFiles\\(ConfigurationName)\moc_%(Filename).cpp</Outputs>
    <Command Condition="'(Configuration)(Configuration)|(Platform)'=='Debug|Win32'">"(QTDIR)\\bin\\moc.exe" "%(FullPath)" -o ".\\GeneratedFiles\\(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_XML_LIB -D_HAS_ITERATOR_DEBUGGING=1 -D_ITERATOR_DEBUG_LEVEL=2 "-I.\GeneratedFiles" "-I." "-I(QTDIR)\\include" "-I.\\GeneratedFiles\\(ConfigurationName)\." "-I(QTDIR)\\include\\QtCore" "-I(QTDIR)\include\QtGui" "-I(QTDIR)\\include\\QtNetwork" "-I(QTDIR)\include\QtXml" "-IC:\Users\myName\Documents\libs" "-fStdAfx.h" "-f../../HUD.h"</Command>
    <AdditionalInputs Condition="'(Configuration)(Configuration)|(Platform)'=='Release|Win32'">(QTDIR)\\bin\\moc.exe;%(FullPath) Moc%27ing HUD.h... .\\GeneratedFiles\\(ConfigurationName)\moc_%(Filename).cpp</Outputs>
    <Command Condition="'(Configuration)(Configuration)|(Platform)'=='Release|Win32'">"(QTDIR)\\bin\\moc.exe" "%(FullPath)" -o ".\\GeneratedFiles\\(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_XML_LIB "-I.\GeneratedFiles" "-I." "-I(QTDIR)\\include" "-I.\\GeneratedFiles\\(ConfigurationName)\." "-I(QTDIR)\\include\\QtCore" "-I(QTDIR)\include\QtGui" "-I(QTDIR)\\include\\QtNetwork" "-I(QTDIR)\include\QtXml" "-IC:\Users\myName\Documents\libs" "-fStdAfx.h" "-f../../HUD.h"</Command>
    </CustomBuild>
    <CustomBuild Include="ScriptEditorUI.h">
    <AdditionalInputs Condition="'(Configuration)(Configuration)|(Platform)'=='Debug|Win32'">(QTDIR)\\bin\\moc.exe;%(FullPath) Moc%27ing ScriptEditorUI.h... .\\GeneratedFiles\\(ConfigurationName)\moc_%(Filename).cpp</Outputs>
    <Command Condition="'(Configuration)(Configuration)|(Platform)'=='Debug|Win32'">"(QTDIR)\\bin\\moc.exe" "%(FullPath)" -o ".\\GeneratedFiles\\(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_XML_LIB -D_HAS_ITERATOR_DEBUGGING=1 -D_ITERATOR_DEBUG_LEVEL=2 "-I.\GeneratedFiles" "-I." "-I(QTDIR)\\include" "-I.\\GeneratedFiles\\(ConfigurationName)\." "-I(QTDIR)\\include\\QtCore" "-I(QTDIR)\include\QtGui" "-I(QTDIR)\\include\\QtNetwork" "-I(QTDIR)\include\QtXml" "-IC:\Users\myName\Documents\libs" "-fStdAfx.h" "-f../../ScriptEditorUI.h"</Command>
    <AdditionalInputs Condition="'(Configuration)(Configuration)|(Platform)'=='Release|Win32'">(QTDIR)\\bin\\moc.exe;%(FullPath) Moc%27ing ScriptEditorUI.h... .\\GeneratedFiles\\(ConfigurationName)\moc_%(Filename).cpp</Outputs>
    <Command Condition="'(Configuration)(Configuration)|(Platform)'=='Release|Win32'">"(QTDIR)\\bin\\moc.exe" "%(FullPath)" -o ".\\GeneratedFiles\\(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_XML_LIB "-I.\GeneratedFiles" "-I." "-I(QTDIR)\\include" "-I.\\GeneratedFiles\\(ConfigurationName)\." "-I(QTDIR)\\include\\QtCore" "-I(QTDIR)\include\QtGui" "-I(QTDIR)\\include\\QtNetwork" "-I(QTDIR)\include\QtXml" "-IC:\Users\myName\Documents\libs" "-fStdAfx.h" "-f../../ScriptEditorUI.h"</Command>
    </CustomBuild>
    <CustomBuild Include="OverlayUI.h">
    <AdditionalInputs Condition="'(Configuration)(Configuration)|(Platform)'=='Debug|Win32'">(QTDIR)\\bin\\moc.exe;%(FullPath) Moc%27ing OverlayUI.h... .\\GeneratedFiles\\(ConfigurationName)\moc_%(Filename).cpp</Outputs>
    <Command Condition="'(Configuration)(Configuration)|(Platform)'=='Debug|Win32'">"(QTDIR)\\bin\\moc.exe" "%(FullPath)" -o ".\\GeneratedFiles\\(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_XML_LIB -D_HAS_ITERATOR_DEBUGGING=1 -D_ITERATOR_DEBUG_LEVEL=2 "-I.\GeneratedFiles" "-I." "-I(QTDIR)\\include" "-I.\\GeneratedFiles\\(ConfigurationName)\." "-I(QTDIR)\\include\\QtCore" "-I(QTDIR)\include\QtGui" "-I(QTDIR)\\include\\QtNetwork" "-I(QTDIR)\include\QtXml" "-IC:\Users\myName\Documents\libs" "-fStdAfx.h" "-f../../OverlayUI.h"</Command>
    <AdditionalInputs Condition="'(Configuration)(Configuration)|(Platform)'=='Release|Win32'">(QTDIR)\\bin\\moc.exe;%(FullPath) Moc%27ing OverlayUI.h... .\\GeneratedFiles\\(ConfigurationName)\moc_%(Filename).cpp</Outputs>
    <Command Condition="'(Configuration)(Configuration)|(Platform)'=='Release|Win32'">"(QTDIR)\\bin\\moc.exe" "%(FullPath)" -o ".\\GeneratedFiles\\(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_XML_LIB "-I.\GeneratedFiles" "-I." "-I(QTDIR)\\include" "-I.\\GeneratedFiles\\(ConfigurationName)\." "-I(QTDIR)\\include\\QtCore" "-I(QTDIR)\include\QtGui" "-I(QTDIR)\\include\\QtNetwork" "-I(QTDIR)\include\QtXml" "-IC:\Users\myName\Documents\libs" "-fStdAfx.h" "-f../../OverlayUI.h"</Command>
    </CustomBuild>
    <ClInclude Include="HudDockAnchor.h" />
    <CustomBuild Include="HudWidget.h">
    <AdditionalInputs Condition="'(Configuration)(Configuration)|(Platform)'=='Debug|Win32'">(QTDIR)\\bin\\moc.exe;%(FullPath) Moc%27ing HudWidget.h... .\\GeneratedFiles\\(ConfigurationName)\moc_%(Filename).cpp</Outputs>
    <Command Condition="'(Configuration)(Configuration)|(Platform)'=='Debug|Win32'">"(QTDIR)\\bin\\moc.exe" "%(FullPath)" -o ".\\GeneratedFiles\\(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_XML_LIB -D_HAS_ITERATOR_DEBUGGING=1 -D_ITERATOR_DEBUG_LEVEL=2 "-I.\GeneratedFiles" "-I." "-I(QTDIR)\\include" "-I.\\GeneratedFiles\\(ConfigurationName)\." "-I(QTDIR)\\include\\QtCore" "-I(QTDIR)\include\QtGui" "-I(QTDIR)\\include\\QtNetwork" "-I(QTDIR)\include\QtXml" "-IC:\Users\myName\Documents\libs" "-fStdAfx.h" "-f../../HudWidget.h"</Command>
    <AdditionalInputs Condition="'(Configuration)(Configuration)|(Platform)'=='Release|Win32'">(QTDIR)\\bin\\moc.exe;%(FullPath) Moc%27ing HudWidget.h... .\\GeneratedFiles\\(ConfigurationName)\moc_%(Filename).cpp</Outputs>
    <Command Condition="'(Configuration)(Configuration)|(Platform)'=='Release|Win32'">"(QTDIR)\\bin\\moc.exe" "%(FullPath)" -o ".\\GeneratedFiles\\(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_XML_LIB "-I.\GeneratedFiles" "-I." "-I(QTDIR)\\include" "-I.\\GeneratedFiles\\(ConfigurationName)\." "-I(QTDIR)\\include\\QtCore" "-I(QTDIR)\include\QtGui" "-I(QTDIR)\\include\\QtNetwork" "-I(QTDIR)\include\QtXml" "-IC:\Users\myName\Documents\libs" "-fStdAfx.h" "-f../../HudWidget.h"</Command>
    </CustomBuild>
    <ClInclude Include="HudWidgetObjectAbstract.h" />
    <ClInclude Include="HudWidgetObjectRect.h" />
    <ClInclude Include="HudWidgetObjectText.h" />
    <ClInclude Include="LuaFunct



  • Wenn Du es nachvollziehen kannst und Du zufällig eine MSDN-Abo hast, kannst Du auch ganz einfach den MS Support kontaktieren... um was für ein OS handelt es sich denn? Windows 7?



  • Es wird wohl ein völlig anderer Programmteil für den Fehler verantwortlich sein, wenn es in der Sample-Anwendung nicht auftritt.



  • Nein, ich habe leider kein MSDN Abo

    Ich vermute auch, dass es an eineme anderem Programmteil liegt. Die Frage ist jedoch, welchem genau 😉 Ich nutze andernorts Winsock2, das wäre noch der Teil wo ich am meisten verständnis für hätte wenn es irgendwie dadran liegt.

    Die Headerflags sind doch sehr begrenzt in meinem Code, aber ich kann nicht ausschließen das pthread und co irgendwas an flags setzen mit dennen WMI nicht so gut klar kommt.



  • Der Wettbewerb ist damit beendet.

    Ich konnte zwar den Grund nicht herausfinden und fixen, dafür habe ich es geschafft die Access Violation abzufangen und ein simples Looping Retry implementiert. Ich weiß, dass ich nicht schön - aber es funktioniert!



  • lol



  • Man kann nur hoffen das er niemals beruflich programmiert. Sowas geht mal gar nicht.



  • 😃 ⚠ echt mal jetzt ⚠ 😃



  • Kenner der Frickler schrieb:

    Man kann nur hoffen das er niemals beruflich programmiert. Sowas geht mal gar nicht.

    Ich weiß nicht... Ich würd dir echt gern Recht geben, und in dem Fall stimmt es wohl auch, aber ich hab schon öfter Fälle in realen Projekten gesehen, wo man gesagt hat, ok, jetzt funktionierts, aber keine Ahnung, warum.



  • jah1993 schrieb:

    Der Wettbewerb ist damit beendet.

    Ich konnte zwar den Grund nicht herausfinden und fixen, dafür habe ich es geschafft die Access Violation abzufangen und ein simples Looping Retry implementiert. Ich weiß, dass ich nicht schön - aber es funktioniert!

    Unfassbar...


  • Mod

    Was solls, er programmiert wahrscheinlich nur die Kraftstoffsteuerung für einen Airbus oder so... 😉 da stört sich doch kein Feingeist dran.

    Dass die Exception irgendwelchen andern Speicher rein zufällig auch verändern könnte, ist ja auch egal... und wen stört es schon wenn ein Programm abstürzt... Man ist doch daran gewöhnt das Microsoft Programme nur Scheiße sind dank solcher Programmierer...



  • Ihr seit also der Meinung, es ist sinnvoller weitere xxx Stunden (und es werden nicht wenige sein) in einen Fehler zu stecken, der rein 0 produktiven Wert erbringt ihn sauber zu fixxen, wenn es auch so geht ?

    Als Techniker gebe ich euch recht, aber als praktiker der einfach das Projekt weiter bringen muss war die Entscheidung einfach.

    Macht es doch besser, und fixt solche Fehler wenn ihr meint. Dann beschwert euch aber nicht, dass die Projekte 5x länger dauern als geplant/Budget da ist.

    Ich steh zu dieser Lösung.



  • jah1993 schrieb:

    Ich steh zu dieser Lösung.

    Stehst du auch zu deinem Eingeständnis??? 😉

    jah1993 schrieb:

    Ich weiß, dass ich nicht schön



  • klar steh ich dazu. Meinst du das wurmt mich nicht das ich den Fehler nicht auf die ordentliche Art habe lösen können?

    Aber zum Schluss war der besagte connect code noch vor allem eigenem threading zeugs es wurde klar das es sich um eine libary inkompitiblität oder konfigurationsgeschichte handelte. Ich kann aber auch nciht ewig an der config rummachen weil dann wiederum anderen libary's zu bruch gehen.

    Also musste ich mich gegen meine innere Überzeugung für die wirtschaftliche Lösung entscheiden. Wie gesagt, ihr könnt es besser machen. Es handelt sich um Consumer Software, da stirbt niemand an einer dirty solution.



  • Ich möchte deine software nicht kaufen... wer weiss was noch alles in deinem Riesen Bug drinsteckt.



  • Deine String Konvertierung sieht echt übel aus.

    // Convert output to std::string
    std::wstring outputW(vtProp.bstrVal, SysStringLen(vtProp.bstrVal));
    std::string output(outputW.begin(), outputW.end());
    

    Nutze mal WideCharToMultiByte() oder ähnliches...

    Aber zum Schluss war der besagte connect code noch vor allem eigenem threading zeugs es wurde klar das es sich um eine libary inkompitiblität oder konfigurationsgeschichte handelte. Ich kann aber auch nciht ewig an der config rummachen weil dann wiederum anderen libary's zu bruch gehen.

    Also musste ich mich gegen meine innere Überzeugung für die wirtschaftliche Lösung entscheiden. Wie gesagt, ihr könnt es besser machen. Es handelt sich um Consumer Software, da stirbt niemand an einer dirty solution.

    Die Konsequenz hieraus ist fatal. Ich bin kein Freund mehr von Hacks, da diese oftmals nur unter sehr gewissen Bedinugenen funktionieren, sofern sie nicht undefiniertes Verhalten nutzen. Und da dann diese Hacks eine zeitlang gut gehen, bekommst du Vertrauen in solchen Lösungen. Doch dummerweise schlagen diese Fehler irgentwann zu (anderes Betriebssystem, Rechte, PC, Mondstand,...).

    Beim Bug-Fixing ist man doch ein wenig im digitalen Blutrausch. Man jagt den Fehler solang bis man ihn erlegt hat. Und wenn sich dieser immer noch versteckt dann wirft man diverse Mitteln an (Debugger, Application Verifier, Flault-Injection) an.

    Ich fürchte, da must du auch mal durch...


Anmelden zum Antworten