eridgway Posted April 9, 2007 Report Share Posted April 9, 2007 Hi, I'm an trying to use a custom palette on a chart in a WinForm, and am receiving the following error: This .resources file shouldn't be used with this reader. Your resource reader type: System.Resources.ResourceReader, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089I followed the steps outlined here, and am using the downloadable palette file for testing purposes http://support.softwarefx.com/Article.aspx?Product=CfxNet62&KBID=6001019&Embed=1 Suggestions? -E Link to comment Share on other sites More sharing options...
Frank Posted April 11, 2007 Report Share Posted April 11, 2007 What .NET Framework version are you using to build this resource? Chart 6.2 expects Version 1.x. Link to comment Share on other sites More sharing options...
eridgway Posted April 11, 2007 Author Report Share Posted April 11, 2007 I am not explicitly declaring which framework to use. However, I do have 1.0, 1.1, and 2.0 installed on my machine. Is there even a way to force it to use an older framework? Is there a patch in the works for supporting the 2.0 framework, or will we have to install the 1.x on all the client machines? Edit: Under Project - Properties - Common Properties - General I have the following... Supported Runtimes: v1.1.4322 ...and I still recieve the error Link to comment Share on other sites More sharing options...
Frank Posted April 11, 2007 Report Share Posted April 11, 2007 > Is there even a way to force it to use an older framework? Check your CfxResPkg using either Reflector or Ildasm . What version of the framework is it referencing? this is the version beign used. > Is there a patch in the works for supporting the 2.0 framework If you want to integrate with the .NET Framework 2.0 Chart FX 7.0 is your best option, however Chart FX 6.2 integrates to Net 2.0 as well as any .NET 1.x component. > will we have to install the 1.x on all the client machines? No. Chart FX 6.2 works fine with the Framework 2.0, however any resources it reads need to be built using 1.x Link to comment Share on other sites More sharing options...
eridgway Posted April 11, 2007 Author Report Share Posted April 11, 2007 Sorry, not really familar with Ildasm. I have no idea where I should be looking to find what version of the framework the CfxResPkg is being used. I can tell you that the version # for the CfxResPkg utility is 6.0.895.29108 Here's the Manifest generated by the Ildasm app =========================================================================== .assembly extern mscorlib{ .publickeytoken = (B7 7A 5C 56 19 34 E0 89 ) // .z\V.4.. .ver 1:0:3300:0}.assembly extern System{ .publickeytoken = (B7 7A 5C 56 19 34 E0 89 ) // .z\V.4.. .ver 1:0:3300:0}.assembly extern System.Xml{ .publickeytoken = (B7 7A 5C 56 19 34 E0 89 ) // .z\V.4.. .ver 1:0:3300:0}.assembly extern System.Drawing{ .publickeytoken = (B0 3F 5F 7F 11 D5 0A 3A ) // .?_....: .ver 1:0:3300:0}.assembly extern System.Windows.Forms{ .publickeytoken = (B7 7A 5C 56 19 34 E0 89 ) // .z\V.4.. .ver 1:0:3300:0}.assembly CfxResPkg{ .custom instance void [mscorlib]System.Reflection.AssemblyTrademarkAttribute::.ctor(string) = ( 01 00 39 43 68 61 72 74 20 46 58 C2 AE 20 69 73 // ..9Chart FX.. is 20 61 20 72 65 67 69 73 74 65 72 65 64 20 74 72 // a registered tr 61 64 65 6D 61 72 6B 20 6F 66 20 53 6F 66 74 77 // ademark of Softw 61 72 65 20 46 58 2C 20 49 6E 63 2E 00 00 ) // are FX, Inc... .custom instance void [mscorlib]System.Reflection.AssemblyCopyrightAttribute::.ctor(string) = ( 01 00 25 43 6F 70 79 72 69 67 68 74 20 31 39 39 // ..%Copyright 199 33 2D 32 30 30 32 20 53 6F 66 74 77 61 72 65 20 // 3-2002 Software 46 58 2C 20 49 6E 63 2E 00 00 ) // FX, Inc... .custom instance void [mscorlib]System.Reflection.AssemblyInformationalVersionAttribute::.ctor(string) = ( 01 00 03 36 2E 30 00 00 ) // ...6.0.. .custom instance void [mscorlib]System.Reflection.AssemblyKeyNameAttribute::.ctor(string) = ( 01 00 00 00 00 ) .custom instance void [mscorlib]System.Reflection.AssemblyKeyFileAttribute::.ctor(string) = ( 01 00 18 51 3A 5C 53 6F 75 72 63 65 5C 53 6F 66 // ...Q:\Source\Sof 74 77 61 72 65 46 58 2E 73 6E 6B 00 00 ) // twareFX.snk.. .custom instance void [mscorlib]System.Reflection.AssemblyDelaySignAttribute::.ctor(bool) = ( 01 00 01 00 00 ) .custom instance void [mscorlib]System.Reflection.AssemblyTitleAttribute::.ctor(string) = ( 01 00 19 43 68 61 72 74 46 58 20 52 65 73 6F 75 // ...ChartFX Resou 72 63 65 20 50 61 63 6B 61 67 65 72 00 00 ) // rce Packager.. .custom instance void [mscorlib]System.Reflection.AssemblyProductAttribute::.ctor(string) = ( 01 00 07 43 68 61 72 74 46 58 00 00 ) // ...ChartFX.. .custom instance void [mscorlib]System.Reflection.AssemblyCompanyAttribute::.ctor(string) = ( 01 00 11 53 6F 66 74 77 61 72 65 20 46 58 2C 20 // ...Software FX, 49 6E 63 2E 00 00 ) // Inc... .custom instance void [mscorlib]System.Reflection.AssemblyConfigurationAttribute::.ctor(string) = ( 01 00 00 00 00 ) .custom instance void [mscorlib]System.Reflection.AssemblyDescriptionAttribute::.ctor(string) = ( 01 00 38 50 61 63 6B 61 67 65 73 20 72 65 73 6F // ..8Packages reso 75 72 63 65 73 20 66 6F 72 20 43 68 61 72 74 46 // urces for ChartF 58 20 28 62 6F 72 64 65 72 73 2C 20 70 61 6C 65 // X (borders, pale 74 74 65 73 2C 20 65 74 63 2E 29 00 00 ) // ttes, etc.).. .publickey = (00 24 00 00 04 80 00 00 94 00 00 00 06 02 00 00 // .$.............. 00 24 00 00 52 53 41 31 00 04 00 00 01 00 01 00 // .$..RSA1........ 3D 35 B0 5A C5 23 A5 DB BD B6 5B 61 58 A5 DE 0E // =5.Z.#....[aX... B2 0D 25 19 FF 69 56 AE 29 4F CA DA 2C A2 D3 54 // ..%..iV.)O..,..T 42 8A 11 63 F5 6E 82 94 C2 77 13 2B A0 75 9D 85 // B..c.n...w.+.u.. B8 7D F8 81 69 B6 3F 85 19 88 27 38 BB A4 8B 91 // .}..i.?...'8.... 26 0F 3E 09 02 52 DE 6D A3 66 E8 F1 6E E3 2B 4C // &.>..R.m.f..n.+L 81 6C D9 F6 A4 66 23 2D 57 E5 5B B9 2C AE 3E 4A // .l...f#-W.[.,.>J 6E 01 B4 C0 B4 12 41 81 9D 25 D5 DC BF 6F 1C DD // n.....A..%...o.. B0 B7 AB BA E6 08 CB 54 11 06 E8 85 5F 0B CE B6 ) // .......T...._... .hash algorithm 0x00008004 .ver 6:0:895:29108}.module CfxResPkg.exe// MVID: {8A44F998-06B5-4CA7-9059-7F9B2FF375A2}.imagebase 0x00400000.subsystem 0x00000003.file alignment 4096.corflags 0x00000009// Image base: 0x00fe0000 =========================================================================== ...and here is the dump from it... =========================================================================== ___[MOD] C:\Program Files\ChartFX for .NET 6.2\Util\CfxResPkg.exe | M A N I F E S T |___[NSP] SoftwareFX.ChartFX.ResPkg | |___[CLS] 0 | | | .class private auto ansi beforefieldinit | | |___[MET] .ctor : void() | | |___[MET] K : void(valuetype SoftwareFX.ChartFX.ResPkg.A,string,class [mscorlib]System.Collections.ArrayList) | | | |___[ENU] 1 | | | .class private auto ansi sealed | | | extends [mscorlib]System.Enum | | | .custom instance void [mscorlib]System.FlagsAttribute::.ctor() = ( 01 00 00 00 ) ... | | |___[sTF] 0J : public static literal valuetype SoftwareFX.ChartFX.ResPkg.'1' | | |___[sTF] 0K : public static literal valuetype SoftwareFX.ChartFX.ResPkg.'1' | | |___[sTF] 0L : public static literal valuetype SoftwareFX.ChartFX.ResPkg.'1' | | |___[sTF] 0M : public static literal valuetype SoftwareFX.ChartFX.ResPkg.'1' | | |___[FLD] value__ : public specialname rtspecialname int32 | | | |___[VCL] 2 | | | .class value private sequential ansi sealed beforefieldinit | | | extends [mscorlib]System.ValueType | | |___[FLD] 0N : public int32 | | |___[FLD] 0O : public int32 | | |___[FLD] 0P : public int32 | | | |___[CLS] 3 | | | .class private auto ansi beforefieldinit | | |___[FLD] 0Q : public string | | |___[FLD] 0R : public string | | |___[FLD] 0S : public valuetype SoftwareFX.ChartFX.ResPkg.'1' | | |___[FLD] 0T : public int32 | | |___[FLD] 0U : public string | | |___[FLD] 0V : public string | | |___[FLD] 0W : public string | | |___[FLD] 0X : assembly bool | | |___[MET] .ctor : void(string,valuetype SoftwareFX.ChartFX.ResPkg.'1',string,string,string,int32) | | |___[MET] .ctor : void(string,string,valuetype SoftwareFX.ChartFX.ResPkg.'1',string,string,string) | | |___[MET] .ctor : void(string,valuetype SoftwareFX.ChartFX.ResPkg.'1',string,string,string) | | |___[MET] .ctor : void(string,string,valuetype SoftwareFX.ChartFX.ResPkg.'1',string,string,string,int32) | | | |___[CLS] 4 | | | .class private auto ansi sealed beforefieldinit | | |___[FLD] 0Y : private string | | |___[FLD] 0Z : private string | | |___[MET] .ctor : void() | | |___[MET] get_2F : string() | | |___[MET] get_2G : string() | | |___[MET] set_2F : void(string) | | |___[MET] set_2G : void(string) | | |___[PTY] '2F' : instance string() | | |___[PTY] '2G' : instance string() | | | |___[CLS] 5 | | | .class private auto ansi sealed | | | extends [mscorlib]System.MulticastDelegate | | |___[MET] .ctor : void(object,native int) | | |___[MET] BeginInvoke : class [mscorlib]System.IAsyncResult(object,class SoftwareFX.ChartFX.ResPkg.'4',class [mscorlib]System.AsyncCallback,object) | | |___[MET] EndInvoke : void(class [mscorlib]System.IAsyncResult) | | |___[MET] Invoke : void(object,class SoftwareFX.ChartFX.ResPkg.'4') | | | |___[VCL] 6 | | | .class value private sequential ansi sealed beforefieldinit | | | extends [mscorlib]System.ValueType | | |___[sTM] L : string(string,string,char) | | |___[sTM] M : void(class SoftwareFX.ChartFX.ResPkg.'3',bool) | | |___[sTM] N : void(class SoftwareFX.ChartFX.ResPkg.'3'[]) | | |___[sTM] O : class SoftwareFX.ChartFX.ResPkg.'3'(string,class SoftwareFX.ChartFX.ResPkg.'3'[]) | | |___[sTM] P : valuetype SoftwareFX.ChartFX.ResPkg.'2'(string[],class SoftwareFX.ChartFX.ResPkg.'3'[],class SoftwareFX.ChartFX.ResPkg.'5') | | | |___[CLS] 7 | | | .class private auto ansi beforefieldinit | | | extends [mscorlib]System.EventArgs | | |___[FLD] 10 : public string | | |___[FLD] 11 : public string[] | | |___[FLD] 12 : public string | | |___[FLD] 13 : public bool | | |___[FLD] 14 : public class [mscorlib]System.IO.MemoryStream | | |___[FLD] 15 : public class [mscorlib]System.IO.BinaryWriter | | |___[FLD] 16 : public bool | | |___[FLD] 17 : public valuetype SoftwareFX.ChartFX.ResPkg.'9' | | |___[MET] .ctor : void() | | |___[MET] Q : void() | | |___[MET] R : unsigned int8[]() | | |___[MET] S : void(class [mscorlib]System.Resources.ResourceWriter,string,unsigned int8[]) | | |___[MET] get_2H : class [mscorlib]System.IO.BinaryWriter() | | |___[PTY] '2H' : instance class [mscorlib]System.IO.BinaryWriter() | | | |___[CLS] 8 | | | .class private auto ansi sealed | | | extends [mscorlib]System.MulticastDelegate | | |___[MET] .ctor : void(object,native int) | | |___[MET] BeginInvoke : class [mscorlib]System.IAsyncResult(object,class SoftwareFX.ChartFX.ResPkg.'7',class [mscorlib]System.AsyncCallback,object) | | |___[MET] EndInvoke : void(class [mscorlib]System.IAsyncResult) | | |___[MET] Invoke : void(object,class SoftwareFX.ChartFX.ResPkg.'7') | | | |___[ENU] 9 | | | .class private auto ansi sealed | | | extends [mscorlib]System.Enum | | | .custom instance void [mscorlib]System.FlagsAttribute::.ctor() = ( 01 00 00 00 ) ... | | |___[sTF] 18 : public static literal valuetype SoftwareFX.ChartFX.ResPkg.'9' | | |___[FLD] value__ : public specialname rtspecialname int32 | | | |___[ENU] A | | | .class private auto ansi sealed | | | extends [mscorlib]System.Enum | | | .custom instance void [mscorlib]System.FlagsAttribute::.ctor() = ( 01 00 00 00 ) ... | | |___[sTF] 19 : public static literal valuetype SoftwareFX.ChartFX.ResPkg.A | | |___[sTF] 1A : public static literal valuetype SoftwareFX.ChartFX.ResPkg.A | | |___[sTF] 1B : public static literal valuetype SoftwareFX.ChartFX.ResPkg.A | | |___[sTF] 1C : public static literal valuetype SoftwareFX.ChartFX.ResPkg.A | | |___[sTF] 1D : public static literal valuetype SoftwareFX.ChartFX.ResPkg.A | | |___[sTF] 1E : public static literal valuetype SoftwareFX.ChartFX.ResPkg.A | | |___[FLD] value__ : public specialname rtspecialname int32 | | | |___[CLS] B | | | .class private auto ansi beforefieldinit | | |___[FLD] 1F : public class [mscorlib]System.Resources.ResourceWriter | | |___[FLD] 1G : public valuetype SoftwareFX.ChartFX.ResPkg.A | | |___[FLD] 1H : public string | | |___[FLD] 1I : public class [mscorlib]System.Collections.ArrayList | | |___[sTF] 1J : private static class SoftwareFX.ChartFX.ResPkg.'3'[] | | |___[sTM] .cctor : void() | | |___[MET] .ctor : void() | | |___[MET] 00 : void() | | |___[sTM] 01 : int32(string[]) | | |___[MET] 02 : void(object,class SoftwareFX.ChartFX.ResPkg.'4') | | |___[MET] T : void(object,class SoftwareFX.ChartFX.ResPkg.'7') | | |___[MET] U : void(object,class SoftwareFX.ChartFX.ResPkg.'7') | | |___[MET] V : void(object,class SoftwareFX.ChartFX.ResPkg.'7') | | |___[MET] W : void(valuetype SoftwareFX.ChartFX.ResPkg.'9',class [mscorlib]System.IO.FileInfo,string,char,class SoftwareFX.ChartFX.ResPkg.'8') | | |___[MET] X : void(string) | | |___[MET] Y : void(string) | | |___[MET] Z : int32(string[]) | | | |___[CLS] C | | | .class public auto ansi beforefieldinit | | |___[FLD] 1K : private class [system]System.Collections.Specialized.StringDictionary | | |___[FLD] 1L : private class [system]System.Collections.Specialized.StringDictionary | | |___[FLD] 1M : private class [system.Xml]System.Xml.XmlDocument | | |___[FLD] 1N : private class [system.Xml]System.Xml.XmlNode | | |___[MET] .ctor : void() | | |___[MET] 03 : string(string) | | |___[MET] 04 : void(valuetype SoftwareFX.ChartFX.ResPkg.A,string,string) | | | |___[iNT] D | | | .class interface private abstract auto ansi | | |___[MET] 05 : void(valuetype SoftwareFX.ChartFX.ResPkg.A,string) | | |___[MET] 06 : void(valuetype SoftwareFX.ChartFX.ResPkg.A) | | |___[MET] 07 : void(class [system.Xml]System.Xml.XmlNode,string,string,string) | | |___[MET] 08 : void(class [system.Xml]System.Xml.XmlNode) | | | |___[CLS] E | | | .class private auto ansi beforefieldinit | | | implements SoftwareFX.ChartFX.ResPkg.D | | |___[FLD] 1O : private class [system.Xml]System.Xml.XmlNode | | |___[FLD] 1P : private class [system.Xml]System.Xml.XmlDocument | | |___[FLD] 1Q : private class [system.Xml]System.Xml.XmlTextWriter | | |___[MET] .ctor : void(string) | | |___[MET] 09 : void(valuetype SoftwareFX.ChartFX.ResPkg.A,string) | | |___[MET] 0A : void(valuetype SoftwareFX.ChartFX.ResPkg.A) | | |___[MET] 0B : void(class [system.Xml]System.Xml.XmlNode,string,string,string) | | |___[MET] 0C : void(class [system.Xml]System.Xml.XmlNode) | | | |___[CLS] F | | | .class private auto ansi beforefieldinit | | |___[FLD] 1R : public string | | |___[FLD] 1S : public int16 | | |___[MET] .ctor : void(string,int16) | | | |___[CLS] G | | | .class private auto ansi beforefieldinit | | |___[FLD] 1T : public string | | |___[FLD] 1U : public string | | |___[FLD] 1V : public string | | |___[FLD] 1W : public int16 | | |___[FLD] 1X : public int16 | | |___[MET] .ctor : void(string,string,string) | | | |___[ENU] H | | | .class private auto ansi sealed | | | extends [mscorlib]System.Enum | | |___[sTF] 1Y : public static literal valuetype SoftwareFX.ChartFX.ResPkg.H | | |___[sTF] 1Z : public static literal valuetype SoftwareFX.ChartFX.ResPkg.H | | |___[sTF] 20 : public static literal valuetype SoftwareFX.ChartFX.ResPkg.H | | |___[sTF] 21 : public static literal valuetype SoftwareFX.ChartFX.ResPkg.H | | |___[sTF] 22 : public static literal valuetype SoftwareFX.ChartFX.ResPkg.H | | |___[sTF] 23 : public static literal valuetype SoftwareFX.ChartFX.ResPkg.H | | |___[sTF] 24 : public static literal valuetype SoftwareFX.ChartFX.ResPkg.H | | |___[FLD] value__ : public specialname rtspecialname int32 | | | |___[CLS] I | | | .class private auto ansi beforefieldinit | | |___[FLD] 25 : private int16 | | |___[FLD] 26 : private int16 | | |___[FLD] 27 : private int16 | | |___[FLD] 28 : private int16 | | |___[FLD] 29 : private int16 | | |___[FLD] 2A : private string | | |___[FLD] 2B : private class [mscorlib]System.Collections.ArrayList | | |___[FLD] 2C : private valuetype SoftwareFX.ChartFX.ResPkg.H | | |___[MET] .ctor : void() | | |___[MET] 0D : void(class [mscorlib]System.IO.BinaryWriter) | | |___[MET] 0E : void(string,string,string) | | |___[MET] get_2I : valuetype [system.Drawing]System.Drawing.Point() | | |___[MET] get_2J : valuetype [system.Drawing]System.Drawing.Size() | | |___[MET] get_2K : int32() | | |___[MET] get_2L : string() | | |___[MET] get_2M : bool() | | |___[MET] get_2N : bool() | | |___[MET] get_2O : class [mscorlib]System.Collections.ArrayList() | | |___[MET] set_2I : void(valuetype [system.Drawing]System.Drawing.Point) | | |___[MET] set_2J : void(valuetype [system.Drawing]System.Drawing.Size) | | |___[MET] set_2K : void(int32) | | |___[MET] set_2L : void(string) | | |___[MET] set_2M : void(bool) | | |___[MET] set_2N : void(bool) | | |___[PTY] '2I' : instance valuetype [system.Drawing]System.Drawing.Point() | | |___[PTY] '2J' : instance valuetype [system.Drawing]System.Drawing.Size() | | |___[PTY] '2K' : instance int32() | | |___[PTY] '2L' : instance string() | | |___[PTY] '2M' : instance bool() | | |___[PTY] '2N' : instance bool() | | |___[PTY] '2O' : instance class [mscorlib]System.Collections.ArrayList() | | | |___[CLS] J | | | .class private auto ansi beforefieldinit | | | implements SoftwareFX.ChartFX.ResPkg.D | | |___[FLD] 2D : private class [mscorlib]System.Collections.Hashtable | | |___[FLD] 2E : private class [mscorlib]System.IO.BinaryWriter | | |___[MET] .ctor : void(string) | | |___[MET] 09 : void(valuetype SoftwareFX.ChartFX.ResPkg.A,string) | | |___[MET] 0A : void(valuetype SoftwareFX.ChartFX.ResPkg.A) | | |___[MET] 0B : void(class [system.Xml]System.Xml.XmlNode,string,string,string) | | |___[MET] 0C : void(class [system.Xml]System.Xml.XmlNode) | | |___[MET] 0F : int16(string,class [mscorlib]System.Collections.ArrayList) | | |___[MET] 0G : class [mscorlib]System.Reflection.Assembly(string) | | |___[MET] 0H : class [mscorlib]System.Type(string) | | |___[MET] 0I : object(string,string) | | | =========================================================================== Link to comment Share on other sites More sharing options...
Frank Posted April 11, 2007 Report Share Posted April 11, 2007 CfxResPkg is linked to the framework 1.0. If you have it installed, it should run with it. I suggest you create a Virtual Machine that doesn't have the .NET framework 2 and run CfxResPkg there. Once you have the resource you can run Chart FX with any version of the framework. If you are unable to do this please contact Software FX support, they can help you up with that. Link to comment Share on other sites More sharing options...
eridgway Posted April 11, 2007 Author Report Share Posted April 11, 2007 That's a pretty hefty workaround just to create a custom palette, and we do not have any VM software currently in the office. Is there any other way to go about creating this file while having the 2.0 framework installed on the machine? It seems like this would be a fairly common scenario. Link to comment Share on other sites More sharing options...
eridgway Posted April 11, 2007 Author Report Share Posted April 11, 2007 Just FYI, if you run this utility on a machine that does not have the 2.0 framework installed on it, the resource file it creates works just fine. That being said, I'd really consider this a bug with the CfxResPkg tool. Link to comment Share on other sites More sharing options...
Frank Posted April 11, 2007 Report Share Posted April 11, 2007 Glad to hear that it worked Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.