2021年3月30日 星期二

只要會用滑鼠點兩下,就能將hosts 取代學生機的hosts

   資訊組長管理電腦教室。遇到學生上FB、遊戲網站時,需要對hosts 做修改。於是編輯好hosts,要下載自己編輯好的hosts到學生機上的hosts。總是要經過好幾道手續,點好幾次滑鼠,才能到。那有沒有比較好的方法,能夠解決?

   有沒有一個更快的方式,讓我只要點兩下,就可以將C:\Windows\System32\drivers\etc\hosts 更名hosts_今天日期後,再複製手上的hosts到C:\Windows\System32\drivers\etc\。一氣呵成。

教學影片:


目的:
1.將C:\Windows\System32\drivers\etc\hosts 更名hosts_今天日期(當作備份)
2.複製手上的hosts到C:\Windows\System32\drivers\etc\。

檔案名稱:CopyHosts2EtcBK.bat
檔案內容:
@echo off
REM ---------------以下是程式碼,不需更改---------------
REM :: BatchGotAdmin (Run as Admin code starts)
REM --> Check for permissions
>nul 2>&1 "%SYSTEMROOT%\system32\cacls.exe" "%SYSTEMROOT%\system32\config\system"
REM --> If error flag set, we do not have admin.
if '%errorlevel%' NEQ '0' (
echo Requesting administrative privileges...
goto UACPrompt
) else ( goto gotAdmin )
:UACPrompt
echo Set UAC = CreateObject^("Shell.Application"^) > "%temp%\getadmin.vbs"
echo UAC.ShellExecute "%~s0", "", "", "runas", 1 >> "%temp%\getadmin.vbs"
"%temp%\getadmin.vbs"
exit /B
:gotAdmin
if exist "%temp%\getadmin.vbs" ( del "%temp%\getadmin.vbs" )
pushd "%CD%"
CD /D "%~dp0"
REM :: BatchGotAdmin (Run as Admin code ends)
REM :: Your codes should start from the following line
REM 取得今天的年、月、日 (自動補零)
SET TodayYear=%date:~0,4%
SET TodayMonthP0=%date:~5,2%
SET TodayDayP0=%date:~8,2%
REM  設定現在所處的目錄與系統目錄C:\Windows\System32\drivers\etc\
set NowDir=%~dp0
set TargetDir=C:\Windows\System32\drivers\etc\
REM 到系統目錄C:\Windows\System32\drivers\etc\
cd %TargetDir%
REM  更改檔名hosts hosts_今天日期(年月日)
rename hosts hosts_%TodayYear%_%TodayMonthP0%_%TodayDayP0%
REM  複製現在所處的目錄的hosts 到系統目錄C:\Windows\System32\drivers\etc\hosts
copy %NowDir%hosts hosts
exit

目的:
1.將手上的hosts取代C:\Windows\System32\drivers\etc\hosts。

檔案名稱:CopyHosts2Etc.bat
檔案內容:
REM ---------------以下是程式碼,不需更改---------------
@echo off
REM  設定現在所處的目錄與系統目錄C:\Windows\System32\drivers\etc\
set NowDir=%~dp0
set TargetDir=C:\Windows\System32\drivers\etc\
REM  複製現在所處的目錄的hosts 到系統目錄C:\Windows\System32\drivers\etc\hosts
copy %NowDir%hosts %TargetDir%hosts
exit


只要會用滑鼠點兩下,就能開啟學生機hosts的資料夾


   資訊組長管理電腦教室。遇到學生上FB、遊戲網站時,需要對hosts 做修改。於是編輯好hosts,要下載自己編輯好的hosts到學生機上的hosts。總是要經過好幾道手續,點好幾次滑鼠,才能到。那有沒有比較好的方法,能夠解決?

   有沒有一個更快的方式,讓我只要點兩下,就可以直接到C:\Windows\System32\drivers\etc\hosts\。


方法一複製路徑法:
        複製C:\Windows\System32\drivers\etc\ ,貼到windows 檔案總管上。就可以直接到C:\Windows\System32\drivers\etc\ 
                  詳細教學影片:

方法二:
        寫個BAT,只要對BAT點兩下,就可以開啟C:\Windows\System32\drivers\etc\的資料夾。BAT的寫法也有兩種。分別敘述如下:

1.
檔案名稱:EtcFolderOpen01.bat
檔案內容:
@echo off
REM 設定要開啟的資料夾路徑
set FolderPath=C:\Windows\System32\drivers\etc\
REM ---------------以下是程式碼,不需更改---------------
START %SystemRoot%\explorer.exe "%FolderPath%"

2.
檔案名稱:EtcFolderOpen02.bat
檔案內容:
@echo off
REM 設定要開啟的資料夾路徑
set FolderPath=C:\Windows\System32\drivers\etc\
REM ---------------以下是程式碼,不需更改---------------
START %FolderPath%

                  詳細教學影片:


2021年3月28日 星期日

只要會用滑鼠點兩下,讓Windows 10 啟動時自動切換螢幕為同步

         由於前瞻計畫,需要讓75吋電視與電腦連接。只是電腦開機時,會自動將螢幕設定為延伸。對老師教學而言,相當不方便。老師希望是螢幕同步。希望能夠做到電腦開機完成,螢幕

就自動切換成同步

使用方法:
1.下載檔案下載
2.解壓縮,解壓密碼demo1234
3.對資料夾內的MultiScreenClone.bat,按滑鼠右鍵->內容->解除封鎖->套用

4.對資料夾內的Copy2Startup.bat 點兩下,完成。

實際操作

以下是詳細說明
切換螢幕為同步顯示
檔名:MultiScreenClone.bat
內容:
 displayswitch /clone
實際測試影片


切換螢幕為延伸螢幕
檔名:MultiScreenExtend.bat
內容:
 displayswitch /extend

切換螢幕為外接螢幕
檔名:MultiScreenExternal.bat
內容:
 displayswitch /external

切換螢幕為預設螢幕
檔名:MultiScreenInternal.bat
內容:
 displayswitch /internal

現在需要做一件事,就是讓 windows 10 開機自動啟用
windows 10 啟動目錄為
%HomePath%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup
測試的方式為
檔案名稱:Test.bat
內容為
echo %HomePath%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup
PAUSE

那我們只要將 MultiScreenClone.bat複製到 %HomePath%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup 即可。
那要如何做?

手動方式:
將 %HomePath%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup 複製貼上到檔案總管的路徑上,就會到windows 10 啟動目錄,將MultiScreenClone.bat貼到windows 10 啟動目錄,即可。

BAT方式:
檔案名稱:Copy2Startup.bat
內容:
@echo off
copy "%~dp0\MultiScreenClone.bat" "%HomePath%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup"
shutdown /r /f /t 0

只要會用滑鼠點兩下,用shell 在 ubuntu 16.04 x64 桌面版本快速安裝 運動檢錄系統

整理:
1.只要會用滑鼠點兩下,用shell 在 ubuntu 16.04 x64 桌面版本快速安裝 運動檢錄系統
https://skjhcreator.blogspot.com/2021/03/shell-ubuntu-1604-x64.html
2.紀明村老師運動會競賽檢錄系統更新模組_學生帳號管理模組
https://skjhcreator.blogspot.com/2021/03/blog-post.html
3.二林國小紀明村老師的二林網管 PDO + SQLite 程式寫作工具箱2014.07
https://skjhcreator.blogspot.com/2021/03/pdo-sqlite-201407.html
4.用shell 在CentOS 7 minimal 64位元 安裝 紀明村老師的運動會檢錄系統
https://skjhcreator.blogspot.com/2021/02/shell-centos-7-minimal-64.html
5.紀明村老師的運動檢錄系統程式碼研究心得(一)介接CloudSchool與mysql資料庫
https://skjhcreator.blogspot.com/2021/03/cloudschoolmysql.html
6.紀明村老師運動檢錄系統程式碼研究心得(二)登入login登出logout與使用者認證
https://skjhcreator.blogspot.com/2021/02/loginlogout.html
7.紀明村老師運動檢錄系統程式碼研究心得(三)smarty
https://skjhcreator.blogspot.com/2021/02/smarty.html

後篇:紀明村老師的運動會競賽檢錄系統更新模組_學生帳號管理模組


        感恩二林國小紀明村老師開發運動檢錄系統
第一版Sport1090730.zip。
安裝成功後的畫面,本畫面Logo為員東國小徐千惠老師的大作。感恩員東國小徐千惠老師。

 一、現在將其寫成shell,希望能做到快速安裝。
檔名:SportInstall_ub1604.sh
內容為
#!/bin/bash
apt-get install apache2 -y
apt-get install php -y
apt-get install -y php7.0-common php7.0-mbstring php7.0-mcrypt php7.0-mysql php7.0-xml php7.0-gd php7.0-curl php7.0-json php7.0-fpm php7.0-zip php7.0-mcrypt php7.0-sqlite3 libapache2-mod-php7.0
apt-get install curl sqlite sqlite3 unzip zip -y
mkdir ~/html
mv /var/www/html /var/www/html2
ln -s ~/html /var/www/html
unzip Sport1090730.zip
mv Sport1090730 Sport109
mv ~/Sport109 ~/html/Sport109
mkdir /home/Sport_data
chown www-data.www-data /home/Sport_data
sed -i 's/admin/學籍帳號/g' ~/html/Sport109/109.conf.php
sed -i 's/abc1234/學籍密碼/g' ~/html/Sport109/109.conf.php
sed -i 's/074XXX/教育部學校代碼/g' ~/html/Sport109/109.conf.php
sed -i "s/_client_id = ''/_client_id = '雲端學籍系統學校的API_ID'/g" ~/html/Sport109/109.conf.php
sed -i "s/_secret = '';/_secret = '雲端學籍系統學校的_API_密碼';/g" ~/html/Sport109/109.conf.php
reboot now

檔名:SportInstall_ub2004.sh
內容為
#!/bin/bash
apt-get install apache2 -y
apt-get install php -y
apt-get install -y php7.4-common php7.4-mbstring php7.4-dev php7.4-mysql php7.4-xml php7.4-gd php7.4-curl php7.4-json php7.4-fpm php7.4-zip php7.4-sqlite3 libapache2-mod-php7.4
apt-get install curl sqlite sqlite3 unzip zip -y
mkdir ~/html
mv /var/www/html /var/www/html2
ln -s ~/html /var/www/html
unzip Sport1090730.zip
mv Sport1090730 Sport109
mv ~/Sport109 ~/html/Sport109
mkdir /home/Sport_data
chown www-data.www-data /home/Sport_data
sed -i 's/admin/學籍帳號/g' ~/html/Sport109/109.conf.php
sed -i 's/abc1234/學籍密碼/g' ~/html/Sport109/109.conf.php
sed -i 's/074XXX/教育部學校代碼/g' ~/html/Sport109/109.conf.php
sed -i "s/_client_id = ''/_client_id = '雲端學籍系統學校的API_ID'/g" ~/html/Sport109/109.conf.php
sed -i "s/_secret = '';/_secret = '雲端學籍系統學校的_API_密碼';/g" ~/html/Sport109/109.conf.php
reboot now

二、如何使用SportInstall_ub1604.sh
$sudo chmod 777 SportInstall_ub1604.sh
$sudo sh  SportInstall_ub1604.sh

三、手動變更~/html/Sport109/109.conf.php 與 設定/ect/apache2/sites-enabled/000-default.conf
檔案位置與名稱 ~/html/Sport109/109.conf.php
// 5.可寫入目錄(放置資料庫檔及暫存區用),建議搬至網頁目錄外
define('__SiteData', '/home/Sport_data/');

檔案位置與名稱 /ect/apache2/sites-enabled/000-default.conf
DocumentRoot /var/www/html 改為 DocumentRoot /home/使用者名稱/html/Sport109
或是
DocumentRoot /var/www/html 改為DocumentRoot /var/www/html/Sport109

四、用瀏覽器進入網址為 http://伺服器IP/,建立資料庫。若是沒有建立資料庫,請用瀏覽器進入網址為 http://伺服器IP/easy.php,建立資料庫。
                                           
五、設定各項比賽預設值




前面步驟一、二、三的詳細說明
        安裝完ubuntu 16.04 x64  桌面版本。現在要安裝運動檢錄系統,將安裝過程記錄下來。
(1).安裝Apache2
$sudo apt-get install apache2 -y

(2).安裝php與php擴展套件
$sudo apt-get install php -y
$sudo apt-get install -y php7.0-common php7.0-mbstring php7.0-mcrypt php7.0-mysql php7.0-xml php7.0-gd php7.0-curl php7.0-json php7.0-fpm php7.0-zip php7.0-mcrypt php7.0-sqlite3 libapache2-mod-php7.0

(3).安裝 curl、sqlite、sqlite3、unzip、zip
$sudo apt-get install curl sqlite sqlite3 unzip zip -y

(4).設定資料夾
$mkdir ~/html
$sudo mv /var/www/html /var/www/html2
$sudo ln -s ~/html /var/www/html

(5).解壓縮Sport1090730.zip 與變更擁有者
$sudo unzip Sport1090730.zip
$sudo mv Sport1090730 Sport109
$sudo mv ~/Sport109 ~/html/Sport109
$sudo mkdir /home/Sport_data
$sudo chown www-data.www-data /home/Sport_data -R

(6).設定/ect/apache2/sites-enabled/000-default.conf
DocumentRoot /var/www/html 改為 DocumentRoot /home/使用者名稱/html/Sport109
或是
DocumentRoot /var/www/html 改為DocumentRoot /var/www/html/Sport109

(7).設定109.conf.php,其內容為
// 1.最高管理者的學籍帳號
$Admin['User']='自己在雲端學籍系統的帳號';
$Admin['Pass']='自己在雲端校務系統的密碼';
比方說
自己在雲端學籍系統的帳號與密碼分別為 webadmin 與 demo1234
此時要填入的資訊分別為
$Admin['User']='webadmin';
$Admin['Pass']='demo1234';
安裝完成後,要以帳號 webadmin 登入,才能在檢錄系統有最高權權限。

// 2.最高管理者的學籍帳號
$school_code='074XXX';//教育部學校代碼

// 3.雲端學籍系統內,學校的 API ID
$API_client_id = 'xxxxxxxxxxxxxxxxxxx';

// 4.雲端學籍系統內,學校的 API 密碼
$API_client_secret = 'xxxxxxxxxxxxxxxx';

// 5.可寫入目錄(放置資料庫檔及暫存區用),建議搬至網頁目錄外
define('__SiteData', '/home/Sport_data/');

(7).重開機
$sudo reboot now

(8).用瀏覽器進入網址為 http://伺服器IP/,建立資料庫。若是沒有建立資料庫,請用瀏覽器進入網址為 http://伺服器IP/easy.php,建立資料庫。
                                           
(9).設定各項比賽預設值


最後、如何取得雲端學籍系統內,學校的 API ID與雲端學籍系統內,學校的 API 密碼



除錯

感恩二林國小紀老師、花壇國小李志賢老師。
錯誤1.完全依照前面步驟一、二、三、最後 安裝完,登入系統點選項目。卻出現權限不足。如下的畫面
這表示
7.設定109.conf.php 的
// 1.最高管理者的學籍帳號
$Admin['User']='admin';
$Admin['Pass']='abc1234';//暫用不到
要修改成,在cloudschool.chc.edu.tw 自己的學校的帳號與密碼。
比方說,我在cloudschool.chc.edu.tw 自己的學校的帳號為 webadmin、密碼為demo1234
就要將109.conf.php 的
$Admin['User']='admin';
$Admin['Pass']='abc1234';//暫用不到
改成
$Admin['User']='webadmin';
$Admin['Pass']='demo1234';//暫用不到
安裝完成後,用帳號webadmin與密碼demo1234登入 ,才會擁有最高權限。
那接下來要如何處理?
(1).刪除/home/Sport_data
$sudo rm /home/Sport_data -R
(2).重建/home/Sport_data
$sudo mkdir  /home/Sport_data
(3).變更擁有者為www-data.www-data
#sudo chown www-data.www-data /home/Sport_data
(4).設定 /ect/apache2/sites-enabled/000-default.conf
DocumentRoot /var/www/html 改為 DocumentRoot /home/webadmin/html/Sport109
(5).用瀏覽器進入網址為 http://伺服器IP/,建立資料庫
(6).用帳號webadmin與密碼demo1234登入 
 
感恩二林國小紀老師、和東國小王麒富老師、明倫國中江明熹老師。
錯誤2.完全依照前面步驟一、二、三、最後 安裝完,登入系統。卻出現這個錯誤訊息,要如何處理?
表示找不到人。那表示伺服器架在學校網段外,所以無法從cloudschool.chc.edu.tw 學校伺服器的API取得資料。所以需將伺服器架在學校網段內。
         另外一個原因可能是尚未建立資料庫,請用瀏覽器進入網址為 http://伺服器IP/easy.php,建立資料庫。
                                             

感恩二林國小紀老師。
錯誤3.要印出檢錄單時,卻出現錯誤訊息,其截圖如下:
則表示php7.0-zip 沒有裝好。請重裝php7.0-zip後重啟,其指令如下:
$sudo apt-get install php7.0-zip
$sudo reboot now

感恩竹塘國中劉冠佑組長
錯誤4.安裝完成後,用學籍帳號卻一直無法登入。可能是您的彰化Gsuite帳號與學籍帳號是不同的,請您用彰化Gsuite帳號登入。




2021年3月25日 星期四

只要會用滑鼠點兩下,一鍵設定電腦主機內機敏性資料夾或檔案隱藏或加密

        在電腦教室學生機設定禁止學生瀏覽某些網站。希望能夠隱藏、加密與禁止修改檔案屬性。以保護檔案的安全。當然用RouterOS在閘道限制更快。目前只想到保護檔案或資料夾的應用。
要注意的是資料夾隱藏特別是系統資料夾,需要的是系統管理員的權限。

功能:隱藏檔案hosts
檔案名稱:HideFileHosts.bat
內容:
@echo off
attrib %WinDir%\System32\drivers\etc\hosts +h

功能:不隱藏檔案hosts
檔案名稱:ShowFileHosts.bat
內容:
@echo off
attrib %WinDir%\System32\drivers\etc\hosts -h

功能:隱藏資料夾etc
檔案名稱:HideFolderEtc.bat
內容:
@echo off
REM :: BatchGotAdmin (Run as Admin code starts)
REM --> Check for permissions
>nul 2>&1 "%SYSTEMROOT%\system32\cacls.exe" "%SYSTEMROOT%\system32\config\system"
REM --> If error flag set, we do not have admin.
if '%errorlevel%' NEQ '0' (
echo Requesting administrative privileges...
goto UACPrompt
) else ( goto gotAdmin )
:UACPrompt
echo Set UAC = CreateObject^("Shell.Application"^) > "%temp%\getadmin.vbs"
echo UAC.ShellExecute "%~s0", "", "", "runas", 1 >> "%temp%\getadmin.vbs"
"%temp%\getadmin.vbs"
exit /B
:gotAdmin
if exist "%temp%\getadmin.vbs" ( del "%temp%\getadmin.vbs" )
pushd "%CD%"
CD /D "%~dp0"
REM :: BatchGotAdmin (Run as Admin code ends)
REM :: Your codes should start from the following line
@echo off
attrib %WinDir%\System32\drivers\etc +h

功能:不隱藏資料夾etc
檔案名稱:ShowFolderEtc.bat
內容:
@echo off
REM :: BatchGotAdmin (Run as Admin code starts)
REM --> Check for permissions
>nul 2>&1 "%SYSTEMROOT%\system32\cacls.exe" "%SYSTEMROOT%\system32\config\system"
REM --> If error flag set, we do not have admin.
if '%errorlevel%' NEQ '0' (
echo Requesting administrative privileges...
goto UACPrompt
) else ( goto gotAdmin )
:UACPrompt
echo Set UAC = CreateObject^("Shell.Application"^) > "%temp%\getadmin.vbs"
echo UAC.ShellExecute "%~s0", "", "", "runas", 1 >> "%temp%\getadmin.vbs"
"%temp%\getadmin.vbs"
exit /B
:gotAdmin
if exist "%temp%\getadmin.vbs" ( del "%temp%\getadmin.vbs" )
pushd "%CD%"
CD /D "%~dp0"
REM :: BatchGotAdmin (Run as Admin code ends)
REM :: Your codes should start from the following line
@echo off
attrib %WinDir%\System32\drivers\etc -h


 

只要會用滑鼠點兩下,一鍵設定電腦主機自動關機、重啟

         最近碰到節能減碳的議題,學生離開的時候會忘記關掉電腦教室的學生機。當然有快捷鍵,但是要講解。要拿出鍵盤,覺得有點困擾。直接教用滑數點兩下,或許更直接吧。

此外,關機與重啟不需要系統管理員的權限。

檔名:ShutDownNow.BAT
內容:
@echo off
shutdown /s /f /t 0

檔名:ReBootNow.BAT
內容:
@echo off
shutdown /r /f /t 0


2021年3月18日 星期四

讓老師繼續使用SWF進行教學_將SWF轉成EXE

   前言:
        在網路彙整了SWF的檔案就無法用瀏覽器開啟的解決方案:     
           1.調整系統時間
            (1).手動調整
            (2).BAT調整
         2.Flash Player 替代產品
            (1).Ruffle
            (2).Adobe Flash Player – Debug
         3.使用舊版
             (1)舊版flash player
                  a.版本30以前
                  b.適用Windows 7 以下
             (2)舊版Firefox
                  a.版本83.03以下
         4.轉檔-swf轉exe
         5.網站播放-https://ruffle.rs/demo/
         6.Puffin 瀏覽器播放
         7.potplayer播放            
     本文在彙整之後的心智圖的位置如下:
     檔案下載
     詳細安裝步驟:

只要點兩下就能將 彰化縣EIP系統全校學生帳號總表 依 各班級 分成 各班級學生帳號總表

系列文章: 1. 只要點兩下就能產出彰化縣Cloud School 學生帳號密碼匯入彰化縣EIP系統學生帳號密碼的CSV 1. https://skjhcreator.blogspot.com/2025/08/cloud-school-eipcsv.html 2. 只要點兩下就能...