Breaking change in MDAC ADODB COM components in Windows 7 Service Pack 1 (repost with MSDN liveID)

As my MSDN subscription is connected to this liveID, I repost my question in the hope to get a faster answer:
After I installed Service Pack 1 on my Windows 7 x64 Ultimate my applications which use MDAC 2.8 COM components for database access do not work on other Windows versions any more.
I hunted this down to changed Interface IDs in the msadoxx.tlb files. On Windows 2008 R2 e.g. the IID of dispinterface _Connection is {00000550-0000-0010-8000-00AA006D2EA4} (defined in msdado28.tlb). When I lookup the same dispinterface on my Windows 7 with
SP1 (RTM from MSDN) I see this IID {00001550-0000-0010-8000-00AA006D2EA4}.
That means that all code produced on Windows 7 SP1 using ADODB cannot be run on any other version of Windows as the IIDs differ.
The CLSIDs still match, so the COM objects get created but due to different IIDs they cannot be used.
I really hope I am missing something as this change seems to be a massively breaking change in the MDAC API.
To verify the error you can use code like this in VB6 or equivalent in VB.Net or C# and compile it on Win7 SP1 and run it on Win7 RTM or older versions of Windows:
Dim cn As ADODB.Connection
Dim o As Object
Set o = CreateObject("ADODB.Connection") ' this does still work
Set cn = o ' this errors when compiled on Win 7 SP1 and run on older versions of Windows due to the changed IID of the dispinterface _Connection
Regards,
SvenC

Ok NEW Fix:
===================================================================
---- / start: getting around Trusted Installer / ----
STEP 1) Change owner of  
"%CommonProgramFiles(x86)%\system\ado\msado28.tlb" to administrator or whatever your current local user is... 
Then close all security windows.
You might have to change this registry setting in order to change the owner:  
(although I'm not sure, I did though.)
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Classes\TypeLib\{2A75196C-D9EB-4129-B803-931327F72D5C}
Right click, Permissions, Advanced, Owner, Change owner to Administrators, Click OK, OK
STEP 2) Back in the file properties, under Security, Change Permissions to Full Control for your new owner.
---- / end: getting around Trusted Installer / ----
STEP 3) 
Unregister it:
Run C:\Windows\Microsoft.NET\Framework\v4.0.30319\regtlibv12 -u "CommonProgramFiles(x86)%\system\ado\msado28.tlb"
STEP 4) Copy in legacy msado28.tlb file (get this from a non SP1 Windows 7 Machine), i.e. overwrite the last one.
STEP 5) Re-register the new one:
Run C:\Windows\Microsoft.NET\Framework\v4.0.30319\regtlibv12 "CommonProgramFiles(x86)%\system\ado\msado28.tlb"
** Now VB6 compiles from a Windows 7 SPK1 machine that reference MDAC 2.8 should work now automatically without changing anything in the project file or references
Is there somewhere I can download the legacy msado28.tlb file since I have the only W7 machine in the organization?

Similar Messages

  • ACCESS_VIOLATION at AdobeOwl.dll when call Indesign com interface from windows service

    ACCESS_VIOLATION at AdobeOwl.dll when call Indesign CS3 COM interface from windows service application.
    Does anyone know how to workaround this issue ?

    As AdobeOwl.dll file is missing or corrupted, you need to get a new dll file. Here are the steps to replace setup.dll file
    Step 1. You can download missing AdobeOwl.dll here:
    http://dllcentral.com/AdobeOwl.dll/1.0.92/download/
    Step 2. Paste this file into your system32 or SyWOW64 folder.
    Step 3. Navigate to your System32(32Bit OS) or SyWOW64(64Bit OS) Folder.
    Note: The location of System32 and SyWOW64 is
    C:Windows\System32 (If you are using 32Bit Windows)
    C:\Windows\SysWOW64 (if you are using 64Bit Windows)
    Step 4. Paste the AdobeOwl.dll file into this folder.
    Step 5. Try to run it. It might work now. If not, restart your computer to restore it effectively.

  • Change settings from windows service pack2

    ''duplicate - locking - https://support.mozilla.com/en-US/questions/889659''
    i changed settings to run with windows service pack 2
    now want to change back to windows 7 how?

    Restore your iPod in iTunes for Mac. Just be aware that restoring will erase and reformat the iPod's hard drive, reload the software with the Mac version and put it back to default settings, so if you have songs on your iPod that aren't on iTunes you will lose them if you have no back up. Once the restore is complete follow the on screen instructions to name the iPod and automatically sync your songs and videos onto the fresh installation. Press Done and the iPod will appear in iTunes and start to sync. If you want to update manually or using selected playlists uncheck the box beside the sync automatically instruction and press Done, it will default to manual mode and you can choose whatever setting you like: Restoring iPod to factory settings with iTunes 7

  • How do I get my messages to come through on my ipad Via my mobile number? They always used to but I've had to change all my Apple ID if that has anything to do with it? In iMessages it will only take an email address!

    How do I get my messages to come through on my ipad Via my mobile number? They always used to but I've had to change all my Apple ID if that has anything to do with it? In iMessages it will only take an email address!

    Hi EmilyWick123!
    Here is an article that will help you address this question about linking your Apple ID and phone number:
    iOS and OS X: Link your phone number and Apple ID for use with FaceTime and iMessage
    http://support.apple.com/kb/ht5538
    Thanks for being a part of the Apple Support Communities!
    Regards,
    Braden

  • An issue using the COM components supplied with SAP GUI 6.2 or 6.4

    We are having an issue using the COM components supplied with SAP GUI 6.2 or 6.4.  We used to have SAP 4.6c and now we have 5.0.  When we were on 4.6c, we used these COM components to logon and execute RFC calls and we had much success.  Now that we are on 5.0, we can’t seem to instance any SAP functions that have something to do with SAP Workflow.  We have experienced this problem when using VB6 or .NET, but our existing code that always worked is in VB 6.0.
    SAP Components used:
    o     SAP Logon Control
    o     SAP Function Control
    o     Librfc32.dll
    o     Other supporting C DLLs and/or COM object supplied with the SAP GUI installation.
    For example, if we want to call the RFC ARCHIV_CONNECTION_INSERT, this code fails in VB6 when the “Set objworkflow = objFuncCtrl.Add(strFunction)” line of code executes.  Instead of returning an instance of the object ARCHIV_CONNECTION_INSERT function, no object is created.  In 6.2, SAP raises no errors, but the object we are trying to create is still “Nothing”.  If we use 6.4, SAP raises an error “SAP data type not supported” via a message box and then the object is still = Nothing.  Interestingly enough, the 6.2 GUI COM controls don’t display the error dialog.  The message box that is shown comes from the SAP Function COM Object "SAP.Functions" (wdtfuncs.ocx).
    Now, what is interesting is if we use the same code to call a standard function or custom function that doesn’t have anything to do with SAP Workflow, then the code works fine.  Again, all of our code used to work just fine on an SAP 4.6 system.
    Here is the code that fails:
        'SAP Logon control - object for creating connections to an SAP system
        Dim objSAPLogonCtrl As Object
        'SAP connection object
        Dim objConnection As Object
        'Object that will represent the SAP function called
        Dim objSAP As Object
        'SAP function control object - object factory for creating other SAP function objects
        Dim objFuncCtrl As Object
        'Create instance of an SAP logon conrol
        Set objSAPLogonCtrl = CreateObject("SAP.Logoncontrol.1")
        'Create a connection object
        Set objConnection = objSAPLogonCtrl.NewConnection
        'Define connecion parameters
        objConnection.ApplicationServer = "sapvm"
        objConnection.SystemNumber = "00"
        objConnection.Client = "800"
        objConnection.User = "iissap"
        objConnection.Password = "tstadm"
        objConnection.Language = "E"
        objConnection.TraceLevel = 10
        'call the logon method of the connection object
        If objConnection.Logon(0, True) = False Then
            MsgBox Error
            Exit Sub
        End If
        'Create an instance of the SAP Function control object
        Set objFuncCtrl = CreateObject("SAP.Functions")
        'Set the function control connection object
        Set objFuncCtrl.Connection = objConnection
        'Function name to be generated and called
        Dim strFunction As String
        strFunction = <b>"ARCHIV_PROCESS_RFCINPUT"</b>
        'Create an instance of the function defined in strFunction
        Set objworkflow = objFuncCtrl.Add(strFunction)
        If objworkflow Is Nothing Then
            MsgBox "Could not create object " & strFunction
        Else
            MsgBox strFunction & " object created."
        End If
    If anyone has seen anything like this or has any ideas, please help!
    Mike and Hameed
    <b></b>

    Hi,
    documentation on the Scripting API is available at ftp://ftp.sap.com/pub/sapgui/win/640/scripting/docs/
    This API is a replacement of the existing, obsolete COM interfaces.
    Best regards,
    Christian

  • Comprehensive list of Visual C++ breaking changes in Visual Studio

    Where can I find a comprehensive list of Visual C++ breaking changes in Visual Studio 2008 and Visual Studio 2010?
    The list of breaking changes mentioned in MSDN is not exhaustive.
    I would narrate a small incident where I felt the need of having such an exhaustive list.
    A third party developer was using the older version of my application which is built in Visual Studio 2005. He was trying to build his own DLL using the API exposed by my application, but in Visual Studio 2010.
    The API, unfortunately passes STL objects viz. std::string. We know this is
    catastrophic and evidently the third party developer encountered run-time issues with his code- a crash during string manipulation.
    After some digging I discovered that that the binary layout of Visual Studio 2005 std::string is different from the Visual Studio 2010 version.
    For reasons best known to the third party developer, he was not able to move back to Visual Studio 2005 and insisted on using Visual Studio 2010. For the above issue I suggested him a workaround for std::string manipulations( create a new string class that
    will emulate the memory layout of Visual Studio 2005 std::string).
    Likewise, I would like to know all the changes (breaking changes) in Visual Studio 2008 and Visual Studio 2010 so that I can warn the third party developer about the use of the objects that have changed.

    Of course it is even worse that what Mike said:  If you expose STL in your DLL interface, you have to impose a lot of other requirements on the consumer of your DLL (or provide many copies of your DLL each built a different way).  This includes
    things like:
    _HAS_ITERATOR_DEBUGGING
    _SECURE_SCL
    Debug versus Release
    Static versus dynamic linking of the CRT
    (Actually if the consumer is statically linking the CRT I don't know if you can make STL work at all unless you only use custom allocators as memory allocated by one instance of the CRT will be freed from the other instance of the CRT)

  • Hello all i am having an issue on whatsapp 2.11.14 on my iphone 5 .whenever i want to change my dp it comes in circle not in square please help

    hello all i am having an issue on whatsapp 2.11.14 on my iphone 5 .whenever i want to change my dp it comes in circle not in square please help

    Hello,
    No, it is not normal. Follow this article:
    http://support.apple.com/kb/ht1414
    If this doesnt solve the issue your iPhone will need service.
    Burcu

  • Installation outlooksoft error: Assigning COM+ Components: Error

    All,
    i am roger.
    I have installed one Outlooksoft Server on windows server2003 with MS SQL2005, after installation, when i do server diagnostic, the error occurs, at COM+ Component service entry, it says Osoftdatabase user , assiged error, status error, meanwhile, i found the errors "Assigning COM+ Components: Error" at osoft installation logs. How to correct this errors?
    in addition, when i want to install BPC for office installation or BPC for administation installation from software centers, at the last step, it display," installation incomplete
    -this screen is customizable by customer-,if you need help ,please contact your system administrator."
    what to do next  to solve this problem,
    could you give us advice?
    thanks in advance.

    Hi Roger,
    Is this a single server installation that you are referring to? or is this a multi-server installation. Did the error you receive during the diagnostic occur at the Assigned, Identity, Activation Type, Authentication Level area?
    To me right now this sounds like what happened could potentially be that during the installation you by accident entered the second or third password in the installation incorrectly. There is a bug in the install that only checks the validity of the first password entered and not the second nor the third.
    Regarding the BPC for Office Error I would focus first on getting the server installation fixed before moving on to the next step.
    Let me know
    1) Where the error occurs during the diagnostic
    2) if you are able to login to MS SQL 2005 with the user and password that you entered during the installation.
    Cheers,
    Scott

  • COM Components in Oracle Application Server

    Can i deploy COM Components in Oracle Application Server.
    I see from the documentation that only Java/EJB Components can
    be deployed. Is there anyway by which i can deploy COM
    Components also?
    Thanks and regards
    bala

    What is the basic difference between the >>BC4J in Oracle Internet Application server >>and the Business Components that come in
    JDeveloper 3.1. Business Components for Java consists of both a design time framework and a run time framework. The design time framework is intergrated into the design time tool - Oracle JDeveloper - The run time portion of BC4J is packaged as libraries and available on Oracle Internet Application Server.
    I >>How is the Connection Pool managed by
    the Business Components made >> with JDeveloper 3.1. The Connection Pool is part of iAS.
    Please see their white paper on OTN.
    I >>Are the business components made in
    JDeveloper reusable as in multiple
    projects.Absolutely.
    Code sharing / Sharing Projects across workspaces, etc has always been allowed.
    I hope this helps,
    -John

  • My email gives 2 sender addresses, it always automatically goes to the one i don't want as my email address, i try to remember to change it. how do i change it to automatically come up with the one I want

    my icloud email gives 2 sender addresses, (icloud.com and me.com) it always automatically goes to the one i don't want (icloud.com) as my email address, i try to remember to change it to (me.com). how do i change it to automatically come up with the one I want (me.com)

    On your iOS device, go to Settings > Mail, Contacts, Calendars > iCloud > Account. Tap Mail, tap Email, then tap the address you want to send from.

  • Ssrs control break changes

    In a new SSRS 2008 r2 report, I want to display an underline for the entire detail line when one of control break changes. The entire detail line, also includes the 2 control breaks. The 2 control breaks are called payment date and customer number.
    Right now I just have the bottom border of the detail line displaying the bottom border is solid and black. This is ther part I know that I need to change.
    Also, There is a border I can mark for customer number but there is not a border that I can mark for the payment date. The border for the payment date includes 2 rows. The border for the rest of the detail lines is for one row and that also includes the
    customer name.
    Thus can you tell me how I can a black line being displayed everytime a control break changes?

    Each cell in the tablix has a textbox inserted by default. If you select the textbox with the data you wish to underline, and open the textbox properties > Font >Effects (or TextDecoration if working from properties pane instead of properties dialog
    box). You can use expression editor to set this to "underline":
    =IIf(<Comparison Boolean>=True,"Underline","None")
    Since you are using textbox properties, it should work for all of the values you wish to underline.
    "You will find a fortune, though it will not be the one you seek." -
    Blind Seer, O Brother Where Art Thou
    Please Mark posts as answers or helpful so that others may find the fortune they seek.

  • SAP COM components in C#

    I am new to SAP.
    I would like to use .NET C#.
    I was wondering if the SAP COM components would be difficult to use in C#. A lot of extra coding? or trouble calling methods and properties?
    Does anyone know of any surprises or things that might be more difficult to code in C# rather then just using VB. Have to go through a lot of hoops?

    Hi Jack,
    The SAP COM components are quite easy to use in C#, there's no extra effort involved in calling methods or properties. Compared to VB you need to do more "casting" of objects as C# is more strict in its OO approach, but again this is all quite easy to do. As a programming language, C# is very nice indeed.
    Lita

  • COM components in OAS

    I am aware of Oracle8i support for COM components, but I would like to deploy 3rd party COM components (e.g. MS CDO-NT for email/fax/messaging application integration) to the middle tier (OAS). I think I would need to create a custom cartridge for each component (one for all?).
    Anyone using COM components in OAS (vs O8i)- any comments?

    Interesting proposition but no affirmative answer.
    I my opinion, if you can invoke COM to create Word docs and Excel spreadsheets on the local machine (same as the DB server) from within PL/SQL stored procedures, there is no reason why you shouldn't further call these procedures from other procedures that can be accessed from OAS' PL/SQL cartridge (I assume that is what you are using). Now the question is, can you also invoke CDO COM DLL's from PL/SQL (I have yet to see an example for this), either on the same machine, or more likely on a different machine (you wouldn't put Oracle and IIS on the same NT box, would you)?
    So even if there is a round-about solution, it won't be as straight forward as using IIS. In the last a couple of years I see a trend among ORCL shops of shifting from OAS to IIS for their web app development, even though the database of choice is still Oracle, precisely for the same reason you are doing --- people want to pull data from Oracle and display on web pages, but also want to integrate the web app with messaging/office tools/report engines. COM based IIS is still the only end-to-end solution for this kind of intranet based work.
    If you use OAS 4.0.8's JServlet cartridge, I assume your can access COM, but you also need to write your own Java-COM wrappers, which I don't think is that worthwhile.
    Bottomline: ORCL MSFT interoperability has a long way to go, and I am not sure people are making a lot of effort to bridge the gap, when each are pushing its own favorite technology.
    Eric Ma

  • Call COM Components using JNI

    Hi,
    Can we call COM Components using JNI? If yes can someone pls guide me how to go about it
    Thanks
    Guriqbal

    JNIWrapper 2.0 Beta with Java-COM integration is already available for download and evaluation. Check the http://www.jniwrapper.com/news.jsp
    Hope this helps.
    EToporov

  • Is there a way of wiping ALL Safari data, i.e. restoring Safari ? I think my Safari has a virus..as every time I open it, a web page called 'search quick' comes up. Its bombarded my Safari with constant pop up adverts almost every time I click!

    is there a way of wiping ALL Safari data, i.e. restoring Safari ? I think my Safari has a virus..as every time I open it, a web page called 'search quick' comes up. Its bombarded my Safari with constant pop up adverts almost every time I click!

    There is no need to download anything to solve this problem. You may have installed a variant of the "VSearch" ad-injection malware. Follow Apple Support's instructions to remove it.
    If you have trouble following those instructions, see below.
    Malware is always changing to get around the defenses against it. This procedure works as of now, as far as I know. It may not work in the future. Anyone finding this comment a few days or more after it was posted should look for a more recent discussion, or start a new one.
    The VSearch malware tries to hide itself by varying the names of the files it installs. To remove it, you must first identify the naming pattern.
    Triple-click the line below on this page to select it, then copy the text to the Clipboard by pressing the key combination  command-C:
    /Library/LaunchDaemons
    In the Finder, select
              Go ▹ Go to Folder...
    from the menu bar and paste into the box that opens by pressing command-V. You won't see what you pasted because a line break is included. Press return.
    A folder named "LaunchDaemons" may open. Look inside it for two files with names of the form
              com.something.daemon.plist
    and
               com.something.helper.plist
    Here something is a variable string of characters, which can be different in each case. So far it has always been a string of letters without punctuation, such as "cloud," "dot," "highway," "submarine," or "trusteddownloads." Sometimes it's a meaningless string such as "e8dec5ae7fc75c28" rather than a word. Sometimes the string is "apple," and then you must be especially careful not to delete the wrong files, because many built-in OS X files have similar names.
    If you find these files, leave the LaunchDaemons folder open, and open the following folder in the same way:
    /Library/LaunchAgents
    In this folder, there may be a file named
              com.something.agent.plist
    where the string something is the same as before.
    If you feel confident that you've identified the above files, back up all data, then drag just those three files—nothing else—to the Trash. You may be prompted for your administrator login password. Close the Finder windows and restart the computer.
    Don't delete the "LaunchAgents" or "LaunchDaemons" folder or anything else inside either one.
    The malware is now permanently inactivated, as long as you never reinstall it. You can stop here if you like, or you can remove two remaining components for the sake of completeness.
    Open this folder:
    /Library/Application Support
    If it has a subfolder named just
               something
    where something is the same string you saw before, drag that subfolder to the Trash and close the window.
    Don't delete the "Application Support" folder or anything else inside it.
    Finally, in this folder:
    /System/Library/Frameworks
    there may an item named exactly
                v.framework
    It's actually a folder, though it has a different icon than usual. This item always has the above name; it doesn't vary. Drag it to the Trash and close the window.
    Don't delete the "Frameworks" folder or anything else inside it.
    If you didn't find the files or you're not sure about the identification, post what you found.
    If in doubt, or if you have no backups, change nothing at all.
    The trouble may have started when you downloaded and ran an application called "MPlayerX." That's the name of a legitimate free movie player, but the name is also used fraudulently to distribute VSearch. If there is an item with that name in the Applications folder, delete it, and if you wish, replace it with the genuine article from mplayerx.org.
    This trojan is often found on illegal websites that traffic in pirated content such as movies. If you, or anyone else who uses the computer, visit such sites and follow prompts to install software, you can expect more of the same, and worse, to follow. Never install any software that you downloaded from a bittorrent, or that was downloaded by someone else from an unknown source.
    In the Security & Privacy pane of System Preferences, select the General tab. The radio button marked Anywhere  should not be selected. If it is, click the lock icon to unlock the settings, then select one of the other buttons. After that, don't ignore a warning that you are about to run or install an application from an unknown developer.
    Then, still in System Preferences, open the App Store or Software Update pane and check the box marked
              Install system data files and security updates (OS X 10.10 or later)
    or
              Download updates automatically (OS X 10.9 or earlier)
    if it's not already checked.

Maybe you are looking for

  • My old computer died, got new one, how do I sync my iPhone data TO my new PC?

    My old computer hard drive crashed and I just purchased new PC. I would like to sync all my data from my iPhone TO my new computer. I authorized my new computer under iTunes but it will only sync the apps, songs, etc. that I purchased from my iPhone

  • Purchased videos not displaying on new iPad

    Hello, Recently upgraded to an iPad Air this weekend from an iPad3. The setup assistant was run on the Ipad Air, and I restored to it from my most recent iCloud backup. I noticed after the restore from backup that for some reason, the Videos app on t

  • XPATH problem in Receiver Determination

    Hi Experts, I get stucked in the XPATH expression in the Receriver Determination(RD) : The input xml (default namespace settting) is like this : <?xml version="1.0" encoding="UTF-8" ?> <MT_XML_SENDER xmlns="http://test.com"> <LAST_NAME>Bryant</LAST_N

  • CIN details in vendor master

    Hi All, When i select CIN details in MK02, nothing is coming. pls tell me is theresettings to be done? regards B Shar Edited by: Scorpio n on Feb 6, 2008 5:04 AM

  • Undergrad Students: Co-Op position available using LabVIEW

    To Whom It May Concern: It is good to see the recent posts about LabVIEW jobs, and we have a Co- Op position available using LabVIEW. I recently posted a similar message to the info-LabVIEW mailing list, and someone there recommended I also post to c