|
Actually, it should be
Dim filePath As String
filePath = Path.Combine(Application.StartupPath, "help_files")
filePath = Path.Combine(filePath, "Potato_Traceability_User_Guide.pdf")
This is, of course, assuming that help_files is a subdirectory of the StartupPath. Use Debug.WriteLine statements to figure out what StartUp path is returning.
RageInTheMachine9532
"...a pungent, ghastly, stinky piece of cheese!" -- The Roaming Gnome
|
|
|
|
|
Hello!
Would you please give me a push to conver the following C dode to Visual basic. It is realted to WAB entry and thi sis the only sample I have found it so far so good but I do not have enough C programming knowledge. So I am seeking one expert to come over the hassle..
Thank You!
// main.h
#include <windows.h>
#include <crtdbg.h>
#include <iostream.h>
#include <wab.h>
typedef HRESULT (WINAPI *fWABOpen)(LPADRBOOK*,LPWABOBJECT*,LPWAB_PARAM,DWORD);
int main()
{
HRESULT hRes;
LPADRBOOK lpAdrBook;
LPWABOBJECT lpWABObject;
LPWAB_PARAM lpWABParam = NULL;
DWORD Reserved2 = NULL;
HINSTANCE hinstLib;
hinstLib = LoadLibrary("C:\\Program Files\\Common Files\\System\\wab32");
fWABOpen procWABOpen;
if (hinstLib != NULL)
{
procWABOpen = (fWABOpen) GetProcAddress(hinstLib, "WABOpen");
if (procWABOpen != NULL)
{
hRes = (procWABOpen)(&lpAdrBook,&lpWABObject,NULL,Reserved2);
_ASSERTE(hRes == S_OK);
if (hRes != S_OK) exit(1);
//lpWABObject->Find(lpAdrBook,NULL);
ULONG lpcbEntryID;
ENTRYID *lpEntryID;
hRes = lpAdrBook->GetPAB(
&lpcbEntryID,
&lpEntryID
);
_ASSERTE(hRes == S_OK);
if (hRes != S_OK) exit(2);
ULONG ulFlags = MAPI_BEST_ACCESS;
ULONG ulObjType = NULL;
LPUNKNOWN lpUnk = NULL;
hRes = lpAdrBook->OpenEntry(
lpcbEntryID,
lpEntryID,
NULL,
ulFlags,
&ulObjType,
&lpUnk
);
ulFlags = NULL;
//IABTable *lpTable;
if (ulObjType == MAPI_ABCONT)
{
IABContainer *lpContainer = static_cast <iabcontainer *="">(lpUnk);
LPMAPITABLE lpTable = NULL;
hRes = lpContainer->GetContentsTable(
ulFlags,
&lpTable
);
_ASSERT(lpTable);
ULONG ulRows;
hRes = lpTable->GetRowCount(0,&ulRows);
_ASSERTE(hRes == S_OK);
cout << "Rows " << ulRows << endl;
SRowSet *lpRows;
hRes = lpTable->QueryRows(
ulRows, // Get all Rows
0,
&lpRows
);
for(ULONG i=0;i<lprows->cRows;i++)
{
SRow *lpRow = &lpRows->aRow[i];
cout << i << " : " << lpRow->cValues << endl;
for(ULONG j=0;j<lprow->cValues;j++)
{
SPropValue *lpProp = &lpRow->lpProps[j];
cout << "\t" << j << " : " << (void*)lpProp->ulPropTag << " : ";
if (lpProp->ulPropTag == PR_DISPLAY_NAME_A)
cout << "Display Name: " << lpProp->Value.lpszA;
if (lpProp->ulPropTag == PR_EMAIL_ADDRESS_A)
cout << "Email Address: " << lpProp->Value.lpszA;
if (lpProp->ulPropTag == PR_NICKNAME_A)
cout << "Nickname: " << lpProp->Value.lpszA;
if (lpProp->ulPropTag == PR_ADDRTYPE_A)
cout << "Addrtype: " << lpProp->Value.lpszA;
cout << endl;
}
lpWABObject->FreeBuffer(lpRow);
}
lpWABObject->FreeBuffer(lpRows);
}
}
FreeLibrary(hinstLib);
}
return 0;
}
help is a mutual shared reality!
|
|
|
|
|
B Journey,
The code you have posted is only a "snippet" of the work you will
have to do, The mapi32 parts, and other parts of the code, are all missing, I am currently converting the full code in my spare time, the full C source code can be found here:
http://msdn.microsoft.com/archive/default.asp?url=/archive/en-us/samples/internet/messaging/wabtool/default.asp[^]
I'll be more than glad to share the code conversion work with you, but it's taking me awhile to do it, as I can only work on it in my spare time, and a piece at a time. This code as far as I can tell has not been converted by anyone yet, or at least I haven't ever found it, and I've looked everywhere I can think of.(Not to mention Difficult to convert)
If you like, contact me though my email link and I'll try to help with what I can.
Progload
|
|
|
|
|
Greetings All!
I have a newbie question here that I hope someone can help me with. My best friend google turned up no results for this question with a very simple answer im sure.
Currently I have a logon script i'm placing in my Active Directory to log times clocked in and time clocked out based on logins and logouts on the domain. the script I currently have is as follows.
Dim objNet<br />
On Error Resume Next <br />
<br />
Set objNet = CreateObject("WScript.NetWork") <br />
<br />
<br />
Dim strInfo<br />
strInfo = "User Name is " & objNet.UserName & vbCRLF & _<br />
"Computer Name is " & objNet.ComputerName & vbCRLF & _<br />
"Domain Name is " & objNet.UserDomain<br />
<br />
<br />
<br />
Dim TextFile<br />
Dim FSO <br />
Dim Current<br />
Set FSO = CreateObject("Scripting.FileSystemObject")<br />
Set TextFile = FSO.OpenTextFile("C:\Work\blahj.txt", 2, True)<br />
<br />
<br />
TextFile.Writeline strInfo<br />
<br />
Set TextFile = Nothing<br />
Set FSO = Nothing<br />
<br />
<br />
<br />
<br />
<br />
<br />
Set objNet = Nothing 'Destroy the Object to free the Memory
It works great, and eventually i will have it write to a sql database. But for now, my question is this
How do I call the date and time? Is there a function to do this?
I just need something that would look like this
dim strTime<br />
strTime = *function that calls time & date*
Anyone got the answer?
thanks!
"A child of five would understand this! Send someone to fetch a child of five!"-Groucho Marx
Hack. -n. "A clever solution to an interesting problem."
|
|
|
|
|
|
Hi,
I need to run the application in systemt tray (systray) .I need some guidance in the form of
some example. Also I need to display some messages in the systray. for example when we use
MSN Messenger and if somebody come online we see "Mr.xyz Logged in" .
I need it immediately. any help'll be appreciable.
Thanks
|
|
|
|
|
You would need to use the NotifyIcon to get your app to show in the system tray.
As far as the notification, just use a new form for a popup.
-Jason
|
|
|
|
|
Just try in google for NotifyIconXP written by Hans Blomme.
Mauricio
|
|
|
|
|
how can i access the Menu Item Name Property through code
|
|
|
|
|
If you have added a contextmenu on your form, you should be able to access to each menu item's property eg:
menuitem1.text = "Hello!"
|
|
|
|
|
I want to access Name Property my code is as:
<br />
Dim mnuItem As MenuItem <br />
For Each mnuItem In OfrmMain.mnu_Main.MenuItems<br />
If mnuItem.Name ="NameofMenu" Then<br />
'Do some thing<br />
End If<br />
Next<br />
Regards
|
|
|
|
|
Hello Javed! you have confused me! )
Your code is okay there is no error. If your are still not able to get the menu name that means you have to check your contextmenu name to make sure you are tryign to use the right menu collection. mnuItem.Name must return a value as you have defined in your code. If you have more than one menu collection make sure you have pointed to right collection. Otherwise, re-check the menu name which you have tried in seeking its equality to mnuItem.Name..
Take it easy!
|
|
|
|
|
My Friend
Problem is this that Menu Object dos't expose the "Name" Property....
Regards
|
|
|
|
|
Of course. There is no Name property for a MenuItem . If you can't set one, why would you be looking to read it? You can, however read its Text property.
Doing what you're looking at in your sample code is not good practice. Each menuitem should handle its own Click event.
RageInTheMachine9532
"...a pungent, ghastly, stinky piece of cheese!" -- The Roaming Gnome
|
|
|
|
|
Thanks for ur response.
Actually i want to implement user security. My working is as:
I will make Roles and Role will be given rights to access "MENU" and user will be assign the role.
Now i want to write a code which show all the menus in a grid i want to save the NAME of the MENU in a hidden column which will be saved in the database. Now i have decided to save the Menu Text in database which i know can cause problem becuase if menu text is changed it will have to be changed in database too. As menu item name is not changed so if it is saved it will cuase no problem...
hope u will have got my point if u have any better suggestion will be benificial for me.
Regards
Javed
|
|
|
|
|
as i execute following command to insert a record in VB 6.0
"Insert into login_master values('" & gen_log_id(cmbCompanyName.Text, cmbLoginName.Text) & "' , '" & cmbLoginName.Text & "','" & txtPassword.Text & "','" & cmbLoginLevel.Text & "','" & txtStatus.Text & "','" & cmbCompanyName.Text & "','Admin',GETDATE(),'admin',GETDATE())"
i get a message that "string or binary data would be truncated"
what that means?
|
|
|
|
|
the length of the field u r sending is greater than the length of the field in table e.g. if u send "ABCD" in field "fld varchar(3)" then this error will be shown. Incrase ur field size it will run fine.
Regards
Javed
|
|
|
|
|
Hi Guys! Im trying to use a dll in my Project in VB.NET. But the problem is that when i run the program in debug mode, i get an error saying that the source files of the dll are not present in the path where they were when the dll was created. How do i rectify this error. It asks me for the new path which i have to give everytime i debug my Program. Please tell me how i can change the source file path of the dll to the path where i have the source files. Thanx. Waiting for an Answer Soon. Bye!!
Devraj Raut!!!
|
|
|
|
|
You can't change the source path.
You're problem seems to be that your still developing the .DLL and, compiled it into a Debug version, and in the project you're using it in, you've set a reference to the .DLL file. You should be setting the reference to the .DLL PROJECT instead. Add the .DLL project to the same solution that your consumer project is in. In the consumer project, add a reference to the .DLL project. Now every time you compile the code, the .DLL project will get recompiled, if needed, and the soruce files used in debugging will be handled automatically.
RageInTheMachine9532
"...a pungent, ghastly, stinky piece of cheese!" -- The Roaming Gnome
|
|
|
|
|
Hi!! Im sorry to bother you like this but could u plz explain to me the steps in detail coz i need this .dll in my Project and im having trouble doing so. Plz reply back to me what are the steps to follow to avoid my problem. Thanx a Million man!! Take CAre! Cya! Waiting for ur Reply!!
Devraj Raut!!!
|
|
|
|
|
Right-click the Solution line in Solution Explorer and click Add Existing Project.
Find your .DLL project and click OK.
Right-click the References folder of your application, click Add Reference. Click on the Projects tab, then double click your .DLL project.
RageInTheMachine9532
"...a pungent, ghastly, stinky piece of cheese!" -- The Roaming Gnome
|
|
|
|
|
I have the following code....
Try
#### Routine here ####
Catch ex As Exception
If Err.Number = 13 Then
Resume Next
End If
#### others
End Try
For some reason it does not like Resume Next. Why is this the case?
Before I put in the Try/Catch I had a on Error.
|
|
|
|
|
This doesn't work because you trying to combine two different (and totally incompatible) error handling technologies. The ON ERROR GOTO , Err , and Resume... garbage is old stuff from VB6 and beyond. You can't combine it with the new Try/Catch blocks and expect it to work. I highly suggest abandoning the old stuff entirely and just use Try/Catch blocks.
Try
' Code here...
Catch ex As FileNotFoundException
' Code to handle File Not Found errors...
Finally
' Code to clean up the Try block code.
' This section runs no matter what happens
' in the Try and Catch blocks
End Try
RageInTheMachine9532
"...a pungent, ghastly, stinky piece of cheese!" -- The Roaming Gnome
|
|
|
|
|
Can Youh help
i want to create a project in VB6.0 using RemoteData. because my program is in a computer but the database "in ACCESS" is in another Computer connected to the web. if there is any example it will be very nice;);)
|
|
|
|
|
Dear friends
How can i save the Picture of a imagebox as a file. your quick response will be highly appreciated.
Thankx
Murtuza Patel
|
|
|
|