I've created a project on VB6 at but when I am opening it on VB8, it shows the following error:
How to fix it?
As listed by GSerg in the comments, this appears to be a known issue documented in Microsoft Knowledge Base article 896292: You receive a "The remote procedure call failed" error message when you upgrade a Visual Basic 6.0 project to Visual Studio .NET 2003 or Visual Studio 2005 on Windows Server 2003 SP1 or on Windows XP SP2
To reproduce the solution here:
Cause
This behavior occurs because the VBU.exe tool has compatibility issues with the Data Execution Prevention (DEP) option.
Note: The VBU.exe tool starts when you upgrade the Visual Basic 6.0 project by using the Visual Basic Upgrade Wizard in the Microsoft Visual Studio .NET IDE.
Workaround
To work around this behavior, add the VBU.exe tool to the DEP exclusion list. To do this, follow these steps:
Click Start, click Control Panel, and then double-click System. The System Properties dialog box appears.
Click the Advanced tab, and then click Settingsunder Performance. The Performance Options dialog box appears.
Click the Data Execution Prevention tab. Verify that the Turn on DEP for all programs and services except those I select option is selected
Note By default, the Turn on DEP for all programs and services except those I select option is selected in Microsoft Windows Server 2003 Service Pack 1 (SP1).
Click Add. Locate and then click to select VBU.exe. Click Open.
In the warning box, click OK. VBU.exe now appears in the DEP program area.
Click Apply, and then click
OK. A dialog box appears that states that you must restart the computer for the setting to take effect. Click OK.
Try do divide your project to small projects(or comment large part of your project) a try again in each small project.
The idea is to find the function that is production the error.
My intuition is telling me that maybe is a DLL or OCX problem. Try to see all the external DLL or OCX calls and remove from the original project and try again the upgrading.
Most developers who move their VB6 projects to .Net do not even try to port them over. Even with third-party "conversion" software, the effort can be incredibly tedious. So much so, that most developers simply re-write the application completely. Consider it a move to a different language. In fact, some developers use that opportunity to port it to C# instead. I'm a die-hard VB6 user/fan but were I to attempt to port my 200 form accounting application, I'd just re-write it in C#. I started porting it, tried third-party conversion apps, just wasn't worth it.
Related
I'm creating an OpenEdge Progress-4GL application, based on a window, where I like to add a tabpage. In order to do this (as there is no tab page control in the palette), I've tried to add the OCX (ActiveX) control "Microsoft TabStrip Control, version 5.0 (SP2)". However, when I try this I get the following error message:
Messagebox title: AB
Messagebox content:
CtrlFrame
Unable to create control.
Het licentie bestand voor genoemde ActiveX control is niet gevonden.
The last sentence is in Dutch, freely translated it means: "The license file for mention ActiveX control is not found."
What should I do in order to be able to add the mentioned ActiveX control to my window?
Or, even better: is there a standard "tabpage" control I can use for creating Progress-4GL basic Windows-based applications?
Edit after more further investigations
In the meantime from the directory C:\Windows\SysWOW64\ I have launched the command regsvr32 comctl32.ocx with following results:
Launched as a regular user : the command fails with error number "0x8002801c". This seems to be due to user permissions.
Launched as an administrator : the command succeeds but still it seems not to be possible to use the mentioned control.
Edit after installation of Visual Studio
The problem seems still not to be solved, even after having installed Visual Studio 2019, version 16.8.3. The following components are installed:
Workloads :
Web & Cloud (4)
ASP.Net and web development
Python development
Desktop & Mobile (5)
.NET desktop development
Desktop development with C++
Universal Windows Platform development
Other Toolsets (6)
.Net Core cross-platform development
Individual components : Development activities (filtered on "Basic")
C# and Visual Basic
Apparently the required license is not in the installation. What do I need to add?
The error message says that you don't have a developer license for that Active X Control. Some (old) Visual Studio installs provide that license.
Your options are:
a) obtain that license through a Visual Studio/Visual Basic license that still has Active X Support, like VB6, note, that Microsoft dropped that from Visual Studio probably 15 years ago.
b) find a different tab folder Active X Control (that is still supported by a vendor). The Codejock components are known to work well in the AVM: https://codejock.com/products/controls/?2yn6s14z=p1z
c) get into ADM2 framework from Progress Software. That provides a tab folder purely written in ABL (not pretty). But learning ADM2 in 2021 seems really painful. It's no longer a maintained by Progress Software
d) Switch to Progress Developer Studio and start using GUI for .NET (https://docs.progress.com/de-DE/bundle/openedge-gui-for-net-primer-117/page/Object-oriented-Programming-in-ABL.html). You can build UI's based on (any) .NET WinForms Control based on GUI for .NET. However, the OpenEdge Studio does not provide a graphical designer for that.
e) Build your own pure ABL tab folder based on images and buttons.
Each time I open Visual Studio Community 2017, I get the dialog below asking about upgrading the version of Microsoft Azure Tools.
This dialog appears 4 times (4 different projects), I click 'OK' each time and then everything seems to work fine. However, next time I open the solution I have to repeat the process.
How do I resolve this once and for all?
Note that this project was created under a different version of VS (likely with a different Azure Tools) but that shouldn't be a permanent issue, I'd think.
That's strange...
Have you tried upgrading the project this way:
In Solution Explorer, open the shortcut menu for the project node, choose Properties, and then choose the Application tab of the dialog box that appears
The Application tab shows the tools version that’s associated with the project. If the current version of Azure Tools appears, the project has already been upgraded. If you've installed a newer version of the tools than what the tab shows, an Upgrade button appears.
This may help as well: https://learn.microsoft.com/en-us/azure/vs-azure-tools-upgrade-projects-to-the-current-version-of-the-azure-tools
Just installed VS2010 express for Windows Phone last night. Install went smoothly. It creates a project, compiles, and deploys the app to the emulator.
Here's the problem: When I try to "Add Reference" through the Project menu, I do not get the Add Reference dialog box. Same thing if I right click References in the solution explorer and click Add Reference. That's not all. "File...Open" and "File...Open Project" also fail to throw up an open file dialog box. When attempting any of these actions, the IDE quickly loses and regains focus. Even pressing a keyboard shortcut (Ctrl+O) causes the IDE to quickly lose and regain focus, but no open file dialog box appears.
This is what I have tried, not particularly in this order:
1. Turned off UAC
2. Monitored file and registry access using Process Monitor during a File...Open operation. File activity showed mostly "SUCCESS" with a few "FAST IO DISALLOWED" and a few "INVALID DEVICE REQUEST" results. Registry activity showed mostly "SUCCESS" with some "NAME NOT FOUND" and a few "BUFFER OVERFLOW" results.
3. Created a new, clean Windows account to run the IDE from
4. Forced a test project to add a reference to "System.Xml.Linq" by editing the ".csproj" project file. Project failed to load in the IDE.
I don't have these problems at all on 2 other Windows 7 computers with VS2010 C# express beta 2 installed. One machine is 32bit and the other 64bit, both Home Premium edition.
My system: Windows 7 Home Premium, 64bit
Other Visual Studio products installed: VS2008 C# express, VS2008 C++ express
One other thing to note: Several months ago I installed the non-phone distribution of VS2010 C# express beta 2, and I had the same exact problems. Back then I chalked it up to being beta and went back to VS2008 C# express, where I do not have these issues.
Matt, if you're still reading this post, I have a solution:
Do you have the Tablet PC Input Service disabled? Enable and start it. This was suggested to me over on the MSDN forums, and it worked for me immediately. I have this service disabled, but I turned it on, fired up VS2010, and it just worked right off. I confirmed this solution by turning the service off again, starting VS2010, and noting that it breaks once again. Turned the service on once more, started VS2010, and it works perfectly. Amazing.
I do not think it's acceptable to require this particular service just for VS2010 to function correctly. Hopefully they fix this in the inevitable service pack. FYI, I had this service disabled because I turn off all services I don't require. So now I have two "wisptis.exe" tasks eating up ~8MB of RAM and starting every time I turn on the PC. Or I can shut the service off again and just resort to my previous workaround. haha
Here is a work around.
Just run wisptis.exe from command line and start the visual studio.
If you don't wanna run each and every time you restarts the computer,then just put wisptis.exe in a .bat file and move it to the startup folder,so that it will be automatically executed on each and every startup.
EDIT 1 :- Or else just press 'WIN'+'R' and type 'wisptis' and press 'Enter'.
I experienced the exact same problem. I'm running VS2010 Express on Windows 7 (x64). Re-enabling the "Tablet Input" service "fixed" the problem.
VS2010 has always worked fine, and then suddenly for no apparent reason "ctrl-O", "Add Reference", "Open Project", and other similar functions stop working.
No amount of repair/uninstall/reinstall would fix the problem.
I always disable the "Tablet Input" service on Win 7, because I use a Wacom tablet, and dislike the visual notification of (tablet) mouse clicks this service causes. VS2010 has so far been working fine in this setup with Tablet input service disabled, but then suddenly the problem arose, and I had to re-enable the "Tablet Input" service to make it go away.
I have another computer with the exact same setup - Win 7 (x64), VS2010 Express, Wacom table, and disabled "Tablet Input" service - and here VS2010 is still working just fine. Both computers also have almost identical software installed and updates installed, so I still have no idea where the difference lies.
Has anyone had more luck in finding the root cause?
I also use Power Toys, but I have not been able to correlate this installation with the problematic behavior of VS2010.
I'm having close to the same issue with the exception that my New | Project dialog works, but Add Reference and Ctrl + O just cause the interface to lose focus and regain focus without every launching the dialog. I have tried running devenv /ResetAddin and devenv /ResetSkipPkgs, but neither helped. I have UAC turned off as well. I don't experience the issue with VS2008.
Here's my setup:
Windows 7 Ultimate x64
Visual Studio 2010 Ultimate RTM
Visual Studio 2008 Team System Developer Edition with Team Explorer 2008 and VS2008 SP1
The only addins I run:
GhostDoc
.NET Reflector
Other Related Products I run:
Microsoft Expression Studio 3
SQL Server 2008 Developer Edition with SP1
tonight I uninstalled the VS2010 Express beta 2+phone tools and installed the now final RTM VS2010 Express C#. It STILL had the problem! For kicks, I tried importing a VS2008 project because it has some extra references in the project, and I was curious how they would be handled. The project imported successfully, but compiled with errors that it couldn't find a reference for a SyndicationFeed object, even though the reference for it was successfully added to the References list upon import. I remove the reference (System.ServiceModel.Web), hold my breath, and try to Add Reference one more time. Amazingly, the Add Reference dialog pops up, I add the reference back, recompile and bingo. File...Open and File...Open Project now throw up the proper file open dialogs as well.
To be sure this isn't a fluke only related to importing an old project, I shut down VS2010, start it back up, create a brand new project and try Add Reference. It works still. The File/Project dialogs also show up. I have no idea how, but importing a VS2008 project apparently made VS2010 correct itself on my machine.
Thank you for replying to my post. After hours of Googling over the past few days, your post is the first I've seen of anyone else having this issue besides me.
I found a workaround, but it's annoying having to do this:
1. Create a new project
2. Close VS2010, don't bother saving the new project
3. Start VS2010 again, and everything works as it should. I can access the Add Reference dialog, and I can do a File...Open and Open Project from the menu and toolbar.
If I close VS2010 and start it again, it is broken once more. Performing my workaround fixes it again for that session.
Still looking for a permanent solution.
I finally figured out a work-around. If I temporarily disable the Power Tools, the original Add References dialog opens fine. After adding my references, I can enable the Power Tools again.
Yes, I know... I could set up a virtual machine running XP. Unfortunately our build environment is such that we need to be running VC2003, 2005 and 2008 concurrently and it would be much more convenient if I could run 2003 natively on Windows 7 for the few projects we have that require it.
I realize some things may not be available in the IDE, but I was able to run 2003 under windows Vista and if I could get the same base level of functionality under Windows 7 I would be extremely happy.
Right now I get an error opening the *.pdb file when I compile after switching vc2003 to run as Administrator under compatibility mode for XP SP 2.
Thanks!
Give XP Mode a try if you can't get it to run natively.
http://www.microsoft.com/windows/virtual-pc/download.aspx
I wrote a blog entry about this a while back that you can check out - http://technikhil.wordpress.com/2010/01/12/visual-studio-2003-and-windows-7-can-get-along-really/
The only thing I am stuck on right now is the global search functionality of VS 2003 - it hangs the application. My workaround is to use windows 7 search :-). Other than that - so far so good...
Update: I got the search to work as well by disabling the Aero functionality - I have updated my blog post with the details...
(Much of this repeats what's already been written above.)
I need to run VS2003 as adminstrator under Win7 64-bit, to support legacy projects (e.g. those that run on the original Xbox). The old XDK requires VS2003, so upgrading is not an option. I could run WinXP but I prefer Win7.
VS2003 is not officially supported under Win7 and trying to do so creates a couple of fairly annoying problems:
Find-in-files causes VS2003 to hang.
Linking fails due to a PDB file handle leak.
The Find-in-files hang is solved by using "Disable visual themes". Navigate to the VS2003 shortcut (Start-->Microsoft Visual Studio .NET 2003), right-click to get context menu, select Compatibility tab, Settings pane, and check "Disable visual themes".
The linker failure (LNK1201) happens when you run the program through the debugger, stop it, modify a file and build. The error is that a Visual Studio hold a handle to the PDB file, while the linker tries to write to that file. You can stop and restart VS2003 to bypass the issue. Works but is annoying.
You can also use the Microsoft SysInternals "handle.exe" utility to find, then close handles held by a process on a particular file. Write a script to call handle.exe and set up the VS2003 project to run that script as a Pre-Build Event. (See this thread.) But handle.exe requires running as admin.
You could hypothetically change handle.exe to run as admin using the usual steps (e.g. as a compatibility setting) but then handle.exe (apparently) runs in a nested shell, and then the stdout text does not get to the calling script.
You can make VS2003 run as admin, in which case the Pre-Build script also runs as admin, hence does handle.exe, and that works.
The remaining trick is to get VS2003 SLN files to open properly. If you simply make VS2003 run as admin automatically then the VS version selector fails to run VS2003. I don't know why, but it is the case.
You could associate SLN files to open using VS2003 devenv.exe instead of VSLauncher.exe. That works but then all new SLN files (2005, 2008, 2010, 2012, ...) fail to open.
So the final step then is to make VSLauncher.exe run as admin. This fails as of KB2492386 as this thread indicates. Uninstalling that update was the final step in this saga, to get everything to work.
PATCH NOW AVAILABLE
After some reverse-engineering, I found the incorrectly refcounted COM object responsible for the leak (it was off by 1) and developed a stable patch and corresponding article describing the fix. This addresses problems encountered while using Windows 7 thru Windows 10. Details and download available at:
http://bytepointer.com/articles/vs7.1_2003_on_win7_pdb_handle_leak_bug_unofficial_fix.htm
If you want to perform the patch manually, those details are also included.
NOTE: The SysInternals Handle tool workaround did not work for files on a network-share. The .PDB was not completely unlocked although the Handle tool claimed it was closed. My fix eliminates the problem once and for all and avoids any side effects.
Run this install. You need to run it from the setup directory, the setup.exe on the root of the cd will not work.
D:\setup\SetUp.exe /NO_BSLN_CHECK
Solution i found on the web which helped: For your visual studio, use application compatibility = windows vista SP2, and NOT WinXP SP3
I have a really dirty and pathetic workaround for the pdb problem.
Download and run Sysinternals-ProceXP, press CTRL-F enter the name of pdb(smt like ($ProjectName).pdb) that can't be created while linking. Double click when it is found.(if it can't be found run procexp with administrator priviliges)
Then you will see that the .pdb file is highlighted in the lower pane of the main screen. Right click it and select Close Handle. When you retry building your solution it wont raise an error.
I dont know if this solution can be scripted but it is at least better than restarting visual studio.
I've been using Visual studio 2003 on win7 since the very first RC edition was released :S
why do people have issues?
I have attempted to install VS2003 on Windows 7 64-bit using the Virtual Windows XP feature. I'm reasonably certain that this will be successful. The issue I ran into is that the installer wants IIS installed, and the XP installation provided by the Virtual XP doesn't have that enabled by default.
If you go to Add/Remove components, and try to add it, it will ask for the disc, which I didn't have on hand. Once I get my hands on the disc, I'm pretty sure that it will run fine.
If you haven't tried it for other apps, the Virtual XP feature is really neat...
I am experiencing the same issue; devenv.exe is leaving pdb files open after running the project. I have made a batch file to work around it, it closes all .pdb files open by devenv.exe:
handle.exe .pdb | awk "/devenv.exe/ { split($4, fd, \":\"); system(\"handle.exe -c \" fd[1] \" -y -p \" $3)}"
You will need to have handle.exe by sysinternals and awk by gnu in your path to make it work.
Use at your own risk. Closing handles can cause application or system instability.
In windows 7, there is the compatabiliy mode in the executable properties.
open:C:\Program Files\Microsoft Visual Studio .NET 2003\Common7\IDE\
then right click on the devenv.exe and select properties. In the compatability tab, select the "Run in compatability mode" and select "Windows XP" in the dropdown.
Try that, I am not sure if it works, but it is worth a shot.
I am having no problems with Visual Studio 2003 on Windows 7 64-bit.
Navigate to VS2003 devenv.exe (probably C:\Program Files (x86)\Microsoft Visual Studio .NET 2003\Common7\IDE\devenv.exe)
Right-click and select Properties
In the Compatibility tab, check "Run this program in compatibility mode for:" and select "Windows XP (Service Pack 3)"
Check "Run this program as administrator"
I got Visual Studio .NET 2003 Working just fine on my HP EliteBook Workstation 8760W with an I7 processor and 12GB of RAM running Windows 7 Professional 64 bit by doing some advanced steps.
They go as follows:
Install FrontPage 2002 Server Extensions for IIS 7.0.
Install Visual Studio .Net 2003. Just skip when the installer command you to configure Frontpage 2002 Server Extensions.
Install .Net Framework 1.1 Service Pack 1 (download here).
Go to Control Panel > Administrative Tools > Internet Information Services (IIS) Manager. Highlight your machine, then double-click on ISAPI and CGI Restrictions. Change setting for ASP .NET v1.1.4322 to Allowed.
Then it will always show an alert with the following message
This program has compatibility issues...
just ignore that. Also, don't put it in compatibility mode in the properties of the IDE.
I did managed to install VS2003 on Windows 7 32 bit. However I had to do some IIS tricks in order to be able to run my ASP.NET project. When you install VS2003 Web Development component can't be selected. Basically you have to drop your VS2003 ASP.NET v1.1 into C:\inetpub\wwwroot\project_name and make it working on it's own as a standalone web portal first. Here is the steps I did.
Install IIS on Windows 7
Copy your VS2003 project to C:\inetpub\wwwroot\project_name. Right click on your project_name and Convert to application.
Following was my custom issue that didn't work until I enabled Windows Authentication even if I had no related settings in my web.config. Select your project_name > Authentication > enable both Anonymous and Windows Authentications.
Enable ASP.NET 1.1 in ISAPI and CGI Restrictions and make sure ASP.NET is added under ISAPI filters
Once I'm able to fire up my ASP.NET project in a browser go ahead and open project from your project location in my case is C:\inetpub\wwwroot\MHSScoreOrg\MHSScoreOrg.sln. I was able to run my project only when it was fully integrated on IIS.
I'm sorry, your build environment requires you to have VC 2003, 2005, AND 2008 running concurrently? I would really bet that your efforts would be better spent simply consolidating your build environment to just one environment.
Have you considered upgrading your solutions to vs2005, using MSBEE to target .net 1.1?
I like the "Add Connection" or "SQL Connection" dialog that is in Visual Studio in Server Explorer window.
I also like the one in CodeSmith.
I would like to have that same dialog or simular functionality in my windows application.
I need it to work with SQL Server, and SQL Server Express Database files (*.mdf).
My clients have .NET 3.5 SP1 and SQL Server 2008 Express installed.
Is this a system dialog I can use? Is there an open source dialog like it? Thanks.
I was looking for exactly that, and it appears that Microsoft has published the source for the Visual Studio connection dialog, so that it can be used outside VS :
http://code.msdn.microsoft.com/Connection
I just tried it, it works fine :)
Here you go:
SQL Connection Dialog
http://www.codeproject.com/KB/vb/SQL_Connection_Dialog.aspx
Edit:
It seems that the above example is using MSDASC.DataLinks.ui wich is not allowed to redistribute.
There are a request of making the MSDASC.DataLinks ui distributable:
http://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=291885
So it will only work if the end user has VS installed. Not good enough.
I will not delete this answer because of the project is still a good start if you want to make your own dialog.
Edit 2:
More on the subject:
Using the Choose Data Source dialog of Visual Studio 2005 from your own code
http://www.mztools.com/articles/2007/MZ2007011.aspx
and
http://www.clariusconsulting.net/blogs/kzu/archive/2006/03/01/ReferenceRelativePath.aspx
You would have to implement it yourself. It comes as part of the installtion of VS.NET, and if you were to access it, I am sure the EULA would require a license for VS.NET on every machine you ran this on.
That being said, you will have to implement this yourself. Unfortunately, Google turns up nothing when queried for an open source add connection dialog.