2016年7月 - 炫Q香蕉派

2016年7月

Windows的系统服务

今天鬼哥在二叔群提到系统服务,主要想实现不登录就运行一些脚本的目的吧,以前做过类似的小程序,不过后来忘掉了,这次一定要记录下来,查询了一些相关资料,.Net提供了相关模板。
首先建立一个工程,我用的是VS2010。

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Diagnostics;
using System.ServiceProcess;
using System.Text;
using System.Timers;
using System.IO;

namespace TestService
{
    public partial class Service1 : ServiceBase
    {
        public Service1()
        {
            InitializeComponent();
        }

        Timer timer;
        int counter;

        protected override void OnStart(string[] args)
        {
            EventLog.WriteEntry("MikuQ服务启动");
            counter = 0;
            timer = new Timer();
            timer.Interval = 10000;
            timer.Elapsed += new ElapsedEventHandler(timer_Elapsed);
            timer.Enabled = true;
        }

        void timer_Elapsed(object sender, ElapsedEventArgs e)
        {
            counter++;
            StreamWriter sr = new StreamWriter(@"D:\mikuq.txt", true);
            sr.WriteLine(counter.ToString());
            sr.Close();
        }

        protected override void OnStop()
        {
            EventLog.WriteEntry("MikuQ服务停止");
            timer.Enabled = false;
        }
    }
}

在Service1.cs设计页面,点击右键添加安装程序
在ProjectInstaller.cs设计页面中选择serviceInstaller1
在属性中设置

Description(系统服务的描述):MikuQ's test Service
DisplayName (系统服务中显示的名称):MikuQ(mikuq.com) Service
ServiceName(系统事件查看器里的应用程序事件中来源名称):MikuService

serviceProcessInstaller1属性设置Account下拉设置成LocalSystem,应该是最高权限了
在C:\Windows\Microsoft.NET\Framework\v2.0.50727找到InstallUtil.exe,复制到debug文件夹
Ctrl+Shift+B编译出TestService.exe,然后运行InstallUtil TestService.exe安装服务,安装服务需要管理员权限
如果需要卸载服务InstallUtil -u TestService.exe

参考资料:《C# 创建系统服务并定时执行

如何使用BPI-M2+的蓝牙

这个尝试首先来自小撸在香蕉派创客社区的帖子《一个被大家遗忘的功能……》,然后在英文社区请教了armbian的成员tkaiser《Build armbian image for BPI-M2+》,得到相关提示《jernej got BT working on his OpenELEC port》,接下来就是尝试了。
8.png

git clone https://github.com/BPI-SINOVOIP/BPI_WiFi_Firmware
mv ~/BPI_WiFi_Firmware/ap6212/nvram_ap6212.txt ~/BPI_WiFi_Firmware/ap6212/nvram.txt 
cp -r ~/BPI_WiFi_Firmware/ap6212 /lib/firmware
cp -r ~/BPI_WiFi_Firmware/ap6212 /etc/firmware/
cp /lib/firmware/ap6212/bcm43438a0.hcd /etc/firmware/ap6212/4343A0.hcd
su
echo "0" > /sys/class/rfkill/rfkill0/state
echo "1" > /sys/class/rfkill/rfkill0/state
echo " " > /dev/ttyS1
hciattach /dev/ttyS1 bcm43xx 115200
rfkill unblock all
hciconfig hci0 up
hciconfig -a
hcitool scan

必须要用armbian系统?
10.png

给make降级

Android can only be built by versions 3.81 and 3.82

没办法,降级吧,先去这里找需要的版本ftp://ftp.gnu.org/gnu/make/,其实下载这个就可以了ftp://ftp.gnu.org/gnu/make/make-3.82.tar.gz

tar -zxvf make-3.82.tar.gz
cd make-3.82
./configure
make
sudo make install
cp usr/local/bin/make /usr/bin/.

然后可以用make -v检查版本3.82了,参考资料:http://blog.csdn.net/lr2131/article/details/45673603

安装JDK的尝试

最近在试用一块叫做NanoPi M1的开发板,至于特点就一个字“贱”,只要69元,开始以为很完善,真正用起来问题也不少,首先是I2C和SPI之类的驱动问题,据说要看WIKI自己来,今天看到这么一段,一头雾水,只能自己百度尝试了。

安装JDK
使用JDK1.6.0_45版本,下载和安装说明请查看Oracle官方网址:[Oracle JDK][1],这里假设JDK已经成功安装到路径/usr/lib/jvm/下。 

下载的文件叫jdk-6u45-linux-x64.bin,需要一个文件夹/usr/lib/jvm/

cd /usr/lib
sudo mkdir jvm
cd jvm
sudo chmod a+x jdk-6u45-linux-x64.bin
sudo ./jdk-6u45-linux-x64.bin

如下可以测试

export PATH=/usr/lib/jvm/jdk1.6.0_45/bin:$PATH
java -version

/etc/profile文件末尾加入

export JAVA_HOME=/usr/lib/jvm/jdk1.6.0_45
export JRE_HOME=${JAVA_HOME}/jre  
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib  
export PATH=${JAVA_HOME}/bin:$PATH