none
Windows Mobile Console Application 背景執行問題 RRS feed

  • 問題

  • Hi All,

    我目前需要做一個 console application 在背景持續的接收及發送網路封包,
    但程式一執行就會看到執行中的 logo... (一直轉動的那個 logo)
    請問要如何才能讓程式到背景去執行且那個執行中的轉動 logo 會消失?
    目前的程式架構如下:

    <Console Application>

    主程式 --- New Thread ---> Receving Data & Send Data
      |
      | Keep Running...
     \|/
      v


    麻煩大大撥空給予建議...
    2009年8月3日 上午 04:21

解答

  • Hi RYAN,

    假定您的程式沒有去呼叫 cursor busy 的方法,
    一般來說 cursor busy 是程式進行 init 時由系統自行呼叫的。

    您的問題很有可能是 init 沒有完成時,
    就開啟 thread and 進入 while loop 等待所造成,
    建議您查一下程式邏輯 thread create 和 init 的關係。
    每天都有進步的人值得敬重
    • 已標示為解答 R Y A N 2009年8月6日 上午 06:52
    2009年8月5日 上午 06:25

所有回覆

  • Windows Mobile上的背景程式其實就是一支沒有使用者介面的程式, 所以您的程式的結構是正確的, 也應該可以達到所需要的執行效果
    2009年8月4日 上午 07:43
  • Hi RYAN,

    假定您的程式沒有去呼叫 cursor busy 的方法,
    一般來說 cursor busy 是程式進行 init 時由系統自行呼叫的。

    您的問題很有可能是 init 沒有完成時,
    就開啟 thread and 進入 while loop 等待所造成,
    建議您查一下程式邏輯 thread create 和 init 的關係。
    每天都有進步的人值得敬重
    • 已標示為解答 R Y A N 2009年8月6日 上午 06:52
    2009年8月5日 上午 06:25
  • Thank you, tihs & 昭仁

    目前問題已解決,我的解決方式如下:
        [DllImport("coredll.dll")]
    public static extern IntPtr SetCursor(IntPtr hCursor);

    static void Main(string[] args)
    {
    IntPtr hOldCursor = SetCursor(IntPtr.Zero);

    while (true)
    {
    System.Threading.Thread.Sleep(1000);
    }

    }
    我的處理是方式是將 cursor 隱藏起來....
    如此便能達到我目前的需求~~
    非常感謝兩位的協助...
    2009年8月6日 上午 06:51