|
Has anyone used this successfully? I need to do something so simple it's pathetic, but I haven't figured out HOW... Here's what I want to do:
I'd like to have a webpage that loads my dll (it's in a cab and all that)... And it's being called like this:
<object classid="clsid:XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" codebase="XXXXXX.CAB">
<param name="text" value="Yo man!">
</object>
So here's the deal... All I want said application to do... Is to be able to get that text from the param tag!!! Any hints/code snippets in the right direction? I've been having a bugger of a time, and Microsoft's help pages are of NO help for a newb like me!
I know it's probably something easy, but I can't get it to work! Thanks in advance!
|
|
|
|
|
Hi,
I have a simple problem with virtual functions and dlls.
See the sample:
class Test
{
public:
Test() { }
~Test() { }
virtual long GetCountRows() { return 1; }
};
class TestA : public Test
{
public:
TestA() { }
~TestA() { }
virtual long GetCountRows() { return 2; }
};
int main(int argc, char* argv[])
{
TestA testa;
long x = testa.GetCountRows();
Test* ptest = &testa;
x = ptest->GetCountRows();
return 0;
}
If this code is in the same area (same source file or lib), it works correct, I get always 2 with GetCountRows().
But if the base class is in a dll, I have problems, because with the second call of GetCountRows() I'll get 1.
Can someone help me?
Thanks...
Achim Mueller
|
|
|
|
|
Which functions are you exporting from the Test class? Make sure you export Test's constructor to ensure the v-table is init-ed in the correct place (ie not the DLL)
|
|
|
|
|
In the dll I export the Test class like this...
class __declspec(dllexport) Test
{
public:
Test() { }
~Test() { }
virtual long GetCountRows() { return 1; }
};
Achim Mueller
|
|
|
|
|
How are you then going about importing this class into the other project? Is the code you provided for Test the actual code? I ask because here you have a inline and virtual method - by defination a virtual function can't be inline, it needs an entry in the v-table to work correctly - though compliers do tend to work with them, its worth a try removing it. If you are just directly including the Test header file into your other project, this may be causing you problems. Try declaring the class as you usually would, and splitting up the deifination. Ie in the .H
class __declspec(dllexport) Test
{
public:
Test();
~Test();
virtual long GetCountRows();
};
Then in the .CPP
Test::Test()
{
}
Test::~Test()
{
}
long Test::GetRowCount()
{
return 1;
}
|
|
|
|
|
Hi !
I just wanted to know how is represented an enum internally. Is it an int or a long ?
Thanks !
Jerome
|
|
|
|
|
In Microsoft 32-bit C++, an int and a long are the same size (32-bits). So the answer is "yes".
|
|
|
|
|
|
I got a problem here.
I need to link the microsoft excel to C++. The excel will act as a database for the coordinates..and i need to programme some commands for these coordinates like 3
|
|
|
|
|
I think that you need to use VBA. It's more easy and cames with excel....
Best Regards
Carlos Antollini
Do you know piFive[^] ?
|
|
|
|
|
Does it comes with windows 2000?
How do I operate/run it?
|
|
|
|
|
VBA is part of Office, independent of the OS. Check out MSDN for tons of examples.
A rich person is not the one who has the most, but the one that needs the least.
|
|
|
|
|
If you need add same funtions to excel, you need to use VBA, but if you want automate some function from external sources, may be you need to use OLE Automation, How David said... In that case you can use VC++ or VB.
Carlos Antollini
Do you know piFive[^] ?
|
|
|
|
|
If you need add same special funtions to excel, you need to use VBA, but if you want automate some function from external sources, may be you need to use OLE Automation, How David said... In that case you can use VC++ or VB.
Carlos Antollini
Do you know piFive[^] ?
|
|
|
|
|
It sounds like you need to use Excel (OLE) Automation. Check out MSDN article Q178749.
A rich person is not the one who has the most, but the one that needs the least.
|
|
|
|
|
Hi,
You can access all of Excels built in functionality by following these steps in an MFC app:
1) Open Class Wizard
2) Click 'Add Class' and select 'From Type Library'
3) Locate 'Excel9.olb' (will vary depending on which version of office u r using)
4) Select all the classes from the list and click ok.
you will now be able to do anything u want with Excel. For more information look at:
http://support.microsoft.com/default.aspx?scid=http://support.microsoft.com:80/support/kb/articles/q196/7/76.asp&NoWebContent=1&NoWebContent=1
hth
|
|
|
|
|
Hey guys, maybe an easy question...
i want to start my programm in maximized mode, how can i do this? i think it´s working with SIZE_MAXIMIZED but i don´t know where and how to use it.
Thanks in advance
Pascal Rexer
|
|
|
|
|
In the OnInitDialog() method, post a WM_SYSCOMMAND message with SC_MAXIMIZE in wParam .
Or you can call ShowWindow(SW_SHOWMAXIMIZED) .
A rich person is not the one who has the most, but the one that needs the least.
|
|
|
|
|
Thanks for help
|
|
|
|
|
Hi
I'm moving one of my programs from MSVC 6 to .NET 2003 and
now the librare is changed so that
basic_istream::get calls setstate(failbit) if no elements was extracted
Is there any clean way to go around this, for me a empty string is a normal case?
Regards
Per
|
|
|
|
|
Guys I got a question,
When you use the Ambersand sign "&" infront of a variable it means we are passing the address of that variable , right?
what happents when you have the "&" at the end of the variable .
Ex :
if I have a function header
exam(const K&, const V&);
what is the usgae of & in the above?
and what is the difference between this one
exam(const &K, const &V);
|
|
|
|
|
Sounds like a reference.
A rich person is not the one who has the most, but the one that needs the least.
|
|
|
|
|
Putting the ampersand in front of a variable returns the address in memory where the variable is stored.
You cannot put the ampersand into the end of a variable. That is not legit. If you want the create a reference object, you put the ampersand after the variable's type declaration.
An example:
int a = 10; // A is a an int-variable
int& b = a; // B is a reference to A: altering B alters A and vice versa.
b = 20; // This would set A to '20'.
The code pieces you posted (const K&) declare constant references to objects. It means that you cannot alter the contents of the object through the reference. Note that references cannot be re-assigned after declaration: when you create the variable, you state where it refers to.
An example:
int a = 10;
const int& b = a;
b = 20; // This would cause a compiler error C2166
Constant references are often used in function calls to let the function have access to the variable without a permission to modify it. This means that in the above example, you can use variable B to read variable A's contents, but you can't modify it.
-Antti Keskinen
----------------------------------------------
The definition of impossible is strictly dependant
on what we think is possible.
|
|
|
|
|
exam(const K&, const V&);
I beleive this is a syntax error and should not compile.
exam(const &K, const &V);
The 2 arguments are references not pointers and since no variable type was supplied, they default to interger references.
INTP
|
|
|
|
|
I have an C++ application in Visual Studio.net (2002). This application uses an external DLL (with templates) made by .net. However, I also wants to use my own old DLLs made by VC6. Then I get a linker error. I found out that this error id due to name mangling for exported template instantiations. No problems if I recompile my DLLs with .net. However these new DLLs does not work with my old applications using these DLLs. My question is if there is another solution than having two source codes identical DLLs, one compiled with VC6 and the other compiled with .net?
|
|
|
|