3

私の問題に似たものをスタックオーバーフローで探していましたが、結果はありませんでした。

It seems that my VS started to completely ignore post-build events. 
Post-build events are not triggered in any project or solution I open
or create using my VS 2010. 

なぜ、いつからかはわかりませんが、以前(数週間前)は正常に機能していました。また、プロジェクトの構成や VS のインストールを自分で変更していません。Windowsのアップデートは数回ありましたが、いつから動かなくなったのか分からないので特定できません。ビルド後のイベントをトリガーしたいのですが、どんなに単純であってもトリガーされません。プロジェクトの構成は、チームメイト (彼らのマシン上) で機能しているため、問題ありません。

何が起こっているのかを理解しようとして、私は次のようにしました:

  • 作成したテスト プロジェクト
  • すべてのプラグイン (CodeMaid、VSAssistX など) を無効にしました。
  • 単に何かをエコーするビルド前、リンク前、およびビルド後のイベントを作成しました(もちろん、プロジェクトのプロパティでそれらを有効にしました(ビルドで使用->はい))。

その結果、ビルド前およびリンク前のビルド イベントに関するエコーと VS メッセージが表示されますが、ビルド後のイベントについては何も表示されません (Qt アドインを使用しています)。



    1>------ Rebuild All started: Project: Test, Configuration: Debug Win32 ------
    1>Build started 2013-02-07 11:03:54.
    1>_PrepareForClean:
    1>  Deleting file "Debug\Test.lastbuildstate".
    1>InitializeBuildStatus:
    1>  Creating "Debug\Test.unsuccessfulbuild" because "AlwaysCreate" was specified.
    1>PreBuildEvent:
    1>  prebuild
    1>CustomBuild:
    1>  Moc'ing Test.hpp...
    1>  Uic'ing Test.ui...
    1>  Rcc'ing Test.qrc...
    1>RCC : warning : No resources in 'C:\Projects\BuildEvents\Test\Test\Test.qrc'.
    1>  
    1>ClCompile:
    1>  moc_Test.cpp
    1>  main.cpp
    1>  Test.cpp
    1>  Generating Code...
    1>  qrc_Test.cpp
    1>PreLinkEvent:
    1>  prelink
    1>qtmaind.lib(qtmain_win.obj) : warning LNK4099: PDB 'vc100.pdb' was not found with 'qtmaind.lib(qtmain_win.obj)' or at 'C:\Projects\BuildEvents\Test\vc100.pdb'; linking object as if no debug info
    1>  Test.vcxproj -> C:\Projects\BuildEvents\Test\Test.exe
    1>FinalizeBuildStatus:
    1>  Deleting file "Debug\Test.unsuccessfulbuild".
    1>  Touching "Debug\Test.lastbuildstate".
    1>
    1>Build succeeded.
    1>
    1>Time Elapsed 00:00:02.80
    ========== Rebuild All: 1 succeeded, 0 failed, 0 skipped ==========

問題は Visual Studio 自体にあると思われますが、何が原因で、どのように解決すればよいでしょうか?

4

1 に答える 1

0

最後に、各ビルド後に手動で実行するスクリプトを作成しました。これはばかげた解決策です。なぜなら、私のチームメイトがビルド後の変更を必要とする変更を行った場合、私も自分のスクリプトを変更する必要があるからです。

于 2013-02-12T15:38:34.020 に答える