[Windows] 批次檔 倒數計時 + PPPoE撥號

為了要在開機時自動撥號PPPoE取得IP位置,我想到用批次檔做連線的動作再放到啟動裡去,但是啟動速度太快,有時候怕硬體還沒初始化,所以就順便做了倒數計時,利用ping自己的方法當作延遲就可以達到到類似倒數計時的效果,把以下內容放到notepad裡存成.bat檔即可

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
@echo off
echo 倒數五秒連線至網路
echo.
echo 5
ping -n 2 127.0.0.1>nul
echo 4
ping -n 2 127.0.0.1>nul
echo 3
ping -n 2 127.0.0.1>nul
echo 2
ping -n 2 127.0.0.1>nul
echo 1
ping -n 2 127.0.0.1>nul

rasdial <連線名稱> <帳號> <密碼>

其中連線名稱必須跟當初設定的PPPoE檔名相符,不是帳號喔!

Windows 8 離線安裝 .NET Framework 3.5 方法

相信大家在Windows 8之後的版本,一定常常遇到有程式執行需要.NET Framework 3.5才能打開的情況,通常Windows會自動跳出線上安裝的畫面,但是小弟常常遇到安裝失敗的情況,感覺是網路問題,好不容易安裝成功又因為工作需要重灌電腦,.NET Framework 3.5又離我而去了,實在有夠難安裝。

上網Google了一下,微軟原廠有離線安裝的解決方法,就是掛載Windows 8的iso檔,或是插入光碟,然後用最高權限鍵入以下指令:

(以E:為掛載位置範例)

Dism.exe /online /enable-feature /featurename:NetFX3 /All /Source:E:sourcessxs /LimitAccess

接著就等DISM跑囉!

擷取

痾…這個…0x800f081f是…

再度搜尋一下,發現是Windows的更新跟他有衝突,要手動解除安裝以下更新代碼:

KB2966826
KB2966827
KB2966828

我的Windows 8版本是Professional,目前只有看到系統更新了KB2966827而已,解除安裝之後再進行一次上面的DISM指令,然後就成功拉~

擷取2

(我絕對不會說是為了要用Friendly.Flickr才需要.NET Framework 3.5的…XD)

 

Windows 8 完全關閉使用者帳戶控制(UAC)

8b8a0-e693b7e58f96
▲煩人的使用者帳戶控制(UAC)通知,其實影響著你的使用者權限

自從Windows Vista以後,我們想要在普通的Windows帳號擁有較高權限時,通常會去控制台的“使用者帳戶”(之類的)裡面去找 “變更使用者帳戶控制設定” 改成不要通知。原本在Windows 7 版本以前,這樣子修改就可以獲得較高的權限,方便安裝及修改部分系統檔(例如 C:WindowsSystem32Driversetchosts)或是有時候安裝軟體、遊戲時老是安裝有問題

51a4b-e693b7e58f962

Windows Vista 及 7 的使用者,只要去 控制台->使用者帳戶和家庭安全->使用者帳戶 中的”變更使用者帳戶控制設定”,就可以獲得較高的權限,也不會有煩人的通知,但是在Windows 8 系統,除了去控制台取消 使用者帳戶控制設定 選項的通知以外,還要去登錄編輯器裡面改值才能完全取消這個控制。

首先,執行 regedit
5b950-e693b7e58f963

然後依序找到以下位置:

HKEY_LOCAL_MACHINE
/SOFTWARE
/Microsoft
/Windows
/CurrentVersion
/Policies
/System

f849d-e693b7e58f964

其中 ” Enable ULA ” 項目改成 0 即可。

9a08f-e693b7e58f965

———————–
至於為什麼這麼執著要關掉UAC…因為在安裝Visual Studio 2012的時候總是遇到奇怪的錯誤,一直Google他的錯誤代碼,照著MSDN的Solution修改,像是另外下載SSDT來裝就可以解決某個代號的錯誤。但解決了這一個,又多出很多新的問題,感覺也不像檔案本身的問題(從Dream Spark那邊抓下來的學生版Visual Studio 2012,也驗過MD5)。直到有一天,我在搬移、取代零碎檔案的時候發現,都已經在控制台關了UAC,怎麼還一直問我權限,然後就從登錄檔下手,什麼問題都解決了,Visual Studio 2012 Update 3也順利更新完畢。

Mac Boot Camp Windows 時間跑掉的問題 (Mountain Lion版本以上已解決)

Windows 底下 進入 regedit
(執行 regedit)

找到HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlTimeZoneInformation

“新增” DWORD 值
重新命名為”RealTimeIsUniversal” 重新設定值為”1″

 

如何製作USB開機碟

這次要來介紹如何製作USB開機碟

為什麼要這麼做呢?
大多數是為了要在DOS環境下刷BIOS韌體
可是現在電腦不是幾乎都會在官網附上Windows環境下刷韌體的程式嗎?
喔~可能有的時候你會發現有點小問題…

小弟前一個月想重灌OS時
手癢順便載了新版的BIOS然後刷下去
重灌完才發現…電腦實在是很不穩
如果要打電話給客服也不知道該怎麼解釋這種情況
(我遇到很多次問題都是無法解釋的…哀)

來記錄一下小弟刷過的BIOS

首先是自己的電腦 :

ASUS K42Jv
BIOS版本 : 從 210 -> 212
情況 : 電腦不穩定,會發生抖動跟遲鈍

然後是別人的電腦 :

MSI PR200 Ya Edition
BIOS版本 : 從1221_150 -> 1221_151
情況 : 無線網路模組會故障,無法驅動

這兩台電腦都是經過Windows環境刷BIOS的
然後一旦刷了新版的BIOS,就回不去舊版的了
所以今天才要來介紹如何用USB開機,以便在DOS環境下刷BIOS

首先
下載此軟體
https://www.dropbox.com/s/b5x8lz18nm8bpy9/HPUSBFW.zip?dl=0
這好像是HP提供的

解壓縮之後,點選”HPUSBFW.EXE”

插上你平常沒在用的USB,打開之後勾選”快速格式”及”建立一個DOS開機作業磁碟”
打了兩個勾勾然後按那個 “…”按鈕
選擇開機檔來源資料夾
就在解壓縮的資料夾裡
然後就可以開始了!
如果你的USB是新買的
可能會跟小弟遇到同一種情況
就是他會說你的USB有寫入保護,無法格式化
此時只要先在Windows環境下(就是在你的USB按右鍵格式化那種)先格式化過就可以了
格式化完之後
再把你下載的BIOS跟DOS架構的韌體寫入程式放進USB
在去BIOS調整為USB開機
就可以刷回舊版的BIOS囉!
好像有個專業術語
這種行為叫做”降刷”

一些MFC,VS2008及DirectShow的小技巧

註冊DLL檔的方法:

regsvr32 //註冊動態連結檔
regsvr32 -u //解除動態連結檔

————

[錯誤訊息] 正在停用的啟用內容不是最近啟動的那一個
0xC015000F: The activation context being deactivated is not the most recently activated one.

程式碼中加入

CWinApp::InitInstance();
afxAmbientActCtx = FALSE;

————

[警告訊息] 二進位碼不是以偵錯資訊而建置

專案屬性 -> 組態屬性 -> C/C++ ->最佳化 -> 停用
專案屬性 -> 組態屬性 -> 連結器 -> 命令列 -> 輸入 /debug

————

[DirectShow] 控制MPEG-2 Demultiplexer Filter的Pin

IMpeg2Demultiplexer *pDemux = NULL;

hr = m_pDemux->QueryInterface(IID_IMpeg2Demultiplexer, (void**)&pDemux);
GRAPH_LOG(gcMsgLog.LogToFile("QueryInterface()= %x",hr));


if (SUCCEEDED(hr))
{
        pDemux->DeleteOutputPin(L"004"); //刪除Pin腳

        // Define the media type.
        AM_MEDIA_TYPE mt;
        ZeroMemory(&mt, sizeof(AM_MEDIA_TYPE));
        mt.majortype = MEDIATYPE_Audio;
        mt.subtype = MEDIASUBTYPE_MPEG2_AUDIO;
        mt.formattype = FORMAT_WaveFormatEx;

        // Create a new output pin.
        IPin *pPin;

        hr = pDemux->CreateOutputPin(&mt, L"PSI Pin", &pPin);
 GRAPH_LOG(gcMsgLog.LogToFile("CreatOutputPin()= %x",hr));
 if (SUCCEEDED(hr))
 {
                // Map the PID.
  IMPEG2PIDMap *pPidMap = NULL;
  hr = pPin->QueryInterface(IID_IMPEG2PIDMap, (void**)&pPidMap);
  if (SUCCEEDED(hr))
  {
 
   ULONG cPid = 1;
   ULONG Pid[] = {0x00} ; // Map any desired PIDs.
   hr = pPidMap->MapPID(cPid, Pid, MEDIA_MPEG2_PSI);
   //pPidMap->Release();
  }else
   GRAPH_LOG(gcMsgLog.LogToFile("QueryTinterface__()=%x",hr));
  //pPin->Release();
 }

     
}

Windows 7 RC_64bit Bug Reports

目前遇到的問題 :

1.無法安裝Alcohol 120% BlackBlood Edition
(迴圈式重複安裝虛擬SCSI裝置)
2.無法安裝Kaspersky Internet Security 2009
(無法啟動服務)
3.VMware Workstation內部網路無法啟動
(無法指派DHCP)
4.控制台選項”家長控制”的”長”字為簡體中文
(語言套件安裝”香港特別行政區_繁體中文”)

硬體限制 :

1.無法支援Virtual PC_XP Mode
(本機CPU : Intel Core2Quad Q8200)

已安裝軟體 :
1.Kaspersky Internet Security 2010
2.Microsoft Visual Studio 2008
3.Microsoft Office 2007
4.Daemon Tools 4.30.4.0027
5.VMWare Workstation 6.5
6.WinRAR
7.Quick Time
8.Real Player
9.Nero Express
10.KMPlayer
11.ACDSee 10

Windows 7 RC

上次在ITHome看到Windows7 RC釋出的消息
我馬上就去載了!
也拿了32bit跟64bit的CDKEY

原本是想用VMWare測試
可是受不了改版Aero的誘惑
就直接裝在D槽

在熟悉英文界面之後
裝了些更新跟程式
想說回去用Vista看看

結果…
Vista被鎖住了…

鎖住的原因就不方便說明了
只是要告訴大家
在已安裝Vista的狀態下進行雙系統並存
要三思阿…

詳細測試進行中