|
Just tested it with exactly your code. Same 632 error.
RasError.h says :
#define ERROR_INVALID_SIZE (RASBASE+32)
/*
* An incorrect structure size was detected.
*/
And I swallow a small raisin.
|
|
|
|
|
|
I have just tested the code you have forwarded me :
RASWrapper.EnumConnections --> fails
RASWrapper.RasEnumDevices --> ok
RASWrapper.EnumEntries --> fails
And I swallow a small raisin.
|
|
|
|
|
StephaneRodriguez wrote:
RASWrapper.EnumConnections --> fails
Does it fail (iow return != 0) ? If so, state error code plz.
It wont return values if u dont have an active dialup connection(s).
MYrc : A .NET IRC client with C# Plugin Capabilities. See
http://sourceforge.net/projects/myrc for more info.
|
|
|
|
|
The return value in both cases is 632.
Indeed, that's what I was wondering, as I am not using dialup at all to connect.
And I swallow a small raisin.
|
|
|
|
|
Hmm, very strange....
These are my struct sizes with the results executed in the same order as the file i sent you.
EnumConnections
Size: 704
Result: 0
EnumDevices
Size: 152
Result: 0
EnumEntries
Size: 528
Result: 632
The API is bad for marshalling Maybe in C++ its easy, but I cant think why the function works so "stupidly".
MYrc : A .NET IRC client with C# Plugin Capabilities. See
http://sourceforge.net/projects/myrc for more info.
|
|
|
|
|
OK i see i made a problem with MAX_PATH , iwas under the impression its 256 and not 260. DOPE
Now i get same results as u
I guess i'll have to play with the numbers then....
MYrc : A .NET IRC client with C# Plugin Capabilities. See
http://sourceforge.net/projects/myrc for more info.
|
|
|
|
|
To avoid these number problems, wouldn't it be of interest to marshall a simple pointer, ie forget about SizeConst, ...
At least, this would be simplify marshalling.
And I swallow a small raisin.
|
|
|
|
|
I give up. I have tried setting the size of the struct from 0 to 20000 and it still returns 632. I think it is broken....
MYrc : A .NET IRC client with C# Plugin Capabilities. See
http://sourceforge.net/projects/myrc for more info.
|
|
|
|
|
If I specify Unicode to function returns 50 and the structure stays unchanged. Also 50 has no meaning, except for DOS error codes...
MYrc : A .NET IRC client with C# Plugin Capabilities. See
http://sourceforge.net/projects/myrc for more info.
|
|
|
|
|
Bloody Wtypes #$%#$%@#$%@!#$%@$#%$#%^%#^&$%^&#%^&#%^ ... continues for the next 50 pages....
As specified by MSDN:
LPCTSTR reserved, // reserved, must be NULL
Now THIS NULL is an int that must be set to 0 and NOT null as in a null object. Then everything works as it should.
Re other post about MAX_PATH, this one required 260, the other struct required 256. WTF is going on????
Nut Thanx for all your help Stephane
MYrc : A .NET IRC client with C# Plugin Capabilities. See
http://sourceforge.net/projects/myrc for more info.
|
|
|
|
|
Now MS should smell the blood...
And I swallow a small raisin.
|
|
|
|
|
Hello
When I build my .msi, I get this error :
ERROR: 'shdocvw.dll' should be excluded because its source file
'C:\WINDOWS\System32\shdocvw.dll' is under Windows System File Protection.
So the .MSI package is built anyway, but the installed application doesn't
work because a file is missing ( the application works, except when I try to print or to show a preview. These functions use printDialog, printDocument, printPreviewDialog ...).
How do I include this component?
Thanks
Troz
|
|
|
|
|
Hi
Have you tried coping the file to the application folder instead of the SYSTEM dir?
MYrc : A .NET IRC client with C# Plugin Capabilities. See
http://sourceforge.net/projects/myrc for more info.
|
|
|
|
|
yes
It doesn't work, because I can't make the link with the .exe
But this dll is present on the user machine. I think that we must use the dll present on the user machine.
troz
|
|
|
|
|
Hi troz
Whne adding shdocvw.dll as a reference, it automatically creates Interop.shdocvw.dll in the application folder. This file is the one that should be added to the msi (and set to copy local, we wnat the file there). Leave the other file out of it.
Hope this helps
MYrc : A .NET IRC client with C# Plugin Capabilities. See
http://sourceforge.net/projects/myrc for more info.
|
|
|
|
|
yes this file is created in the application directory, and added directly to the .exe dependancies. It's installed in the installation directory.
But this doesn't solve the problem.
Maybe the pb with printing doesn't come from this dll ???
but I see that the dll isn't loaded when the application runs
the error message is :
System.ArgumentException: Paramètre non valide utilisé.
at System.Windows.Forms.PrintPreviewControl.CalculatePageInfo()
at System.Windows.Forms.Control.InvokeMarshaledCallbacks()
************** Assemblys chargés **************
mscorlib
Version de l'assembly : 1.0.3300.0
Version Win32 : 1.0.3705.0
CodeBase : file:///c:/winnt/microsoft.net/framework/v1.0.3705/mscorlib.dll
----------------------------------------
ContourApplication
Version de l'assembly : 1.0.977.14383
Version Win32 : 1.0.977.14383
CodeBase : file:///C:/Program%20Files/SITAGRI%20SA/COntour%20Application/ContourApplication.exe
----------------------------------------
System.Windows.Forms
Version de l'assembly : 1.0.3300.0
Version Win32 : 1.0.3705.0
CodeBase : file:///c:/winnt/assembly/gac/system.windows.forms/1.0.3300.0__b77a5c561934e089/system.windows.forms.dll
----------------------------------------
System
Version de l'assembly : 1.0.3300.0
Version Win32 : 1.0.3705.0
CodeBase : file:///c:/winnt/assembly/gac/system/1.0.3300.0__b77a5c561934e089/system.dll
----------------------------------------
uscProprietes
Version de l'assembly : 1.0.975.15509
Version Win32 : 1.0.975.15509
CodeBase : file:///C:/Program%20Files/SITAGRI%20SA/COntour%20Application/uscProprietes.DLL
----------------------------------------
uscParametres
Version de l'assembly : 1.0.976.23886
Version Win32 : 1.0.976.23886
CodeBase : file:///C:/Program%20Files/SITAGRI%20SA/COntour%20Application/uscParametres.DLL
----------------------------------------
MagicLibrary
Version de l'assembly : 1.6.1.0
Version Win32 : 1.6.1.0
CodeBase : file:///C:/Program%20Files/SITAGRI%20SA/COntour%20Application/MagicLibrary.DLL
----------------------------------------
mscorlib.resources
Version de l'assembly : 1.0.3300.0
Version Win32 : 1.0.3300.0
CodeBase : file:///c:/winnt/assembly/gac/mscorlib.resources/1.0.3300.0_fr_b77a5c561934e089/mscorlib.resources.dll
----------------------------------------
System.Drawing
Version de l'assembly : 1.0.3300.0
Version Win32 : 1.0.3705.0
CodeBase : file:///c:/winnt/assembly/gac/system.drawing/1.0.3300.0__b03f5f7f11d50a3a/system.drawing.dll
----------------------------------------
UtilityLibrary
Version de l'assembly : 1.0.3.0
Version Win32 : 1.0.3.0
CodeBase : file:///C:/Program%20Files/SITAGRI%20SA/COntour%20Application/UtilityLibrary.DLL
----------------------------------------
System.Data
Version de l'assembly : 1.0.3300.0
Version Win32 : 1.0.3705.0
CodeBase : file:///c:/winnt/assembly/gac/system.data/1.0.3300.0__b77a5c561934e089/system.data.dll
----------------------------------------
System.Xml
Version de l'assembly : 1.0.3300.0
Version Win32 : 1.0.3705.0
CodeBase : file:///c:/winnt/assembly/gac/system.xml/1.0.3300.0__b77a5c561934e089/system.xml.dll
----------------------------------------
uscFormVide
Version de l'assembly : 1.0.940.27677
Version Win32 : 1.0.940.27677
CodeBase : file:///C:/Program%20Files/SITAGRI%20SA/COntour%20Application/uscFormVide.DLL
----------------------------------------
AxInterop.MSChart20Lib
Version de l'assembly : 2.0.0.0
Version Win32 : 2.0.0.0
CodeBase : file:///C:/Program%20Files/SITAGRI%20SA/COntour%20Application/AxInterop.MSChart20Lib.DLL
----------------------------------------
MSDATASRC
Version de l'assembly : 7.0.3300.0
Version Win32 : 7.00.9466
CodeBase : file:///C:/Program%20Files/SITAGRI%20SA/COntour%20Application/MSDATASRC.DLL
----------------------------------------
Interop.MSChart20Lib
Version de l'assembly : 2.0.0.0
Version Win32 : 2.0.0.0
CodeBase : file:///C:/Program%20Files/SITAGRI%20SA/COntour%20Application/Interop.MSChart20Lib.DLL
----------------------------------------
System.resources
Version de l'assembly : 1.0.3300.0
Version Win32 : 1.0.3300.0
CodeBase : file:///c:/winnt/assembly/gac/system.resources/1.0.3300.0_fr_b77a5c561934e089/system.resources.dll
----------------------------------------
CorpsApplication
Version de l'assembly : 1.0.976.17139
Version Win32 : 1.0.976.17139
CodeBase : file:///C:/Program%20Files/SITAGRI%20SA/COntour%20Application/CorpsApplication.DLL
----------------------------------------
Accessibility
Version de l'assembly : 1.0.3300.0
Version Win32 : 1.0.3705.0
CodeBase : file:///c:/winnt/assembly/gac/accessibility/1.0.3300.0__b03f5f7f11d50a3a/accessibility.dll
----------------------------------------
SYSTEM.WINDOWS.FORMS.resources
Version de l'assembly : 1.0.3300.0
Version Win32 : 1.0.3300.0
CodeBase : file:///c:/winnt/assembly/gac/system.windows.forms.resources/1.0.3300.0_fr_b77a5c561934e089/system.windows.forms.resources.dll
----------------------------------------
System.Drawing.resources
Version de l'assembly : 1.0.3300.0
Version Win32 : 1.0.3300.0
CodeBase : file:///c:/winnt/assembly/gac/system.drawing.resources/1.0.3300.0_fr_b03f5f7f11d50a3a/system.drawing.resources.dll
----------------------------------------
|
|
|
|
|
troz wrote:
Maybe the pb with printing doesn't come from this dll ???
I looked too, as far as i can see it (printing) doesnt come from that dll
MYrc : A .NET IRC client with C# Plugin Capabilities. See
http://sourceforge.net/projects/myrc for more info.
|
|
|
|
|
Many system dlls follow a delay-load scheme, even if they are statically linked. The delay load is accurately displayed in Dependency Walker.
If you want to know what dll does the actual PRINT, I suggest to build a small project embedding IE. And exec the OLECMDID_PRINT command to the current HTML Document.
And I swallow a small raisin.
|
|
|
|
|
- shdocvw.dll is not a redistribuable by itself. It is part of the Internet Explorer gloubiboulga and if you copy this file, you'll certainly miss sister dlls such like urlmon.dll, mshtml.dll, ...
- you need to do one of these :
- get the equivalent merge module (.msm) file provided by MS. Check out the redist.txt file in your MSDEV CDs for the list of .msm files. A .msm is a binary package which is properly handled by .msi databases.
- redistribute the IE package.
And I swallow a small raisin.
|
|
|
|
|
Hi,
I have two Queries...
First:
Is there any way by which I can Specify (In my Assembly itself) that
the CopyLocal Property of a Reference to my Assembly should be False?
ie: Whenever my assembly is added into any Project (References), the
CopyLocal property for that Reference should be False by default.
Note: It should be possible without making the Assembly Strong Named.
And,
Does the Framework/VisualStudio IDE raise any Event or send any kind of
Notification to the Assembly when a Reference to it is Added or Removed from a Project.
ie: I want to execute some code from within my assembly when that Assembly is
Added or Removed from the References collection of any Project.
Thanks,
Firoz
|
|
|
|
|
Firoz wrote:
Is there any way by which I can Specify (In my Assembly itself) thatthe CopyLocal Property of a Reference to my Assembly should be False?
As far as I know/remember once a project has been saved, that setting should persist when adding it to a new solution, unless the assembly is not available.
As for the second question :
Hope this helps
MYrc : A .NET IRC client with C# Plugin Capabilities. See
http://sourceforge.net/projects/myrc for more info.
|
|
|
|
|
Hi Leppie,
Thanks for your Reply.
But, thats not the problem.
I will explain it in Detail.
I have created a simple UserControl.
There are some limitations(or you can say Bugs) in this control.
One such limitation is that the CopyLocal property of the Reference
to this Control should always be FALSE.
When this control is added to the References of any project,
by default the IDE makes the CopyLocal property of the reference to TRUE.
Now, this Control is used by some other developers also.
and, I cannot ask or expect those guys to manually change the CopyLocal
property from True to FALSE everytime they add my control to their Projects.
So, I need a WAY by which the CopyLocal property should be FALSE automatically whenever my Control is added to any Project.
Actually, I feel(or wish) there is some simple way to do this.
Like some Assembly Arributes which will expose the Value for CopyLocal
property and the IDE will read it from the Assembly when it is added to the Reference and set the CopyLocal property accordingly.
But, I could not find any such Attribute...
Thanks,
Firoz
|
|
|
|
|
Hi All,
Is it possible to hide My Computer folder? I would like also to hide A Drive
so people can't use it.
Maybe more general question, howcan you hide any shortcuts/folders from C#?
Thanks
Eka
|
|
|
|
|
Eka wrote:
Is it possible to hide My Computer folder? I would like also to hide A Drive
so people can't use it.
Yes, you can. It is a registry entry somewhere, and if you are using Win 2000/XP , you can run the group policy editor, by running gpedit.msc from start run. Unfortunately, I cant point you to the correct place in the registry.
Hope this helps
MYrc : A .NET IRC client with C# Plugin Capabilities. See
http://sourceforge.net/projects/myrc for more info.
|
|
|
|