해서
아래와 같이
Project 에 "Data" Folder 를 생성하고 settings.xml 이라는 xml 파일을 추가한 후
Property 창에의 "Build Action" 옵션을 "Embedded Resource" 로 설정하였습니다.
googling 을 통해서 얻은 지식으루다가 아래와 같이 코딩을 이어 갔습니다.
하지만 2번을 통과하면 값을 가져오지 못합니다.
1 Dim asm As System.Reflection.Assembly = Assembly.GetExecutingAssembly()
2 Dim xmlStream As System.IO.Stream = asm.GetManifestResourceStream("WindowsApplication5.Data.settings.xml")
3 Dim xmlDoc As XmlDocument = New XmlDocument()
4 xmlDoc.Load(xmlStream)
5 Dim xmlDs = XDocument.Parse(xmlDoc.OuterXml)
그 이유를 찾아 보았습니다.
짐작이 가는게 있었습니다.
reflector 를 이용해서 exe 파일을 까보았더랬죠.
역시나.. VB 는 폴더명을 Namespace 로 포함하지 않는 군요...
당연히 똑같겠지만 서도... ilDAsm 파일로도 열어봤습니다. ^^'
C#은 어떨까요?
눈으로 직접 확인해 봐야겠죠? ㅋㅋㅋ
위 VB Project와 동일한 환경으로 Xml 파일을 추가하였습니다.
Build 를 하고
Reflector 와 ilDAsm 으로 살펴보니...
그렇군요...
"Data" Folder 명이 Namespace 에 포함되어 있는 것을 볼 수 있습니다.
단순히 C# 코드만 복사해서 사용하려다 보니 나온 오류였습니다. ㅋㅋㅋ
VB.NET 에서는 아래와 같이 사용해야겠네요? ^^
1 Dim asm As System.Reflection.Assembly = Assembly.GetExecutingAssembly()
2 Dim xmlStream As System.IO.Stream = asm.GetManifestResourceStream("WindowsApplication5.settings.xml")
3 Dim xmlDoc As XmlDocument = New XmlDocument()
4 xmlDoc.Load(xmlStream)
5 Dim xmlDs = XDocument.Parse(xmlDoc.OuterXml)
그럼 이때 VB 는 C# 과 같이 Folder 별 Namespace 를 관리하지 않나? 라는 궁금증을 가지시는 분이 있으시겠죠?
네... 맞습니니다.
VB.Net 은 C# 과 같이 파일을 추가할 때 자동으로 Namespace Syntax 를 파일에 추가해 주지 않습니다.
개발자가 직접해주어하지요...
그래서 아래와 같은 상황에서 햇갈린다는 메세지를 띄워주게 됩니다.
요런 점은 Microsoft VB Team 이 추가를 해줬으면 하는 바램이 있네요... 그쵸? ^^'
행복한 고수되십시요...
woojja ))*
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
'.NET > VB.NET' 카테고리의 다른 글
[VB.NET] Application UAC 상승시키기. (4) | 2011.05.24 |
---|---|
[VB.NET] Resource 를 이름으로 가져오기 (1) | 2011.05.17 |
[VB.NET] Visual Basic for Windows Phone Developer Tools - RTW (0) | 2010.12.17 |
[VB.NET] 2010 WorldCup Pass Counter (2) | 2010.06.17 |
[VisualBasic.NET] 쏟아지는 VisualBasic.NET 2010 책들 (0) | 2010.05.18 |