в его названии, поэтому я предполагаю, что это полный профиль. (Как правило, вы должны ориентироваться на профиль клиента, если вам специально не нужно что-то дополнительное, только в полном профиле, и тогда не будет иметь значения, какой из них установлен конечным пользователем).

я есть проект, который я построил в Visual Studio 2010 на компьютере с Windows 7. Компилируется и запускается без проблем.

Когда я помещаю приложение на компьютер с XP с .NET 4, оно не запускается с ошибкой «не является допустимым приложением Win32»

Я попробовал все здесь без удачи:http://blogs.msdn.com/b/dsvc/archive/2009/06/19/troubleshooting-not-a-valid-win32-application-error-at-the-startup.aspx

Я понятия не имею, что не так. Есть идеи?

Спасибо

К вашему сведению: bindump:

 Microsoft (R) COFF/PE Dumper Version 10.00.30319.01
Copyright (C) Microsoft Corporation.  All rights reserved.


Dump of file TimeKeeper.exe

PE signature found

File Type: EXECUTABLE IMAGE

FILE HEADER VALUES
            8664 machine (x64)
               2 number of sections
        4D24EED9 time date stamp Thu Jan 06 09:21:13 2011
               0 file pointer to symbol table
               0 number of symbols
              F0 size of optional header
              22 characteristics
                   Executable
                   Application can handle large (>2GB) addresses

OPTIONAL HEADER VALUES
             20B magic # (PE32+)
            8.00 linker version
           92600 size of code
             600 size of initialized data
               0 size of uninitialized data
               0 entry point
            2000 base of code
          400000 image base (0000000000400000 to 0000000000497FFF)
            2000 section alignment
             200 file alignment
            4.00 operating system version
            0.00 image version
            4.00 subsystem version
               0 Win32 version
           98000 size of image
             200 size of headers
               0 checksum
               2 subsystem (Windows GUI)
            8540 DLL characteristics
                   Dynamic base
                   NX compatible
                   No structured exception handler
                   Terminal Server Aware
          400000 size of stack reserve
            4000 size of stack commit
          100000 size of heap reserve
            2000 size of heap commit
               0 loader flags
              10 number of directories
               0 [       0] RVA [size] of Export Directory
               0 [       0] RVA [size] of Import Directory
           96000 [     598] RVA [size] of Resource Directory
               0 [       0] RVA [size] of Exception Directory
               0 [       0] RVA [size] of Certificates Directory
               0 [       0] RVA [size] of Base Relocation Directory
           94454 [      1C] RVA [size] of Debug Directory
               0 [       0] RVA [size] of Architecture Directory
               0 [       0] RVA [size] of Global Pointer Directory
               0 [       0] RVA [size] of Thread Storage Directory
               0 [       0] RVA [size] of Load Configuration Directory
               0 [       0] RVA [size] of Bound Import Directory
               0 [       0] RVA [size] of Import Address Table Directory
               0 [       0] RVA [size] of Delay Import Directory
            2000 [      48] RVA [size] of COM Descriptor Directory
               0 [       0] RVA [size] of Reserved Directory


SECTION HEADER #1
   .text name
   924FE virtual size
    2000 virtual address (0000000000402000 to 00000000004944FD)
   92600 size of raw data
     200 file pointer to raw data (00000200 to 000927FF)
       0 file pointer to relocation table
       0 file pointer to line numbers
       0 number of relocations
       0 number of line numbers
60000020 flags
         Code
         Execute Read

  Debug Directories

        Time Type       Size      RVA  Pointer
    -------- ------ -------- -------- --------
    4D24EED9 cv           8E 00094470    92670    Format: RSDS, {07D03CC8-7510-4698-B5EB-6DC50714B88D}, 3, C:\Users\Mitch\Documents\Timekeeper 24.12.2010\client\TimeKeeper 24-12-2010\TimeKeeper\obj\x86\Release\TimeKeeper.pdb

SECTION HEADER #2
   .rsrc name
     598 virtual size
   96000 virtual address (0000000000496000 to 0000000000496597)
     600 size of raw data
   92800 file pointer to raw data (00092800 to 00092DFF)
       0 file pointer to relocation table
       0 file pointer to line numbers
       0 number of relocations
       0 number of line numbers
40000040 flags
         Initialized Data
         Read Only

  Summary

        2000 .rsrc
       94000 .text
 brady06 янв. 2011 г., 00:08
Вы создали 64-битное приложение - машина XP является 64-битной? Если нет, то это будет проблемой. 32-битные машины не могут запускать программы, созданные для 64-битных архитектур.

Ответы на вопрос(1)

Решение Вопроса

а не на «Any CPU»? (Похоже, в заголовке bindump написано «machine (x64)», что может показаться проблемой)

Это полный .net 4 или профиль клиента? Если он заполнен, убедитесь, что на вашем XP установлен полный профиль, а не только профиль клиента.

(Вряд ли будет связано, но) Переадресация Visual Studio 2010 установлена ​​на компьютере с XP?

Убедитесь, что файл не был поврежден во время передачи на компьютер с Win32 (например, скопируйте его обратно и отправьте в другой файл или запустите его на вашем Win7-боксе)

 Mitch06 янв. 2011 г., 00:12
Это также может быть проблемой в будущем. Я использую полный профиль, но только что загрузил первый результат в Google для .NET 4. Это только профиль клиента?
 Jason Williams06 янв. 2011 г., 07:43
Иногда трудно сказать, но первый хит, который я получил, был такой:microsoft.com/downloads/en/... , Загрузка имеетполный в его названии, поэтому я предполагаю, что это полный профиль. (Как правило, вы должны ориентироваться на профиль клиента, если вам специально не нужно что-то дополнительное, только в полном профиле, и тогда не будет иметь значения, какой из них установлен конечным пользователем).

Ваш ответ на вопрос