|
VB6 Tools? I am not familar with that product, Could you include a link. Googling it gives me ... lots of similar stuff.
You can only be young once. But you can always be immature.
- Dave Barry
|
|
|
|
|
I found that in Visual Studio 6 installation once i needed!
The issue is with registry entries, if you run VS6 installation and install only Tools from it, hopefully the problem will be solved.
Additionally, this might be helpful http://support.microsoft.com/kb/146219[^]
HTH.
Do rate the reply, if it helps or even if it doesnot, because it helps the members to know, what solved the issue. Thanks.
|
|
|
|
|
Alright, here is the solution. There is a licenes registry key missing. The most likely violates some eula somewhere. so use with caution. but adding this key will reactiviate the winsock.ocx
[HKEY_CLASSES_ROOT\Licenses\2c49f800-c2dd-11cf-9ad6-0080c7e7b78d]
@ = "mlrljgrlhltlngjlthrligklpkrhllglqlrk"
You can only be young once. But you can always be immature.
- Dave Barry
|
|
|
|
|
Hi
I'm trying to write a WM 5.0 console application which can send string data to a text box on a web page (Internet Explorer). Any suggestions on this?
|
|
|
|
|
I should mention this is a C# console application
|
|
|
|
|
I thought I would also mention that this sample code below for win32 c# does nothing. It runs but no message is displayed in the console. I'm using VS 2005. I find this example all over the net.
using System;
using System.Collections.Generic;
using System.Text;
using System.Runtime.InteropServices;
namespace ConsoleApplication1
{
class Program
{
[DllImport("msvcrt.dll")]
public static extern int puts(
[MarshalAs(UnmanagedType.LPStr)]
string m);
[DllImport("msvcrt.dll")]
internal static extern int _flushall();
public static void Main()
{
puts("Hello World!");
_flushall();
return;
}
}
}
|
|
|
|
|
For mentioning and re-mentioning, you can always use Edit link at bottom right of your post.
Do rate the reply, if it helps or even if it doesnot, because it helps the members to know, what solved the issue. Thanks.
|
|
|
|
|
The only way to send text to a web page, is to host that web page in your own windows application, so you can directly access and change the HTML of the page.
Christian Graus
Please read this if you don't understand the answer I've given you
"also I don't think "TranslateOneToTwoBillion OneHundredAndFortySevenMillion FourHundredAndEightyThreeThousand SixHundredAndFortySeven()" is a very good choice for a function name" - SpacixOne ( offering help to someone who really needed it ) ( spaces added for the benefit of people running at < 1280x1024 )
|
|
|
|
|
I dug in to some very old c code of mine for the solution. I didn't expect it to work but I'm not complaining. Here is the SIMPLE solution for anyone that is interested:
Add to your project:
using System.Runtime.InteropServices;
[DllImport("coredll.dll")]
static extern void keybd_event(byte bVk, byte bScan, uint dwFlags,
int dwExtraInfo);
Then add this function, please note many of the original C constants are not valid in C# but you can look them up and define them for WM 5.0 if you need them. My app only needed to worry about alphanumeric data, no special characters.
static void SendKeyStroke(int mevent)
{
//*******************************************************
//send character to screen by simulating a key press
//*******************************************************
int evt = 0;
byte keyCode = 0x00;
//SPECIAL KEYS *************
const int KEYEVENTF_EXTENDEDKEY = 0x1;
const int KEYEVENTF_KEYUP = 0x2;
const int VK_RETURN = 0x0D;
const int VK_SHIFT = 0x10;
const int VK_SPACE = 0x20;
//**************************
evt = mevent;
/*
//these codes are not defined
switch(mevent)
{
case 258: evt = VK_DOWN; break; //down arrow
case 259: evt = VK_LEFT; break; //left arrow
case 300: evt = VK_RETURN; break; //return key
case 301: evt = VK_UP; break; //up arrow
case 302: evt = VK_BACK; break; //back space key
case 10: evt = NULL; break; //do nothing
case 59: evt = VK_SEMICOLON; break; // ;
case 61: evt = VK_EQUAL; break; // =
case 44: evt = VK_COMMA; break; // ,
case 45: evt = VK_HYPHEN; break; // -
case 46: evt = VK_PERIOD; break; // .
case 47: evt = VK_SLASH; break; // /
case 91: evt = VK_LBRACKET; break; // [
case 92: evt = VK_BACKSLASH; break; // "\" char
case 93: evt = VK_RBRACKET; break; // ]
case 39: evt = VK_APOSTROPHE; break; // '
//shifted keys(same order as above)
case 58: evt = VK_SEMICOLON; keybd_event(VK_SHIFT, 0, 0, 0); break; //colon :
case 43: evt = VK_EQUAL; keybd_event(VK_SHIFT, 0, 0, 0); break;//plus +
case 60: evt = VK_COMMA; keybd_event(VK_SHIFT, 0, 0, 0); break;//***less than*** <<br mode="hold" /> case 95: evt = VK_HYPHEN; keybd_event(VK_SHIFT, 0, 0, 0); break;//underscore _
case 62: evt = VK_PERIOD; keybd_event(VK_SHIFT, 0, 0, 0); break;//greater than >
case 63: evt = VK_SLASH; keybd_event(VK_SHIFT, 0, 0, 0); break;//question ?
case 123: evt = VK_LBRACKET; keybd_event(VK_SHIFT, 0, 0, 0); break;//curly {
case 124: evt = VK_BACKSLASH; keybd_event(VK_SHIFT, 0, 0, 0); break;//or |
case 125: evt = VK_RBRACKET; keybd_event(VK_SHIFT, 0, 0, 0); break;//curly }
case 34: evt = VK_APOSTROPHE; keybd_event(VK_SHIFT, 0, 0, 0); break; //quote "
//shifted keys off the numbers
case 33: evt = 49; keybd_event(VK_SHIFT, 0, 0, 0); break;// 1 ! = 33
case 64: evt = 50; keybd_event(VK_SHIFT, 0, 0, 0); break;// 2 @ = 64
case 35: evt = 51; keybd_event(VK_SHIFT, 0, 0, 0); break;// 3 # = 35
case 36: evt = 52; keybd_event(VK_SHIFT, 0, 0, 0); break;// 4 $ = 36
case 37: evt = 53; keybd_event(VK_SHIFT, 0, 0, 0); break;// 5 % = 37
case 94: evt = 54; keybd_event(VK_SHIFT, 0, 0, 0); break;// 6 ^ = 94
case 38: evt = 55; keybd_event(VK_SHIFT, 0, 0, 0); break;// 7 & = 38
case 42: evt = 56; keybd_event(VK_SHIFT, 0, 0, 0); break;// 8 * = 42
case 40: evt = 57; keybd_event(VK_SHIFT, 0, 0, 0); break;// 9 ( = 40
case 41: evt = 48; keybd_event(VK_SHIFT, 0, 0, 0); break;// 0 ) = 41
default: break;
}
*/
////handle lowercase letters
if ((mevent > 96) && (mevent < 123))
{
//make sure the SHIFT key is not pressed or you will not be able to display numbers
keybd_event(VK_SHIFT, 0x45, KEYEVENTF_EXTENDEDKEY | KEYEVENTF_KEYUP, 0);
evt = mevent - 32;
}
else if ((mevent > 47) && (mevent < 58))
{
//numbers
//make sure the SHIFT key is not pressed or you will not be able to display numbers
keybd_event(VK_SHIFT, 0x45, KEYEVENTF_EXTENDEDKEY | KEYEVENTF_KEYUP, 0);
evt = mevent;
}
else if ((mevent > 64) && (mevent < 91))
{
////handle uppercase letters
keyCode = Convert.ToByte(evt);
keybd_event(VK_SHIFT, 0x45, KEYEVENTF_EXTENDEDKEY, 0);
evt = mevent;
}
keyCode = Convert.ToByte(evt);
//press
keybd_event(keyCode, 0x45, KEYEVENTF_EXTENDEDKEY, 0);
//release
keybd_event(keyCode, 0x45, KEYEVENTF_EXTENDEDKEY | KEYEVENTF_KEYUP, 0);
//make sure the SHIFT key is not pressed or you will not be able to display numbers
keybd_event(VK_SHIFT, 0x45, KEYEVENTF_EXTENDEDKEY | KEYEVENTF_KEYUP, 0);
}
|
|
|
|
|
I have two forms, Form1 and Form2. I am trying to pass struct data from Form1 to Form 2 and each time, I get these errors:
C:\WINXP\Profiles\Owner\My Documents\Visual Studio 2005\Projects\Object\Object\Form1.cs(29,25): error CS1502: The best overloaded method match for 'Object.Form2.Form2(Object.Form2.client)' has some invalid arguments
C:\WINXP\Profiles\Owner\My Documents\Visual Studio 2005\Projects\Object\Object\Form1.cs(29,35): error CS1503: Argument '1': cannot convert from 'Object.Form1.client' to 'Object.Form2.client'
My Form1.cs is:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
namespace Object
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
public struct client
{
public string ClientMatter;
public string ClientName;
}
private void button1_Click(object sender, EventArgs e)
{
client mary;
mary.ClientName = "mary";
Form2 frm = new Form2(mary);
frm.Show();
}
}
}
My Form2 code is:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
namespace Object
{
public partial class Form2 : Form
{
public struct client
{
public string ClientMatter;
public string ClientName;
}
public Form2(client mary)
{
InitializeComponent();
label1.Text = mary.ClientName;
}
private void Form2_Load(object sender, EventArgs e)
{
}
}
}
|
|
|
|
|
You have two different client types in different scopes. The two types are:
Object.Form1.client
Object.Form2.client
Basically, you have nested the definition of the struct inside the form class. The client struct definition should be placed outside the class.
Extract one client struct out from the form class and delete the other client struct definition.
|
|
|
|
|
You could add a constructor to Form2 that accepted the struct as a ref parameter...
"Why don't you tie a kerosene-soaked rag around your ankles so the ants won't climb up and eat your candy ass..." - Dale Earnhardt, 1997 ----- "...the staggering layers of obscenity in your statement make it a work of art on so many levels." - Jason Jystad, 10/26/2001
|
|
|
|
|
Hi All,
Can anyone send some links on creating well organised/factored reuseable classes. I've been looking through google but haven't found much as of yet.
Thanks,
Jammer
Going where everyone here has gone before!
My Blog
|
|
|
|
|
|
Isn't it just!
Thanks for this ... really good reading.
Jammer
Going where everyone here has gone before!
My Blog
|
|
|
|
|
experance really helps in this, and mark clifton a fellow cp'er has written some good articles on this.
You can only be young once. But you can always be immature.
- Dave Barry
|
|
|
|
|
Im trying to send a class full of variables to a DLL Method and then have that method do some calculations and then send the class back to the client. IS that possible? Im getting an error that the current argument cant be converted.
|
|
|
|
|
Yes this will work just fine, so long as the "class full of variables" is a class that's visible to both sides.
e.g. MyProgram - references MySharedDll
Creates new <code>ClassFullOfVariables</code>
Sends instance over to MyOtherDll
MySharedDll
Contains the type
<code> class ClassFullOfVariables { ... }</code>
MyOtherDll - referencesMySharedDll
Contains a method: <code>DoCalculations(ClassFullOfVariables input)</code>
|
|
|
|
|
Cozmo23 wrote: IS that possible?
Yes.
are you passing the object ? does dll file have the defination of that class?
can you put the code over here
Best Regards
-----------------
Abhijit Jana
"Success is Journey it's not a destination"
|
|
|
|
|
The class you're passing back and forth would have to be defined in another DLL, that your other DLL would then "use".
"Why don't you tie a kerosene-soaked rag around your ankles so the ants won't climb up and eat your candy ass..." - Dale Earnhardt, 1997 ----- "...the staggering layers of obscenity in your statement make it a work of art on so many levels." - Jason Jystad, 10/26/2001
|
|
|
|
|
What I have done so far is included the Class "PumpTest" (Class full of variables) in both the client and the DLL and attempted to use the code
"pTest = Calc.TableIIcalc(pTest); " to pass the PumpTest pTest to the DLL.
My DLL looke like this
public PumpTest TableIIcalc(PumpTest pTest)
{
calculations
return pTest;
}
I planned on making the PumpTest class its own DLL, would that solve the problem?
|
|
|
|
|
What makes you think this will not work?
You can only be young once. But you can always be immature.
- Dave Barry
|
|
|
|
|
Well I get two errors with the "pTest = Calc.TableIIcalc(pTest);" line of code
The first is a invalid arguments error, the second is Argument '1', cannont convert from 'Namespace.PumpTest' to 'Namespace2.PumpTest' they aren t actually called namespace but I cant post too much info about the program on the web. Namespace is the name of the client and namespace two is the name of the DLL.
|
|
|
|
|
Hello,
I'm stuck with the following issue:
let's say there is a DateTime 'timepoint', wich is passed in my method. I need to check now, whether timepoint's DayOfWeek is between 'fromDayOfWeek' and 'toDayOfWeek'.
that's what I've done so far:
protected override bool checkTimepoint(DateTime timepoint, DayOfWeek from, DayOfWeek to)
{
bool retValue;
retValue = timepoint.DayOfWeek >= from && timepoint.DayOfWeek <= to;
return retValue;
}
This will work for ranges like Monday-Friday, Thursday-Wednesday, Wednesday-Wednesday, but it will fail for something like Saturday-Sunday, since Sunday (0) is lower than Saturday(6).
Any idea on how to logically implement this issue?
Thanks in advance.
|
|
|
|
|
We solved a similar problem by using a mapping from DayOfWeek to integer that returned 7 instead of 0 for Sunday.
This way your code would work, too.
Not very nice but it works.
For .net the week start on Sunday
-^-^-^-^-^-^-^-
no risk no funk
|
|
|
|
|