Problems of using Solidworks EDrawings 2018 viewer in windows application - c#

I want to add EDrawings2018 viewer in my windows application. I took following steps:
Downloaded Edrawings2018
Installed it on my computer
Copied EModelView.dll from "C:\Program Files\Common Files\eDrawings2018\"
Added a reference of this dll in my application.
Compiled my application.
Now rightclick on ToolBox-->ChooseItems-->COM components but i stuck here i didnot find the edrawing control here.
Can you please help me ?

Here's a link you might find useful.
A short summary : at some point they stopped providing x32 version of the control and because VS is a 32 bit application you can't use the toolbox to add 64bit eDrawings control.
Try using sample from the link, but note that you'll need to change GUID for eDrawings control as sample was written for 2016 version of eDrawings.
EDIT: For me guid from the sample worked (I have eDrawings 2017) but make sure your project is building against x64.

Related

How do I link to external DLL so that it will be recognized by Windows 8.1?

I developed WindowsForm application using C# with Visual Studio 2010, and I have external DLL (written using VC++). When I deployed it to Windows 7, everything works fine. However, on Windows 8.1, it installed fine and run fine, until the program needed to access the library function inside the DLL. It complained that it couldn't find the DLL (even though the file is in the same location as the executable).
This happened in Windows 8.1 only (perhaps with Windows 8 as well).
Did I link the DLL incorrectly perhaps?
Assuming that your DLL is a windows native DLL, one of two things is happening:
Windows is failing to locate the DLL
The DLL has other dependencies that are not available on the machine
To check, try changing the PATH environment variable to include the folder that your DLL is in. If the program runs then it's a problem with locating the DLL.
If that doesn't work then you'll need to do some more in-depth investigation to find out what is actually happening.
There's a guide here that shows you how to determine what is happening with your program using Process Monitor to find out what is actually failing to load. This might not be your C++ DLL, it could be one of the many dependencies for it.
The answer is the comment from Harry Johnston above:
Most likely cause: the Visual Studio 2010 Microsoft C runtime isn't installed on the Windows 8.1 machine. Or perhaps the C++ class library. Nothing to do with the OS version, except perhaps indirectly. You can diagnose this sort of problem using Process Monitor, look for file not found errors.

Windows 10 and GPMC Class Library - where is it?

I have installed RSAT for Windows 10 and this should give me the above class lib. But I cannot find it!
This article seems to be outdated, its talking about win vista and win7!. Following this MSDN Article under %windir%\assembly\gac_msil I should find the necessary assembly to add to my Visual Studio Project. Unfortunately I do not have an assembly named Microsoft.GroupPolicy.Management there.
I can start the server manager and I can also open the Group Policy Management console, but I can't find the assemblies! Anybody knows what I am missing? Where can I find these assemblies under Windows 10?
I had the same problem. if you are still looking, on Windows 10 RSAT installs the Microsoft.grouppolicy.management dlls into %windir%\Microsoft.NET\assembly\GAC_MSIL. You can browse to this dll to add it as a reference to your .Net project. Also you don't need to "Turn Windows features on or off" as RSAT doesn't appear in the list and this was installed by default. The Microsoft article is out of date as you mention. Hope that helps.

64 bit Micrsoft.ACE.OLEDB provider is not registered on the local machine

I have 64-bit Office installed on my computer and also the 64-bit Microsoft Access database engine.
Even though MADE (Microsoft Access Database Engine) is installed, Visual Studio is throwing an error as shown in the screenshot.
Try installing this first: http://www.microsoft.com/download/en/details.aspx?id=13255
If that doesnt work for you, try the following method:
NOTE: this DOES work for office 2010 even though it is for 2007 office :)
download and install this: http://www.microsoft.com/download/en/confirmation.aspx?id=23734
in VS click add data source, follow the wizard and enjoy! :)
1.Try to download this from here: http://www.microsoft.com/en-us/download/confirmation.aspx?id=23734
2.Go to Visual Studio click add data source, follow the wizard.
This is the same problem I had before and followed steps from here:
http://social.msdn.microsoft.com/Forums/en-US/vstsdb/thread/1d5c04c7-157f-4955-a14b-41d912d50a64
http://social.technet.microsoft.com/Forums/en-US/officesetupdeploylegacy/thread/cc10d906-0fd8-49ef-a1b0-45814bd70c55/
You need to install the x86 version if the target machine is 32 bit or the x64 version if the target machine is 64 bit and your application is built with configuration Any CPU.

debug tool for Windows Embedded Standard 7

I am building WES 7 OS by running our C# application to see which package I need to add to. Most of the time I can get enough information from the error by viewing the System Event. Then I can add right package to the Answer file to create the OS image. But sometime I cannot find enough information from the System Event Viewer.
Is there any tool (debugger?) I can use to trace which file\library\dll is missing which cause our application crash during the runtime? I cannot install Visual Studio on that testing machine.
thanks,
Dependency Walker is a fantastic tool for this: http://www.dependencywalker.com/
It used to be included with the SDK, but I'm not sure if it is anymore. In any case, I'm sure the one on the dependencywalker.com site is more up-to-date.

How to add a reference to Photoshop CS4 COM in C#

I'm having a little problem with Photoshop CS4 automation. When I want to add a reference to the COM API in my Visual Studio 2008 project, the Adobe Photoshop Object Library doesn't show up in the "Add References" panel under the "COM" tab. However, the Illustrator CS4 Type library show up just fine. Photoshop itself run perfectly, both in the 32 and 64 bit flavor. Photoshop was installed along with every other app of the Master Suite CS4.
This didn't work on both Windows 7 and Windows XP, on 2 different machine + 1 virtual PC (Vmware workstation). I also tried it in the VS2010 Beta 1 and the MS Word VB editor, but it didn't work here either.
Anybody has any thought? If you were able to add a reference, what was your configuration?
There is no need to create a Virtual Machine, there is a problem with some versions of Photoshop in as much the COM does not show, to correct this run Photoshop as Administrator (just the once) and this will correct the registry entries and the COM will then be available.
In the end, the solution was to use a Windows XP Virtual Machine with a standalone installation of Photoshop (instead of the whole creative suite). You can use it to generate a dll that work on any Windows with any installation of Photoshop CS4 (standalone or the creative suite).
EDIT : Here is the whole process
Create a Windows XP virtual Machine with your favorite virtualisation solution (Vmware, VirtualBox, VirtualPC etc). Install Visual Studio 2008 and a standalone installation of Photoshop CS4 (The whole creative suits haven't worked in my case, but your mileage may vary). Open Visual Studio and create either a new VB.NET or C# class library. Once this is done, right click on the "reference" folder in the solution explorer, and select add reference. Go to the COM tab, and search for "Adobe Photoshop CS4 type library". This will add two new references : "Photoshop" and "PhotoshopTypeLibrary". Create a dummy function (altough it may not be required) and build your project. As a good mesure, you can make sure that the compile mode is set to "release" but this is not required, debug will work fine. Once your project is builded, go to your project folder on your VM hard drive and look for the bin\release folder. There you will see 3 dll : one named after your project, one named Photoshop.dll and another namde Interop.Photoshop.dll. Copy the two last on your developpement machine with Windows 7 x64. You can then import them in your project by adding a references and browsing to those 2 dll.
A very sweet thing I noticed was that altough the dll were compiled on a 32 bit VM, they would still call the 64 bit version of Photoshop if your .NET program runned in 64 bit mode.
I hope it help!

Categories