How to get initial value of fields when value is a string?

69 views
Skip to first unread message

earlz

unread,
Nov 11, 2012, 9:45:56 PM11/11/12
to mono-...@googlegroups.com
Hi, I'm trying to use Mono.Cecil to track down every single string in a .Net application. One of the problems I'm having is I can't seem to get the value of an initial field value when it's a string.
Example:

class Foo {
  public string Bar="foobar"; //how to get foobar?
}

When I iterate over the Fields member of the Mono.Cecil type for Foo, I can get a reference to Bar, but it says it has an initial value of byte[0].

Any ideas how to get this?

Greg Young

unread,
Nov 11, 2012, 9:47:22 PM11/11/12
to mono-...@googlegroups.com
There is a constructor that's generated that sets it...
--
--
mono-cecil


--
Le doute n'est pas une condition agréable, mais la certitude est absurde.

earlz

unread,
Nov 11, 2012, 9:59:18 PM11/11/12
to mono-...@googlegroups.com
Ah, just now thought to actually analyze the IL. I had assumed that there was some kind of special metadata for strings. Guess it's just another object when it boils down to IL level.
Reply all
Reply to author
Forward
0 new messages