none
Windows Store app 中有代替 win32 中的 TRACE 的函数吗? RRS feed

  • 问题

  • 在 win32 下可以用 TRACE 来实现向调试 output 窗口中输出信息,
    但在 Windows Store app 中确不行。

    那么在 Windows Store app 中有什么可以向开发环境 output 窗口输出信息的方法吗?

    2014年11月22日 15:43

答案

全部回复

  • Debug.WriteLine 方法

    Debug 類別 (C++/CLI)


    在現實生活中,你和誰在一起的確很重要,甚至能改變你的成長軌跡,決定你的人生成敗。 和什麼樣的人在一起,就會有什麼樣的人生。 和勤奮的人在一起,你不會懶惰; 和積極的人在一起,你不會消沈; 與智者同行,你會不同凡響; 與高人為伍,你能登上巔峰。

    2014年11月23日 16:08
  • 我的环境是 C++ Windows Store game

    我 cpp 文件开头的写法

    #include "pch.h"
    #include "Common_DirectX\DirectXHelper.h"
    #include "DirectXGame.h"
    
    using namespace Windows::ApplicationModel::Core;
    using namespace Windows::ApplicationModel::Activation;
    using namespace Windows::UI::ApplicationSettings;
    using namespace Windows::UI::Core;
    using namespace Windows::Foundation;
    using namespace Microsoft::WRL;
    using namespace DirectX;
    

    我在 cpp 文件中试用 Debug.WriteLine 的写法

    			{
    				float timeDelta = m_timer.TimeDelta();
    				Debug::WriteLine(_T("%s\n"), timeDelta);
    			}
    

    Debug.WriteLine 方法在我的 cpp 里编译时提示

    error C2653: 'Debug' : is not a class or namespace name
    error C3861: 'WriteLine': identifier not found
    

    在我的环境中需要插入什么头文件或引用什么命名空间吗?

    2014年11月24日 19:14
  • using namespace System::Diagnostics;

    在現實生活中,你和誰在一起的確很重要,甚至能改變你的成長軌跡,決定你的人生成敗。 和什麼樣的人在一起,就會有什麼樣的人生。 和勤奮的人在一起,你不會懶惰; 和積極的人在一起,你不會消沈; 與智者同行,你會不同凡響; 與高人為伍,你能登上巔峰。

    2014年11月24日 19:35
  • 我用了 using namespace System::Diagnostics; 后出现的错误是:

    error C2653: 'System' : is not a class or namespace name

    以下是我的 pch.h 文件内容:

    #pragma once
    
    // Windows
    #include <wrl.h>
    #include <wrl/client.h>
    #include <memory>
    #include <agile.h>
    //#include <collection.h>
    //#include <ppltasks.h>
    
    // Direct2D
    #include <d2d1_1.h>
    #include <d2d1effects.h>
    #include <dwrite_1.h>
    #include <wincodec.h>
    
    // Direct3D
    #include <d3d11_1.h>
    #include <DirectXMath.h>
    #include <DirectXColors.h>
    
    
    #include <tchar.h>
    
    #define ASSERT assert
    

    我建立的是 Windows Store game
    不知是不是在这种工程中不能使用 System 命名空间啊?
    2014年11月25日 0:57
  • #using <system.dll>
    using namespace System::Diagnostics;


    在現實生活中,你和誰在一起的確很重要,甚至能改變你的成長軌跡,決定你的人生成敗。 和什麼樣的人在一起,就會有什麼樣的人生。 和勤奮的人在一起,你不會懶惰; 和積極的人在一起,你不會消沈; 與智者同行,你會不同凡響; 與高人為伍,你能登上巔峰。

    2014年11月27日 17:50
  • OutPutDebugString 和 Trace的功能一样。
    • 已标记为答案 lihuipeng49 2014年11月28日 8:03
    2014年11月28日 0:11
  • 还是不能用

    Error	1	error C1114: 'c:\windows\microsoft.net\framework\v4.0.30319\system.dll' : WinRT does not support #using of a managed assembly	d:\mydata\svn\quandianwan\game\blackjack\windows\directxgame\directxgame.cpp	16
    

    2014年11月28日 3:14
  • 看來 Will 兄說的對, 要用 OutPutDebugString

    在現實生活中,你和誰在一起的確很重要,甚至能改變你的成長軌跡,決定你的人生成敗。 和什麼樣的人在一起,就會有什麼樣的人生。 和勤奮的人在一起,你不會懶惰; 和積極的人在一起,你不會消沈; 與智者同行,你會不同凡響; 與高人為伍,你能登上巔峰。

    2014年11月28日 6:22