2022年12月2日 星期五

classic ASP Microsoft Office Excel 錯誤 '800a03ec' 無法取得類別 Workbooks 的 Open 屬性



 繼前一篇文章

 classic ASP 執行 Server.CreateObject("Excel.Application") 失敗 ASP 0178 : 80070005

後續使用 Workbooks.Open(Server.MapPath("xxx.xls"))  又發生錯誤:

  Microsoft Office Excel 錯誤 '800a03ec'   無法取得類別 Workbooks 的 Open 屬性  


google後找到解法

(1)先確認以下路徑資料夾是否存在,不存在就建一個新的

  如果是 64位元作業系統路徑為:

  C:\Windows\SysWOW64\config\systemprofile\Desktop

  如果是 32位元作業系統路徑為:

  C:\Windows\System32\config\systemprofile\Desktop

(2)在Desktop 資料夾 > 右鍵 > 內容 > 安全性 > 在群組或使用者名稱中新增 USERS ,

     並授與"讀取"的權限。










2022年12月1日 星期四

classic ASP 執行 Server.CreateObject("Excel.Application") 失敗 ASP 0178 : 80070005



舊ASP程式移至新主機 Windows Server 2019 64bit後,

程式執行Server.CreateObject("Excel.Application")失敗

 

伺服器物件 錯誤 'ASP 0178 : 80070005'

Server.CreateObject 存取錯誤

/1.asp, 行3

檢查使用權限時,呼叫 Server.CreateObject 失敗。拒絕存取此物件。 


爬了網路上討論串都說:

「元件服務」> 「我的電腦」 > 右鍵 > 內容 -> COM安全性 > 設定存取權限

結果我一直在元件服務中 「DCOM設定」找不到 Excel.Application 這個元件,也沒看到Microsoft.Excel相關的元件,最後發現,因為 office是裝 32位元版的,所以要用 啟動 > 執行 mmc -32 

開啟後主控台沒東西,要自已到 「檔案」> 「新增/移除嵌入式管理單元」 中把「元件服務」加進來,然後在「DCOM設定」就可以找到Microsoft Excel 應用程式了。

問題總算解決了...

 



















2022年11月23日 星期三

[免費鼓譜] 自娛自樂-金志文- Free Drum Score

爵士鼓 Drumset  免費鼓譜分享 歡迎大家下載使用

使用開源打譜軟體 Musescore  - 取之於社會,用之於社會

如果無法下載,再請留言讓我知道唷~

圖檔下載:




PDF檔下載:

Youtube音樂參考:

自娛自樂 - 金誌文『我學著一個人一整天都不失落,就讓我喝醉了,唱著歌自娛自樂』
歌詞參考:
天氣有點悶熱 心情有點忐忑 我斟滿了三杯酒
在某地某時某刻 自娛自樂

生活有點坎坷
愛情有點曲折
我保持笑像一個瘋子一樣
快樂到
累了

我學著一個人一整天都不失落
就讓我喝醉了
唱著歌自娛自樂
開始懷疑了
被愛情擊倒了
無可奈何

不知該愛什麼挑什麼改變什麼
還好我經歷了
這也算痛過傷過
怎樣才好呢
錯過每個選擇
哭笑不得 誒~

天氣有點悶熱
心情有點忐忑
我斟滿了三杯酒
在某地某時某刻 自娛自樂

生活有點坎坷
愛情有點曲折
我保持笑像一個瘋子一樣
快樂到
累了

我學著一個人一整天都不失落
就讓我喝醉了
唱著歌自娛自樂
開始懷疑了
被愛情擊倒了
無可奈何

不知該愛什麼挑什麼改變什麼
還好我經歷了
這也算痛過傷過
怎樣才好呢
錯過每個選擇
哭笑不得 誒~

我學著一個人一整天都不失落
就讓我喝醉了
唱著歌自娛自樂
開始懷疑了
被愛情擊倒了
無可奈何 Oh~

不知該愛什麼挑什麼改變什麼
還好我經歷了
這也算痛過傷過
怎樣才好呢
錯過每個選擇
哭笑不得
哭笑不得

[免費鼓譜] 失眠的夜-宋孟君- Free Drum Score

爵士鼓 Drumset  免費鼓譜分享 歡迎大家下載使用

使用開源打譜軟體 Musescore  - 取之於社會,用之於社會

如果無法下載,再請留言讓我知道唷~

圖檔下載:





PDF檔下載:

Youtube音樂參考: 宋孟君 - 失眠的夜「我把燈光都熄滅,熬著最難熬的夜。」

歌詞參考:
今夜我又失眠
一個人 的房間
我把燈光都熄滅
熬著最難熬的夜
你不在身邊
孤單從不停歇
枕頭又濕了一遍
今夜我又失眠
一個人的房間
我的心裡下著雪
望著最寂寞的天
還翻著從前你和我的聊天
和你所有一切也停在從前
我一個人生活
不會再對誰去訴說
失望疲憊軟弱
就是現在的我
我所有心痛的理由
在別人看來
都是小題大做
我心痛的沈默
對於你來說
是我不值一提的難過
今夜我又失眠
一個人 的房間
我把燈光都熄滅
熬著最難熬的夜
你不在身邊
孤單從不停歇
枕頭又濕了一遍
今夜我又失眠
一個人的房間
我的心裡下著雪
望著最寂寞的天
還翻著從前你和我的聊天
和你所有一切也停在從前
我一個人生活
不會再對誰去訴說
失望疲憊軟弱
就是現在的我
我所有心痛的理由
在別人看來
都是小題大做
我心痛的沈默
對於你來說
是我不值一提的難過
今夜我又失眠
一個人 的房間
我把燈光都熄滅
熬著最難熬的夜
你不在身邊
孤單從不停歇
枕頭又濕了一遍
今夜我又失眠
一個人的房間
我的心裡下著雪
望著最寂寞的天
還翻著從前你和我的聊天
和你所有一切也停在從前

試著慢慢閉上眼
腦海中 浮現畫面
那是一個雨天
你對我說著抱歉
試著慢慢閉上眼
腦海中 浮現畫面
那是一個雨天
你對我說著抱歉

2022年10月19日 星期三

[免費鼓譜] 捲菸-美秀集團- Free Drum Score

爵士鼓 Drumset  免費鼓譜分享 歡迎大家下載使用

使用開源打譜軟體 Musescore  - 取之於社會,用之於社會

如果無法下載,再請留言讓我知道唷~

圖檔下載:

PDF檔下載:

Youtube音樂參考:

歌詞參考:
我們曾經那麼快樂 現在卻不愛了
我說妳這樣太扯 妳說妳不愛台客
該來的那天還是來了 我唱著哀歌
這段感情失敗了 但我會一直在這
我們像是天南和地北 截然不同的地位
我們像是淑真和水偏 苦撐多少的淬煉
承諾還是無法兌現 我只能說人會變
妳也不用覺得虧欠 妳要愛誰我隨便
但是我還會繼續愛你
而在妳面前 我會假裝不在意
當個工具人 二十四小時待機
不怕我寵壞妳
對不起我騙了妳
捲菸的菸草不來自後山
戒不掉菸戒不掉妳 該怎麼辦
妳轉身離開我 我知道是我活該
捲菸捲走我的愛 我的愛
上了大學玩了樂團 交了壞朋友
崇拜金錢崇拜權利 也崇拜成就
白天練團晚上夜店 我都待很久
忘了自己忘了初衷 誰能來拯救
迷途的羔羊 每天我照樣
少了妳好像 白天少了朝陽
好像變回那個屁孩只會尻槍
而不是獨自翱翔 好想 翱翔
對不起我騙了妳
捲菸的菸草不來自後山
戒不掉菸 戒不掉妳 該怎麼辦
妳轉身離開我 我知道是我活該
捲菸捲走我的愛 我的愛
對不起我騙了妳
捲菸的菸草不來自後山
戒不掉菸戒不掉妳 該怎麼辦
妳轉身離開我 我知道是我活該
捲菸捲走我的愛 我的愛
捲菸捲走我的愛 我的愛

2022年10月6日 星期四

[easyUI筆記] 如何取得編輯中的欄位值 get editing cell value

 

記錄一下在easyui的討論串裡有提供如何得編輯中的欄位值

var dg = $('#dg');
var cell = dg.datagrid('cell');
if (cell){
var ed = dg.datagrid('getEditor', cell);
if (ed){
var value = ed.actions.getValue(ed.target);
console.log(value)
}
}

2022年8月25日 星期四

如何使用Google App Script 補捉Google Form表單送出當下時的值

 

使用Google App Script 要取得表單送出當下的值有二個方法:

(1)從表單的試算表回覆Sheet上建立指令碼:



     程式碼:


   這裡的myFunction傳入的參數物件有什麼可參考Google Sheets 事件中的送出表單文件


在GAS中設定觸發條件:


(2)表單Form中建立指令碼建立指令碼:



     程式碼:


這裡的myFunction傳入的參數物件有什麼可參考Google Forms 事件中的送出表單說明文件

在GAS中設定觸發條件:



2022年7月25日 星期一

[免費鼓譜] 後來 - 劉若英- Free Drum Score

爵士鼓 Drumset  免費鼓譜分享 歡迎大家下載使用

使用開源打譜軟體 Musescore  - 取之於社會,用之於社會

如果無法下載,再請留言讓我知道唷~

圖檔下載:

 


PDF檔下載:

Youtube音樂參考:

歌詞參考:
後來 我總算學會了如何去愛 可惜你早已遠去 消失在人海
後來 終於在眼淚中明白 有些人 一旦錯過就不再

梔子花白花瓣 落在我藍色百褶裙上
愛你 你輕聲說 我低下頭聞見一陣芬芳
那個永恆的夜晚 十七歲仲夏 你吻我的那個夜晚
讓我往後的時光 每當有感嘆 總想起當天的星光

那時候的愛情 為什麼就能那樣簡單
而又是為什麼 人年少時 一定要讓深愛的人受傷
在這相似的深夜裡 你是否一樣 也在靜靜追悔感傷
如果當時我們能 不那麼倔強 現在也不那麼遺憾

你都如何回憶我 帶著笑或是很沉默
這些年來 有沒有人能讓你不寂寞

永遠不會再重來 有一個男孩 愛著那個女孩

2022年7月20日 星期三

MuseScore 3 如何製作2小節反覆符號 (列印Only)

MuseScore 3 在打譜時遇到要做2小節反覆時無內建功能,

爬文後 musescore 的論壇中Jojo-Schmitz有提到 MuseScore 4將會內建 2小節及4小節的反覆功能,

2022/5/30 已有 MuseScore Firs Alpha版的消息釋出,讓我們引領期盼吧~

但新版尚未出來前,目前解決方案有二個:

(1)簡易版:製譜後不用播放,只要用來列印的話,步驟比較少

(2)完整版:要用在播放,那就要辛苦一點,

     老老實實依照MuseScore官網的HowTo中的12個步驟做(心累...)

     How to create a 2-measure repeat sign with playback 


我目前打譜只用在列印,就選(1)方案,(2)方案的話有點累人…有機會再做個中文圖文解說版(到時MuseScore 4出來也可以不用做了 😄 )


步驟1: View > Master Palette > 查詢輸入 repeat 


  步驟2:選取圖案 > 拖拉到所要的小節位置


步驟3:選取要重複的二小節中的休止符號,在Inspector屬性視窗中 取消勾選Visible







2022年7月19日 星期二

PDF加上浮水印不求人 PDF Watermark open source: Markpdf

 

最近想要把自已做的樂譜分享上來,原本是不想加上浮水印 Watermark,

但在網路上看到有些人把別人辛苦做成的樂譜把一些原製作人的名字弄掉,

再自已加上浮水印變成自已的樂譜。

為了防止這種事發生,最後還是決定加上浮水印好了!

但Musescore的打譜軟體並沒有提供浮水印的功能,一切只能靠自已…

不想使用那種Free online的PDF工具,因為畢竟自已的文件還是不要隨便亂上傳到網路上

找了一下,發現一個簡便的開源軟體 markpdf,加上一點指令很快就可以為自已的PDF加上浮水印。

GitHub下載位置:markpdf 1.0.0


指令如下:

markpdf_windows-386.exe "來源檔名路徑.pdf" "./浮水印圖檔路徑.png" "./輸出檔名路徑.pdf" --scale-width-center --opacity=0.3


參數說明:

--scale-width-center 是延伸圖檔並在頁面置中

--opacity  浮水印圖檔的透明度

其他參數說明請自行參考文件

P.S 為了避免有人再用程式把PDF的浮水印分離出來,建議產出的pdf 再使用 虛擬印表機(例: doPDF) 再輸出一次,讓PDF和浮水印二者無法分離。


2022年7月18日 星期一

[.NET] ERROR [IM014][ODBC 驅動程式管理員] 指定之 DSN 中的驅動程式和應用程式架構不相符

 


使用.NET 開發

ODBC 進行連線時 發生錯誤

ERROR [IM014] [Microsoft][ODBC 驅動程式管理員] 指定之 DSN 中的驅動程式和應用程式架構不相符

由於Windows是64位元,所以從控制台執行的ODBC資料來源管理員也是64位元版本,

而Informix DB 的中介軟體是 32位元

導致【指定之DNS中的驅動程式和應用程式架構不相符】的錯誤訊息


所以專案屬性須設為 prefer 32-bit

讓程式使用 32位元的ODBC 去連接informix




否則 64位元 ODBC  呼叫 32位元的中介軟體會發生架構不相符的錯誤

ps.

作業系統是64位元時,在系統管理工具裡的資料來源(ODBC)是設定64位元軟體所使用的ODBC設定,如果軟體是32位元,則必需執行C:\Windows\SysWOW64\odbcad32.exe去進行設定,否則就會出現"指定之DNS中的驅動程式和應用程式架構不相符"的錯誤訊息。


2022年7月12日 星期二

[IIS] SmartQuery安裝失敗問題 The specified path xxx is unavailable

 安裝SmartQuery 2017時發生錯誤訊息如下:

The specified path 'http://電腦名稱/Smart-Query' is unavailable. The Internet Information Server might not be running or the path exists and is redirected to another machine. Please check the status of this virtual directory in the Internet Services Manager.

IIS已經有啟用了,但為何還出現這個錯誤,經google後,解決方式是開啟 IIS  6管理相容性

控制台 > 程式集 > 程式和功能 > 開啟或關閉Windows功能 > Internet Information Service > IIS 6 管理相容性 。把他打勾進行啟用

2022年7月11日 星期一

鼓組與記譜法圖例 DrumSet Score Demonstrate

以下為鼓組上使用的記譜法( MuseScore的預設),我把他與鼓組對照用圖示方式整理出來,供初學者方便對照。 鼓譜的記譜法 基本上是示例的那樣, 但不同的書籍或採譜軟體可能略有不同, 主要是因為打譜軟體或個人習慣有異 不過大同小異,不會差太多。

鼓組的圖是引用 Depositphotos網站中的圖庫進行加工的。
 

2022年7月8日 星期五

[免費鼓譜] 走過咖啡屋 - 王雅洁- Free Drum Score

 走過咖啡屋 的譜在Google 找到的都是 千百惠的版本,這邊提供王雅洁的版本

爵士鼓 Drumset  免費鼓譜分享 歡迎大家下載使用

使用開源打譜軟體 Musescore  - 取之於社會,用之於社會

如果無法下載,再請留言讓我知道唷~

圖檔下載:

走過咖啡屋-王雅洁 免費鼓譜 FreeDrumScore




PDF檔下載:


Youtube音樂參考:

歌詞參考:
每次走過這間咖啡屋
忍不住慢下了腳步
你我初次相識在這裡
揭開了相約的序幕
今天你不再是座上客
我也就恢復了孤獨
不知什麼緣故使我倆
由情侶變成了陌路
芳香的咖啡飄滿小屋
對你的情感依然如故
不知道何時再續前緣
讓我把思念向你傾訴
我又走過這間咖啡屋
忍不住慢下了腳步
屋裡再也不見你和我
美麗的往事已模糊
每次走過這間咖啡屋
忍不住慢下了腳步
你我初次相識在這裡
揭開了相約的序幕
今天你不再是座上客
我也就恢復了孤獨
不知什麼緣故使我倆
由情侶變成了陌路
芳香的咖啡飄滿小屋
對你的情感依然如故
不知道何時再續前緣
讓我把思念向你傾訴
我又走過這間咖啡屋
忍不住慢下了腳步
屋裡再也不見你和我
美麗的往事已模糊

2022年7月1日 星期五

[Google翻譯]mp3音檔下載不求人-Google translate

有朋友問怎麼下載Google翻譯的語音檔

Google 了一下找到方法,做法是從網頁response的資訊中的字串 [["wrb.fr","jQ1olc"....]]複製下來後

透過javascript 把他轉成blob後再下載存成檔案

步驟:

(1)開啟 Google 翻譯,輸入要產生語音的文字



(2)按F12 開啟DevTools 開發人員工具,切到Network頁籤,先清除所有request的資訊,不然太雜亂不好找接下來要找的資訊



(3)按下語音播放後會出現batchexecute?rpcids=....的連結,查看Response頁籤的資訊,

    找到 [["wrb.fr","jQ1olc","[\.....\"]",null,null,null,"generic"]] 這段文字,將刪除線的部份刪掉



(4)複製(3)的文字,貼到準備好的網頁(程式碼如下),按下載就可以取得音檔囉

程式碼請參考如下,請自行複製程式碼,另存成附檔為html,例:XXXX.html,再用瀏覽器開啟即可。






[Tabla] 基礎入門筆記



gharānā  :可理解為「流派」、「門派」,詳細定義可參考 wiki
[Tabla] 基礎入門筆記

開始接觸Tabla,簡單記錄一下爬文後常見的名詞

Tabla 廣為流傳有六大 gharana (門派? 流派?):
(1)Delhi :最古老的流派(源自18世紀)
(2)Ajrara:Delhi的分支
(3)Lucknow (Purab):Delhi的分支,加入手掌、無名指、小指的技巧
(4)Farrukhabad
(5)Punjab
(6)Benares

以上各gharana的有各自技法特色,期許未來學習後能在此分享各gharana的異同處

Tal (Tala, Taal, Taalam):雖然不太精準,不過暫時先理解為「譜號」,如 4/4拍,
   比較常見的Tals有:
   Teel Tal :  16拍 ( 4 個 4/4)
   Jhap Tal: 10拍 (2個 5/4)
   Rupak Tal:7拍 (3/4 + 2/4 + 2/4)
   Ek Tal: 12拍 (3個4/4)

   Kerva   8拍
   Dadra   6拍

Theka:可譯為「支柱」,是一個固定的基本節奏,用於各種Tal, 或 Time cycle的基底上。

Tali: 強拍
Khali:弱拍

在Theka中,透過不打低音的 Ge 來表示弱拍,介以辦識出目前是哪種Tal



速度術語:
Vilambit:慢板
Madya:中板
Drut:快板

Chauka一倍速
Vilamba兩倍速
Madhyama四倍速
Dhuridha八倍速
Adi-dhurida十六倍速




2022年6月30日 星期四

[IIS]IIS設定sessionstate時發生錯誤:無法取設定區段

 因參考網路文章設定工作階段狀態模式時

在web.confi設定sessionstate後,在IIS 中點選ASP.NET中的任何一個項目圖示

例如: 連接字串、電腦金鑰...等都會出現以下錯誤:

執行此作業時發生錯誤。

詳細資料: 

檔案名稱: \\?\C:\xxxx\web.config

行號: 59

錯誤: 無法讀取設定區段 'sessionstate',因為它缺少區段宣告


後來發現,sessionstate這個元素標籤是錯誤的,應該是 sessionState,大小寫不同差很大…

因為<sessionstate>這個元素並沒有在<system.web>元素中定義配置宣告,所以IIS解析時發生錯誤:無法讀取設定區段'sessionstate', 因為它缺少區段宣告

以後若出現類似錯誤記得先確定tag的名稱是否打對,因為是複製網路文章,所以很容易有這種情形發生

2022年6月15日 星期三

[電子發票] Turnkey發票資料交換-歷史存證檢核郵件自動檢查

 開始使用電子發票上傳發票大平台後,每日大平台都每日寄送歷史存證檢核表

主要目的係供比對前一日上傳資料筆數,若發現上傳資料筆數不符時再與電子發票技術客服人員聯繫。

問題是,誰有那功夫每天去打開來檢查……一般都是直接乎略,到真正發生問題被通知才會發現。

因此寫了一個小程式,每天自動收信檢附檔中的excel檔,檢查 傳輸差異數、存證差異數、存證異常清單。如果有異常就轉發出來。

程式碼分享出來,如果有需要的可以參考使用 TurnkeyMailChecker

主要使用套件:

MailKit:用來收信、發信

SharpZipLib:用來解壓信件zip附檔

NPOI:用來讀取excel檔資料


大致說明一下做法思路:

(1)建立一個專門收電子發票平台的帳號

(2)使用IMAPClient收信 

     這裡要注意 IMAP使用的 port,

     無加密使用 143 

     SMTPClient.Connect("exaple.com", 143, SecureSocketOptions.None );

     有加密使用 993

     SMTPClient.Connect("exaple.com", 993, SecureSocketOptions.SslOnConnect);

     收信時檢查只有寄信者為 peinvmgr@einvoice.nat.gov.tw,並符合關鍵主旨XXX有限公司{年-月-日} 歷史存證檢核表,才進行處理,其他信件直接刪除,每次收完就刪除處理過的信件,避免信箱爆掉。

(3)檢查第1個Sheet以下欄位值:傳輸差異數  存證差異數 

     及第3個Sheet 存證異常清單計算筆數,如果其中一個數值大於0,表示有異常,隨即發送通知

程式不難,主要就是使用各方的套件,像組積木一樣完成自已想要的功能,感謝這些強大套件的開發者們的努力,讓事件簡單化!

主程式如下:

2022年5月19日 星期四

[Javascript] jquery.table2excel 對 texarea中資料的處理

jquery.table2excel 這個js套件可以將簡易的table轉出excel,最近使用時發現table中的textarea 元素轉出後在excel會是個元件,而不是在儲存格中的純文字,有點困擾所以看了一下source code, 

發現裡面有對 input這個元素做處理,如法泡製一下,正規表示式-抓取html中 textarea中的資料,另外因textarea會有換行的問題,所以再將換行符號取代為 <br />,不過如果沒有加上style的話,excel開啟後對<br />的解譯會新增一列,所以再加上mso-data-placement:same-cell;後便可保持在同一個儲存格上囉~


    function exclude_textareas(string) {

        var _patt = /(<textarea [^>]*>(.*[\n]*.*)<\/textarea>)/i;

        return string.replace(/<textarea [^>]*>.*[\n]*.*<\/textarea>/ig, function myFunction(x) {

            var res = _patt.exec(x);

            if (res !== null && res.length >= 2) {

                return res[2].replace('\n', '<br style="mso-data-placement:same-cell;" />');

            } else {

                return "";

            }

        });

    }


/<

2022年5月16日 星期一

[Javasccript]easyui $.messager.progress Esc鍵問題

當使用 $.messager.progress() 這個功能時,我直覺的用法是用在讓使用者知道目前正在處理資料中,請用戶等待處理完畢

不過發現當啟 progress視窗開啟時,只要用戶按Esc鍵,這個視窗就會關閉.....這個可不是我想要,正常不應該讓使用者隨意去取消關閉視窗。

要解決這個問題可使用 $.extend 去把 $.messager.defaults 覆寫(overrid)  onBeforeClose的功能

 (這個onBeforeClose是繼承自 easyui 的 panel )

參考語法如下:

$.extend($.messager.defaults, {

onBeforeClose: function(){

        if($(this).find('.messager-progress').length > 0 )

            if( event && event.type == "keydown" && event.keyCode == 27 ) return false;

    }

});