title
Products            Buy            Support Forum            Professional            About            Codec Central
 

Problem with .ReadIDTag

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • DazBYorks
    dBpoweramp Enthusiast
    • Feb 2008
    • 59

    #16
    Re: Problem with .ReadIDTag

    Hi,

    I am using XP Pro, but your post explains why it has *apparently* not worked. It seems OK with VBScript (I should have checked), but I am using PHP, which will be running as the default user, to access the info via COM objects. I have no real desire to elevate the privileges for PHP, so can I add the relevant key(s) in the registry for the default user?

    Daz

    Comment

    • Spoon
      Administrator
      • Apr 2002
      • 43888

      #17
      Re: Problem with .ReadIDTag

      Copy the reg keys from software\illustrate between the branches.
      Spoon
      www.dbpoweramp.com

      Comment

      • DazBYorks
        dBpoweramp Enthusiast
        • Feb 2008
        • 59

        #18
        Re: Problem with .ReadIDTag

        Hi,

        Thanks, we seem to have success

        I exported the Illustrate branch, renamed the keys and imported the .reg file to the default account.

        Daz

        Comment

        • skohlmey
          • Feb 2008
          • 12

          #19
          Re: Problem with .ReadIDTag

          Originally posted by Spoon
          I think you will have to use VB.NET to do this.
          I think this Microsoft article is relevant to the original issue of Type mismatch when calling dMC.ReadIDTag: http://support.microsoft.com/kb/197956#top

          SYMPTOMS
          When passing a parameter to a COM Component's method in Active Server Pages (ASP), the following error occurs:

          Microsoft VBScript runtime error '800a000d' Type mismatch

          Or the value stored in the variable passed to the method is not changed.

          CAUSE
          VBScript will pass parameters to a method by value if the argument's data type is NOT declared as a variant and the parameter is passed by reference if the argument's data type is declared as variant by the method.

          RESOLUTION
          Parameters to be passed by reference to a method should always be declared as a variant data type by the method, while parameters to be passed by value can be declared as any type by the method.

          Comment

          • skohlmey
            • Feb 2008
            • 12

            #20
            Re: Problem with .ReadIDTag

            This is what my COM object browser say the definition of ReadIDTag method is:
            Sub ReadIDTag(File As String, Index As Long, pRetElement As String, pRetValue As String)

            If I understand the MS article, I think the definition must be changed to:
            Sub ReadIDTag(File As String, Index As Long, pRetElement As Variant, pRetValue As Variant)

            Comment

            • Spoon
              Administrator
              • Apr 2002
              • 43888

              #21
              Re: Problem with .ReadIDTag

              VBScript only have Variant data types, passing a variant would be wrong as the scripting code is expecting an OLE string.
              Spoon
              www.dbpoweramp.com

              Comment

              • skohlmey
                • Feb 2008
                • 12

                #22
                Re: Problem with .ReadIDTag

                I'm just repeating what MS says on topic. Passing a variant should not prevent a well-written method to check the appropriateness and reasonableness of the data passed to it. I am not sure how to interpret your answer. Does this mean that dMC is not compatible with VBScript? If so, that might be important for some customers to know before purchasing.
                Last edited by skohlmey; 02-25-2008, 01:26 PM.

                Comment

                • Spoon
                  Administrator
                  • Apr 2002
                  • 43888

                  #23
                  Re: Problem with .ReadIDTag

                  That one function is not, we will be writing a new method for R13.
                  Spoon
                  www.dbpoweramp.com

                  Comment

                  • skohlmey
                    • Feb 2008
                    • 12

                    #24
                    Re: Problem with .ReadIDTag

                    Thanks for the quick response. I look forward to R13. In the meantime, I have gotten tons of value and had fun using R12.4. It has helped me clean-up a number of issues with my music library already.

                    Comment

                    • aamitabh
                      • Sep 2010
                      • 19

                      #25
                      Re: Problem with .ReadIDTag

                      Has anything changed in R14? I have Windows 7 x64 running on Intel Core i7 (shows as 8 cores). But ReadIDTag does not return any value on 64 bit platform, although it works well on a 32 bit windows 7 platform.

                      I compiled the code inseveral different ways on Windows 7 box:
                      1. CPUAny, on 64 bit Windows 7 - does not work
                      2. CPUx86, on 64 bit Windows 7 - exception on dMC creation, of course
                      3. CPUAny, on Windows 7 32 bit - works

                      What gives?

                      Here is the sample code:

                      Code:
                      DMCSCRIPTINGLib.Converter dMC = new DMCSCRIPTINGLib.ConverterClass();
                      
                      for (int i = 0; ; i++)
                      {
                      	string Element = "", TagVal = "";
                      	dMC.ReadIDTag(srcFile, i, ref Element, ref TagVal);
                      	if (Element.Length == 0)
                      		break;
                      	Console.WriteLine("\tReading Tag[{0}] '{1}:{2}'", i, Element, TagVal);
                      	dMC.WriteIDTag(destFile, Element, TagVal);
                      }

                      Comment

                      • Spoon
                        Administrator
                        • Apr 2002
                        • 43888

                        #26
                        Re: Problem with .ReadIDTag

                        I can see why it is not working in x64, will address for R14.1
                        Spoon
                        www.dbpoweramp.com

                        Comment

                        • chrisjj
                          dBpoweramp Enthusiast
                          • Nov 2008
                          • 296

                          #27
                          Re: Problem with .ReadIDTag

                          Originally posted by Spoon
                          That one function is not, we will be writing a new method for R13.
                          What is the new method to replace ReadIDTag, please? In R15 the only other I see is ReadIDTagElementValue, which returns a combined string.

                          Comment

                          • Spoon
                            Administrator
                            • Apr 2002
                            • 43888

                            #28
                            Re: Problem with .ReadIDTag

                            It was .ReadIDTagElementValue

                            These functions have always returned multi artists combined.
                            Spoon
                            www.dbpoweramp.com

                            Comment

                            • chrisjj
                              dBpoweramp Enthusiast
                              • Nov 2008
                              • 296

                              #29
                              Re: Problem with .ReadIDTag

                              Originally posted by Spoon
                              It was .ReadIDTagElementValue
                              OK, thanks.

                              Originally posted by Spoon
                              These functions have always returned multi artists combined.
                              I was referring to the combination of Element and Value. Which is OK... until the separator crops up inside Element

                              Comment

                              Working...

                              ]]>