当前位置:编程学习 > wap >>

后台程序 怎么写??????快疯了!!!!!!!!!!!!111

我的程序是这样子的:
c#写的。用的
 MessageInterceptor SMSCatcher = new MessageInterceptor();
SMSCatcher.InterceptionAction = InterceptionAction.Notify;
SMSCatcher.MessageReceived += new MessageInterceptorEventHandler(MyMessageHandler);
可以检测到短信的到来。但是我现在不需要界面只要后台一直运行就可以了。
我不知道怎么去呈现 这样子一个功能。
我用了console,但是我不知道怎么让console程序能够一直运行。试过开一个线程,让他循环,但是会阻塞短信,短信就收不到了。
我也试过form。但是form 明明有hide 方法visible的属性。但是不能隐藏。
我又用了dllimport 把showwindows引入。但是这个函数不能自己写上去。一定要写在诸如按钮点击事件的响应函数里才起作用(囧)。
同时我希望我的程序在任务管理器里看不到。(用showwindow 隐藏,在任务管理器里还是能看到的)。
请大家帮帮忙,集思广益。。帮我解决这个问题。谢谢了!!! --------------------编程问答-------------------- up --------------------编程问答-------------------- up --------------------编程问答-------------------- --------------------编程问答-------------------- --------------------编程问答-------------------- --------------------编程问答-------------------- --------------------编程问答-------------------- ls的 谢谢。。 --------------------编程问答-------------------- 你写一个WinForm程序,让程序最小化就行了啊 --------------------编程问答-------------------- 我不是说了么。。你可以试一试。。再来回答哈 --------------------编程问答-------------------- 用showwindow 隐藏,在任务管理器里还是能看到的


可以实现的,只要窗体被隐藏,在任务管理器中就看不到相应程序

ShowWindow(this->m_hWnd,SW_HIDE);
--------------------编程问答-------------------- WinForm程序默认关闭的时候是最小化.
你就最小化就行了 --------------------编程问答-------------------- 隐藏Form怎么不行呢? --------------------编程问答-------------------- 顶一下 --------------------编程问答-------------------- 首先顶一下,
其次,那个jiangzehong到底有多少个号啊??? --------------------编程问答--------------------   我在 主窗口的InitializeComponent();之后调用this.visible=false;或者this.hide();都不行。大家可以试试。
我也用过showwindow 只能放在按钮响应里面。在InitializeComponent()后面调用也不行。。囧了 --------------------编程问答-------------------- 没有窗体程序必然会退出。所以建一个假窗体吧。 --------------------编程问答-------------------- CreateWorkerWindow
用这个试试看 --------------------编程问答-------------------- 非得要用C#啊?用C++不行么,MAPIRUle --------------------编程问答--------------------  要不试一下,做成一个服务吧. 路过... --------------------编程问答-------------------- 楼主你不能做个service吗? --------------------编程问答-------------------- 做成WinForm程序即使隐藏窗体也肯定会出现在任务管理器中,想不让出现在任务管理器可以做控制台应用程序,这个可以实现
要不就用服务,服务没弄过,不知道在Mobile上如何实现?了解的可以详细说一说 --------------------编程问答-------------------- 结贴率0。。。。。。。。。 --------------------编程问答-------------------- http://managedserviceswm.codeplex.com/
这是一个C#下做服务的托管类(开源的) --------------------编程问答-------------------- 7月份的帖子 --------------------编程问答-------------------- 09年7月份的帖子,有没有结贴啊?
请问问题怎么解决啊?我也碰到了同样的问题,麻烦知道的说一声,谢谢了 --------------------编程问答--------------------
using System;
using System.Linq;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;

namespace SmartDeviceProject1
{
    public partial class Form1 : Form
    {
        private Timer t = new Timer();
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            t.Tick += _do_timeout;
            t.Interval = 3000;
            t.Enabled = true;
        }

        private void _do_timeout(object sender, EventArgs e)
        {
            this.Visible = false;

        }

        private void Form1_Closing(object sender, CancelEventArgs e)
        {
            t.Enabled = false;
            t.Tick -= _do_timeout;
            t.Dispose();
        }
    }
}
--------------------编程问答-------------------- 我测试了的 你可以试试 --------------------编程问答-------------------- 最小化 --------------------编程问答-------------------- 做成一个dll,通过service。exe开机自动加载(注册表控制)。然后可以通过deviceIOctrl来控制服务。 --------------------编程问答-------------------- 这么多高手支招,应该很酷啊,解决了吧! --------------------编程问答--------------------
引用 29 楼 zhang20072844 的回复:
做成一个dll,通过service。exe开机自动加载(注册表控制)。然后可以通过deviceIOctrl来控制服务。


方法很好,DLL 不会在窗体列表中出现,但查看线程模式时可看到。

除非不加载进内存,否则肯定能看到。看不到的进程?逻辑上根本就不通。

--------------------编程问答--------------------
引用 31 楼 cheunglap 的回复:
引用 29 楼 zhang20072844 的回复:
做成一个dll,通过service。exe开机自动加载(注册表控制)。然后可以通过deviceIOctrl来控制服务。


方法很好,DLL 不会在窗体列表中出现,但查看线程模式时可看到。

除非不加载进内存,否则肯定能看到。看不到的进程?逻辑上根本就不通。

肯定看不到,dll挂在service.exe下面,开机自动运行,看你也只能看到service.exe你不会看到服务的。除非你能看到线程。对吧?你能看到device.exe下加载了多少驱动,你能看到驱动的进程么?之所以做成这个样子就是因为嵌入式上最多32进程,节省进程数才这样做的。。。。 --------------------编程问答-------------------- 表示服务可以,已经做了一个样例,能够跑通,开机自启动,没任何问题,看不到进程,加在service.exe的进程里面。 --------------------编程问答-------------------- --------------------编程问答-------------------- lz搞定了么? --------------------编程问答--------------------
引用 35 楼 zhang20072844 的回复:
lz搞定了么?

楼主是不会来了啊,都是09年得帖子了啊 ,楼主自己都忘记了。
补充:移动开发 ,  Windows Phone
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,