摘要:[筆記] 註冊到windows服務的執行檔使用的檔案路徑不能使用相對路徑??
一開始是用WCF包裝一個服務
這個服務會根據config引用的元件中的Method去執行
IProcessItem pItemObject;
pItemObject = (IProcessItem)Activator.CreateInstance(Type.GetType(pItem.Type));
MethodInfo _MethodInfo = null;
_MethodInfo = pItemObject.GetType().GetMethod(pItem.Method);
dt = (DataTable)_MethodInfo.Invoke(pItemObject, new object[] { dt });
這個method就是前一篇提到的,
去抓檔來去頭去尾
在本機執行過console mode都沒問題就部署上server
註冊進windows服務,發現切檔的動作都沒處理
就直接執行執行檔是正常的,
這樣應該是設定的問題,查半天正想要改寫元件埋DEBUG時
想到會不會是抓檔不能用相對路徑
(想到asp.net 在2.0 compile好的dll是放在其他地方不是專案目錄,跟1.1不一樣)
就改成絕對路徑,程式就正常了0.0
解法參考: