|
Deepak Kumar Vasudevan wrote:
I could find subkeys for my sites that I have added as 'Trusted Sites'. But my doubt now is what is that
S-1-5-21-478445148-176170993-1538882281-1205 and how to dynamically intrepret this.
As Leppie mentioned that is the ID of the user, in the link I provided:
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\ZoneMap\Domains
It is based on the current user so the ID is not shown.
As you see from the folders you already have listed, they have a DWORD '*' which is (in my machine at least) value of 2. They ties to the folder name under:
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Zones
As long as you have entries in the previous key path (in the Domains), and that value you add under it has the value pointing back to the Zones folder (probably the value of 2), IE will classify that site as trusted.
Rocky Moore <><
|
|
|
|
|
Hi,
I want to read the PRoxy Settings from Microsoft Internet Explorer Control Panel Internet Applet Settings and use it for my System.Net.WebClient.
How and where can I read the Proxy/Port in C# application?
Deepak Kumar Vasudevan
http://deepak.portland.co.uk/
|
|
|
|
|
My suggestion is to decompile the implementation from the System.Net.ProxyRegBlob class (System.dll). (for any reason, this class was made hidden).
Other suggestions :
- import wininet.dll API functions (InternetQueryOption)
- hack the registry (HKCR \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ Internet Settings \ Connections + HKLM \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ Internet Settings \ Connections).
|
|
|
|
|
.S.Rod. wrote:
My suggestion is to decompile the implementation from the System.Net.ProxyRegBlob class (System.dll). (for any reason, this class was made hidden).
Here's the source code: Net::ProxyRegBlob Class Reference[^]
Regards
Thomas
Disclaimer: Because of heavy processing requirements, we are currently using some of your unused brain capacity for backup processing. Please ignore any hallucinations, voices or unusual dreams you may experience. Please avoid concentration-intensive tasks until further notice. Thank you.
|
|
|
|
|
I'm trying to use a form I created in C# in a VC++ program I am creating. (Descriptive subject, no?) I have the C# compiling into a DLL and ... well that's about as far as I can get. I've done some reseach in the MSDN, and it shows how to use console classes, but nothing about how to use a form created in C#. I don't have the code on this computer, but the method I found I was trying last was using the following code (Close as I can 'member)
#using <mscordb.dll>//However main CLR dll is spelled.
#using "MyCSharpDLL.dll"
using namespace MyCSForm;//I tried it with and without this
//line and it didn't work either way, so I show it.
That's about where I get to. I also try to create an object of the class in the name space using either
MyForm Form1;
OR
MyCSForm::MyForm Form1;
Depending on if I use the "using namespace MyCSForm;" line or not.
I have also tried to using a slightly more complex method, one that is used to load functions from a DLL. I use that method to pull things out of a C++ dll that uses dllexport to say what comes out. That method can load the C# DLL but I can't figure out what I would be trying to load from it. Tried and failed to do the form, and main and even the namespace. None worked. At least I don't know how to get them to work.
Any help would be appreciated and if you have question I will answer them to the best of my abilities. And if I am going all wrong on how to load a DLL made in C# into C++, please point me in the right direction. Thanks.
Note: I'm sorry if I seem to be flooding the forum, but I'm not sure which of the three (Visual C++, Managed C++, C#) I am posting this in would be the best place for it. Since it deals with all three of them, I believe.
Thank you again for any help.
The wisest of the wise may err. - Aeschylus
|
|
|
|
|
You have several options :
- export the C# assembly to a COM component (regasm.exe) and use it from your VC++ program like a normal COM component. This article[^] (Nick Parker) tells how to.
- use MC++ mix mode, where your code references the namespace and class written with C#. #using <MyCSharp.dll> using namespace MyCSForm;, and of course you need to compile with VC++7.x with the /clr switch.
PS : cross-posting is lousy.
|
|
|
|
|
Dear All,
Please guide me how I can run my .NET application stored on another computer in my LAN from a mapped drive.
Regards,
Sassan Komeili Zadeh
|
|
|
|
|
I have a requirement to authenticate users against a non-MS LDAP service using non-standard attributes. The general method of doing this is to search for the user anonymously, then re-bind to the server with the found DN and the provided password.
I'm using the following code to implement the search, but it always fails (error provided below):
<br />
DirectoryEntry me;<br />
string filter = "(mailLocalAddress=" + uid + ")";<br />
string path = "ldap://10.10.240.19/o=Top";<br />
<br />
DirectoryEntry dbE = new DirectoryEntry(path);<br />
DirectorySearcher dsE = new DirectorySearcher(dbE, filter);<br />
dsE.SizeLimit = 2;<br />
SearchResultCollection src = dsE.FindAll();<br />
<br />
if (src.Count == 0) <br />
{<br />
throw new AuthenticationException("Login Incorrect");<br />
}<br />
if (src.Count > 1)<br />
{<br />
throw new AuthenticationException("Invalid LDAP Response");<br />
}<br />
me = src[0].GetDirectoryEntry(); <br />
The error I get is:
<br />
System.Runtime.InteropServices.COMException (0x80040E37): Unknown error (0x80040e37) at System.DirectoryServices.DirectoryEntry.Bind(Boolean throwIfFail) at System.DirectoryServices.DirectoryEntry.Bind() at System.DirectoryServices.DirectoryEntry.get_AdsObject() at System.DirectoryServices.DirectorySearcher.FindAll(Boolean findMoreThanOne) at System.DirectoryServices.DirectorySearcher.FindAll() at Portal.Login.CheckPassword(String uid, String pass) in c:\inetpub\wwwroot\portal\login.aspx.cs:line 108<br />
Now, my base DN is indeed "top". What I am expecting is that the program binds anonymously to the specified LDAP server and does a sub-tree search on o=Top for my filter.
Anyone have any ideas?
-Adrian
|
|
|
|
|
After much searching, I found there is a difference between ldap:// and LDAP:// --- go figure.
|
|
|
|
|
From reading a couple articles on CP and other sources, like this one:
http://www.dotnet247.com/247reference/a.aspx?u=http://www.c-sharpcorner.com/Code/2002/April/MtP4MtVsMt.asp[^]
I have the following understanding about the ThreadPool class that I'd like to verify. And that is, that the ThreadPool manages up to 25 threads (the default limit), but that ONLY ONE THREAD can be executing. In other words, the OS controls the CPU to timeslice between the application thread and ONLY ONE worker thread, regardless of how many the ThreadPool is managing. Is this correct?
For my requirements, I'd like something more akin to this article:
http://www.codeproject.com/useritems/threadlibrary.asp?target=threadpool[^]
which, if I understand it correctly, pre-creates a pool of threads and assigns them to various worker processes that exist in a queue. The assumption here, unlike ThreadPool, is that ALL the threads will be busy doing something, and the application will be creating worker processes (but not threads). The point of this class is to reduce the overhead of constantly creating and destroying threads. Now, I don't think this is what C#'s ThreadPool class does.
Is this view of the ThreadPool class correct?
Thanks!
Marc
Help! I'm an AI running around in someone's f*cked up universe simulator. Sensitivity and ethnic diversity means celebrating difference, not hiding from it. - Christian Graus Every line of code is a liability - Taka Muraoka Microsoft deliberately adds arbitrary layers of complexity to make it difficult to deliver Windows features on non-Windows platforms--Microsoft's "Halloween files"
|
|
|
|
|
Marc Clifton wrote:
Is this view of the ThreadPool class correct?
I think it will create x number of threads then use those for each delegate to run but I'm not sure.
Mike Woodring has a C# implementation of a ThreadPool class available on his website, staff.develop.com/woodring[^] in the .NET samples section. I think he also posted a ton of information about the ThreadPool to one of the DOTNET lists (discuss.develop.com[^]) a long time back. I did a quick search, but didn't find what I was looking for, but you might find the info you want with a quick search.
James
"It is self repeating, of unknown pattern"
Data - Star Trek: The Next Generation
|
|
|
|
|
Wow, what a great site! Thanks for the link!
Marc
Help! I'm an AI running around in someone's f*cked up universe simulator. Sensitivity and ethnic diversity means celebrating difference, not hiding from it. - Christian Graus Every line of code is a liability - Taka Muraoka Microsoft deliberately adds arbitrary layers of complexity to make it difficult to deliver Windows features on non-Windows platforms--Microsoft's "Halloween files"
|
|
|
|
|
Have a look on GotDotNet for ManagedThreadPool. ThreadPool written in 100% managed code. Mimics the core functionality of the System.Threading.ThreadPool class. The author is stoub@microsoft.com.
Perhaps with some tweaking you can get what you want.
I rated this article 2 by mistake. It deserves more. I wanted to get to the second page... - vjedlicka 3:33 25 Nov '02
|
|
|
|
|
Didn't find anything on thread pool on GotDotNet!
Thanks for the reply though! I'm getting around to your comment in the XmlDataEditor, by the way!
Marc
Help! I'm an AI running around in someone's f*cked up universe simulator. Sensitivity and ethnic diversity means celebrating difference, not hiding from it. - Christian Graus Every line of code is a liability - Taka Muraoka Microsoft deliberately adds arbitrary layers of complexity to make it difficult to deliver Windows features on non-Windows platforms--Microsoft's "Halloween files"
|
|
|
|
|
Marc Clifton wrote:
Didn't find anything on thread pool on GotDotNet!
I did http://www.gotdotnet.com/community/usersamples/Default.aspx?query=ManagedThreadPool[^]
Marc Clifton wrote:
I'm getting around to your comment in the XmlDataEditor, by the way!
That one with the questions marks is funny though. It appears when the XML is UTF-8 it gets ?'s but with UTF-16 (thats what u had?) it wouldnt load without removing them first.
I'll mail you a small app to show what i mean.
CHeers
I rated this article 2 by mistake. It deserves more. I wanted to get to the second page... - vjedlicka 3:33 25 Nov '02
|
|
|
|
|
I did
Excellent! I tried a variety of search patterns on GotDotNet and never found _any_ articles on thread pools, etc.
I just finished looking at the code--it looks really good. Unlike what I've been able to glean out of .NET's ThreadPool documentation (which is abysmal) it seems that it runs all working threads simultaneously, which is what I want. .NET's ThreadPool implied that only one thread was active at a time, which is not what I want. Because the documentation is so sparse and the terminology is confusing, I'm going to need to test this all out.
It appears when the XML is UTF-8 it gets ?'s but with UTF-16 (thats what u had?) it wouldnt load without removing them first.
Argh. I struggled with this UTF-8 and 16 thing. If I used .NET's default, then the generated XML was unreadable in something like notepad, which I needed in debugging. Maybe I should make it an option as to the XML format. It seems that it usually can't figure it out on its own either when reading an XML document.
In other words, it's a mess and I didn't pay a lot of attention to it except to scream at it until I got what I needed.
Marc
Help! I'm an AI running around in someone's f*cked up universe simulator. Sensitivity and ethnic diversity means celebrating difference, not hiding from it. - Christian Graus Every line of code is a liability - Taka Muraoka Microsoft deliberately adds arbitrary layers of complexity to make it difficult to deliver Windows features on non-Windows platforms--Microsoft's "Halloween files"
|
|
|
|
|
As far as I understand, System.ThreadPool is actually running one thread at a time PER CPU. For most cases, this is the same as one thread at a time. But also according to my understanding, there are multiple worker threads (up to 25 by the default limit) that are all running at the same time, but a worker thread is unlikely to give up its timeslice without a sleep() call or something similar.
I've found System.ThreadPool fairly reasonable for my non-trivial needs. One complaint I had was not being able to stop worker threads, but that hasn't posed a problem in my project yet. My major concern with System.ThreadPool is that it might not be supported with Windows 98, and if that's the case, I'll move to ManagedThreadPool or the DevelopMentor.ThreadPool published on CodeProject.
|
|
|
|
|
Hi,
which methods or namespace i have to use if i like to deal with relative and absolute path ?
i like to use relative path's to a given absolute path
.:Greets from Jerry Maguire:.
|
|
|
|
|
Does System.IO.Path.Combine help?
James
"It is self repeating, of unknown pattern"
Data - Star Trek: The Next Generation
|
|
|
|
|
Hi,
i need it vice versa
i have two absolute paths and like to have the relative path from path1 to path 2, like it's in web hyperlinks.
Any clues ?
.:Greets from Jerry Maguire:.
|
|
|
|
|
Jerry Maguire wrote:
i have two absolute paths and like to have the relative path from path1 to path 2
Ok, I think the easiest thing to do is to break each part down (root, dir, dir, ..., filename) then you can start to remove the like parts one by one until they don't match.
path1 => "/foo/bar/baz/index.html"
path2 => "/foo/bar/stuff/kappa.html"
path1 breakdown:
root = "/"
dir = "foo", "bar", "baz"
filename = "index.html"
path2 breakdown:
root = "/"
dir = "foo", "bar", "stuff"
filename = "kappa.html" Now to generate the relative path...
path1.root == path2.root so remove the root from the list
path1.dir[0] == path2.dir[0] so remove that from the list
path1.dir[1 (really 0 now)] == path2.dir[1 (ditto)] so remove that from the list
path1.dir[2 (really 0 now)] != path2.dir[2 (ditto)] so we can begin to piece together the relative path.
For each directory left in path1 you need to go up one directory (..) then append each of the directories left in path2.
If by chance you have found that all of the directories match then you just need to specify the filename. I'll work up some code then post it as a reply to this msg
James
"It is self repeating, of unknown pattern"
Data - Star Trek: The Next Generation
|
|
|
|
|
OK, I've got the code written
It will probably cause scrolling here, but I've uploaded a text file to my webserver for copy/paste purposes.
http://www.takklesoft.com/GetRelativePath.cs.txt[^]
public string GetRelativePath(string path1, string path2)
{
return GetRelativePath(path1, path2, false, System.IO.Path.DirectorySeparatorChar);
}
public string GetRelativePath(string path1, string path2, bool enableWebChecking)
{
char seperator;
if( enableWebChecking )
seperator = '/';
else
seperator = System.IO.Path.DirectorySeparatorChar;
return GetRelativePath(path1, path2, enableWebChecking, seperator);
}
public string GetRelativePath(string path1, string path2, bool enableWebChecking, char dirSeperator)
{
System.Text.StringBuilder relativePath = new System.Text.StringBuilder();
System.Collections.Specialized.StringCollection path1Dirs;
System.Collections.Specialized.StringCollection path2Dirs;
path1Dirs = new System.Collections.Specialized.StringCollection();
path1Dirs.AddRange(path1.Split( new char [] { dirSeperator } ) );
path2Dirs = new System.Collections.Specialized.StringCollection();
path2Dirs.AddRange(path2.Split( new char [] { dirSeperator } ) );
string path1Root = "";
string path2Root = "";
if( !path1.StartsWith(dirSeperator.ToString()) )
{
path1Root = path1Dirs[0] + dirSeperator.ToString();
path1Dirs.RemoveAt(0);
}
if( !path2.StartsWith(dirSeperator.ToString()) )
{
path2Root = path2Dirs[0] + dirSeperator.ToString();
path2Dirs.RemoveAt(0);
}
if( enableWebChecking )
{
path1Root += path1Dirs[0] + dirSeperator.ToString();
path1Dirs.RemoveAt(0);
path1Root += path1Dirs[0] + dirSeperator.ToString();
path1Dirs.RemoveAt(0);
path2Root += path2Dirs[0] + dirSeperator.ToString();
path2Dirs.RemoveAt(0);
path2Root += path2Dirs[0] + dirSeperator.ToString();
path2Dirs.RemoveAt(0);
}
if( path1Root != path2Root )
return path2;
string filename = "";
path1Dirs.RemoveAt( path1Dirs.Count - 1 );
filename = path2Dirs[ path2Dirs.Count - 1 ];
path2Dirs.RemoveAt( path2Dirs.Count - 1 );
while(
path1Dirs.Count > 0 &&
path2Dirs.Count > 0 &&
path1Dirs[0] == path2Dirs[0] )
{
path1Dirs.RemoveAt(0);
path2Dirs.RemoveAt(0);
}
while( path1Dirs.Count > 0 )
{
relativePath.Append(".." + dirSeperator);
path1Dirs.RemoveAt( 0 );
}
while( path2Dirs.Count > 0 )
{
relativePath.Append(path2Dirs[0] + dirSeperator);
path2Dirs.RemoveAt( 0 );
}
relativePath.Append( filename );
return relativePath.ToString();
} Almost everything I threw at it came out correct so it should work fine for you. [edit]Added a web checking mode so that it properly works on fully qualified URLs (needing the http:// stuff) There is one problem though in that if you use a fully qualified URL on two different servers it won't work correctly (say http://www.foo.com/bar.html and http://www.bar.com/baz.html will return ../../www.bar.com/baz.html .[/edit]
I didn't want to go from fairly generic code to include specific cases so I left it alone, though a quick fix could be added (and I may work on that now )
An enhancement I can think of would be to be smart about creating the relative path. Like if the two absolute paths are /foo/blah/a.html and /b.html have it return /b.html rather than ../../b.html .
James
"It is self repeating, of unknown pattern"
Data - Star Trek: The Next Generation
|
|
|
|
|
Hi,
wow great, thank you
i check it out...
.:Greets from Jerry Maguire:.
|
|
|
|
|
hello everyone,
i have a question, can i convert a bitmap object or any image object to an array of bytes, in order to send it over a LAN ??!!!
if yes, plz tell me how to do it.
P.S. i need this piece of info urgently for my graduation project )
thanks a lot,
bye
|
|
|
|
|
The best way would be saving it directly on the network stream.
|
|
|
|
|