2019年12月21日 星期六

Decompile Dll on Mac OS

1.使用 VS code
2.在Marketplace 搜尋 ILSpy
3.安裝 ILSpy .NET Decompiler
4.隨便選取一個空路徑做專案資料夾,VS Code 開啟它
5.按 command + shift + p 打開命令模式
6.輸入 ILSpy
7.選擇 Decompile TL Assembly (pick file)
8.出現檔案選擇視窗,選擇要反組譯的dll
9.出現手殘刪除的 source code 的 內容了
慢慢寫回去吧...

2014年1月8日 星期三

MVC in Windows 8 and IIs 8


在 Windows 8 , IIS 8
新增 MVC 應用程式發生錯誤

'/test' 應用程式中發生伺服器錯誤。
--------------------------------------------------------------------------------


編譯錯誤 
  描述: 資源編譯無法完成 (錯誤發生於服務要求)。請檢閱下列的特定錯誤詳細資料,並視情況修改您的原始程式碼。 

 編譯器錯誤訊息: BC31007: 無法開啟模組檔 'C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\test\95610aae\6f83c161\App_global.asax.xcnvfnth.0.vb': 系統錯誤 &Hc0000005& (Visual Basic 編譯器內部錯誤)

因為是  IIS 8 又是 Framework 4 ,所以重新註冊 IIS 是無效的

微軟工程師跟我說:IIS8變聰明了,就算先裝 Framework 再裝 IIS 與不需重新註冊 ..

後來發現,只要給 C:\Windows\Temp 目錄,安全性加入 IIS_IUSRS 的寫入權限,就可以了
Windows7好像要給 Network Services 加入寫入權限.


2014年1月7日 星期二

無法載入檔案或組件 'Antlr3.Runtime' 或其相依性的其中之一。 存取被拒

ASP.NET MVC 4
讓使用者可以上傳檔案,存到另台SERVER
除了設定帳號外
C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files
這個目錄也要賦予該帳號的寫入權限

MVC in IIS 8

Windows Server 2012 , IIS 8 ,建立MVC的應用程式時,有時會報錯:
Http 錯誤 500.19 - Internal Server Error
無法存取要求的網頁,因為.............

修改 C:\Windows\System32\inetsrv\config\applicationHost.Config
將 handlers 的 overrideModeDefault="Deny" 改為 Allow
可解決部分問題


另外要CHECK在安裝IIS時,網頁伺服器-->應用程式開發
是否都有勾選

2012年12月16日 星期日

WPF 呼叫 WEB API 取得回傳的資料


Imports System.Net.Http
Imports System.Net.Http.Headers

Class MainWindow
    Dim client As HttpClient = New HttpClient

    Private Sub MainWindow_Loaded(sender As Object, e As RoutedEventArgs) Handles Me.Loaded
        client.BaseAddress = New Uri("http://localhost:60014")
        client.DefaultRequestHeaders.Accept.Add(
            New MediaTypeWithQualityHeaderValue("application/json"))

    End Sub

    Private Async Sub btn1_Click(sender As Object, e As RoutedEventArgs)
        Dim response = Await client.GetAsync("api/JB")
        response.EnsureSuccessStatusCode()
        Dim result As String = Await response.Content.ReadAsStringAsync()
        txt1.Text = result
    End Sub

End Class

2011年8月9日 星期二

讀取XML

Public Class 取得命令
    Private Const xmlns As String = "{urn:hl7-org:v3}"
    Private _xElement As XElement

    Public Sub New(ByVal xml As String)
        _xElement = XElement.Parse(xml)
        '_單張檔名 = 單張檔名 
    End Sub

    Public ReadOnly Property 資料庫主機名稱 As String
        Get
            Try
                Return _xElement.Element(xmlns & "資料") _
                                  .Element(xmlns & "備份") _
                                  .Element(xmlns & "資料庫主機名稱").Value
            Catch ex As Exception
                Return ""
            End Try
        End Get

    End Property

    Public ReadOnly Property 資料庫名稱 As String
        Get
            Try

                Return _xElement.Element(xmlns & "資料") _
                                  .Element(xmlns & "備份") _
                                  .Element(xmlns & "資料庫名稱").Value
            Catch ex As Exception
                Return ""
            End Try
        End Get

    End Property
End Class

取用方式:p.Element(xmlns & "資料庫主機名稱").Value

將 datatable 寫入XML


存成XML檔
Dim newXml As String = "<?xml version=" & Chr(34) & "1.0" & Chr(34) & " encoding=" & Chr(34) & "UTF-8" & Chr(34) & " standalone=" & Chr(34) & "no" & Chr(34) & "?>"
        newXml = newXml & "<ClinicalDocument classCode=" & Chr(34) & "DOCCLIN" & Chr(34) & " moodCode=" & Chr(34) & "EVN" & Chr(34) & " xmlns=" & Chr(34) & "urn:hl7-org:v3" & Chr(34) & " xmlns:voc=" & Chr(34) & "urn:hl7-org:v3/voc" & Chr(34) & " xmlns:xsi =" & Chr(34) & "http://www.w3.org/2001/XMLSchema-instance" & Chr(34) & "><資料> "

For i As Integer = 0 To dt.Rows.Count - 1
            newXml = newXml & "<備份>"
            newXml = newXml & "<資料庫主機名稱>" & dt.Rows(i).Item("資料庫主機名稱") & "</資料庫主機名稱>"
            newXml = newXml & "<資料庫名稱>" & dt.Rows(i).Item("資料庫名稱") & "</資料庫名稱>"
            newXml = newXml & "<備份方式>" & dt.Rows(i).Item("備份方式") & "</備份方式>"
            newXml = newXml & "<備份頻率>" & dt.Rows(i).Item("備份頻率") & "</備份頻率>"
            newXml = newXml & "<備份間隔>" & dt.Rows(i).Item("備份間隔") & "</備份間隔>"
            newXml = newXml & "<開始時間>" & dt.Rows(i).Item("開始時間") & "</開始時間>"
            newXml = newXml & "<備份路徑>" & dt.Rows(i).Item("備份路徑") & "</備份路徑>"
            newXml = newXml & "<DBCC>" & dt.Rows(i).Item("DBCC") & "</DBCC>"
            newXml = newXml & "<壓縮>" & dt.Rows(i).Item("壓縮") & "</壓縮>"
            newXml = newXml & "<刪除日數>" & dt.Rows(i).Item("刪除日數") & "</刪除日數>"
            newXml = newXml & "<清道夫>" & dt.Rows(i).Item("清道夫") & "</清道夫>"
            newXml = newXml & "<清道夫日數>" & dt.Rows(i).Item("清道夫日數") & "</清道夫日數>"
            newXml = newXml & "</備份>"
Next

        newXml = newXml & "</資料></ClinicalDocument>"

        Dim XmlFile As String = My.Application.Info.DirectoryPath & "\tg維護精靈.xml"
        Using sw As New StreamWriter(XmlFile) ', False, System.Text.Encoding.GetEncoding(950))
            sw.WriteLine(newXml)
            sw.Close()
        End Using