Update: UltraVNC 1.4.3.6 and UltraVNC SC 1.4.3.6: https://forum.uvnc.com/viewtopic.php?t=37885
Important: Please update to latest version before to create a reply, a topic or an issue: https://forum.uvnc.com/viewtopic.php?t=37864

Join us on social networks and share our announcements:
- Website: https://uvnc.com/
- GitHub: https://github.com/ultravnc
- Mastodon: https://mastodon.social/@ultravnc
- Facebook: https://www.facebook.com/ultravnc1
- X/Twitter: https://x.com/ultravnc1
- Reddit community: https://www.reddit.com/r/ultravnc
- OpenHub: https://openhub.net/p/ultravnc

compiling 10951

Louis
40
40
Posts: 64
Joined: 2008-09-13 20:43

compiling 10951

Post by Louis »

Rudi,

- I do not know if you should share your code, it is your property IMHO
(I personally would not do that I think)

- I would like to help you, but limmited to a bit of support

- I am using VS2010 with Visual Basic my self now and then. That makes thinks easier to understand for me.

- If you email me (only) the for this problem most relevant code part, I could write some remarks and questions in the code and mail it back. That would perhaps help (can not prommise of course).

Louis
Last edited by Louis on 2011-03-03 08:48, edited 1 time in total.
User avatar
Rudi De Vos
Admin & Developer
Admin & Developer
Posts: 6865
Joined: 2004-04-23 10:21
Contact:

Re: 1.0.9.5.1 update (beta)

Post by Rudi De Vos »

All source is public available ( GPL), so you can even run it in your VS2010 debugger if you installed c++ compilers with it.

I can mail you the latest src_zip and pinpoint you to the files of the
statuswindow (start/stop) and classes.
Louis
40
40
Posts: 64
Joined: 2008-09-13 20:43

Re: 1.0.9.5.1 update (beta)

Post by Louis »

Rudi,

If the source is public, mail me the latest beta source together with a few hints.

Also perhaps settings needed in VS.

I will try. I never worked with C (IMHO VB is much better to read, and I migrated from VBA), but that is not a major problem.

I hope I can just start VS seeing what happens :>


Louis
timo
8
8
Posts: 20
Joined: 2008-10-08 13:29
Location: Finland

Re: 1.0.9.5.1 update (beta)

Post by timo »

Tested W2K build of version P,
works as expected.
Might even be a bit faster than version L (which was the previous one with a W2K build)
UltraVnc Win32 Server 1.0.9.5 on W2K Prof, XP Home 32-bit and W7 Home Premium 32-bit
UltraVnc Win32 Viewer 1.0.9.5 on W7 Home Premium 64-bit
Louis
40
40
Posts: 64
Joined: 2008-09-13 20:43

Re: 1.0.9.5.1 update (beta)

Post by Louis »

Rudi,

I just installed VS2010 C++ express and downloaded the " ultravnc-UltraVNC.tar.gz", which definitly does not contain latest changes.

So I only did that in order to see how the code looks / if it works.

So I unpacked the TAR to"^S:\UltraVNC^
- opend S:\UltraVNC\vncviewer\vncviewer.sln which I expect to be the code file

- when I set the debuger to 32 bit and execute build it fails due to fatal error C1083: Cannot open include file: 'd3dx9.h': No such file or directory

- when I use the configuration manager to set it to x64
1>------ Skipped Rebuild All: Project: zip32 ------
1>
2>------ Skipped Rebuild All: Project: unz32lib ------
2>
3>------ Skipped Rebuild All: Project: libjpeg ------
3>
4>------ Skipped Rebuild All: Project: rdr ------
4>
5>------ Skipped Rebuild All: Project: omnithread ------
5>
6>------ Skipped Rebuild All: Project: zlibstat ------
6>
7>------ Skipped Rebuild All: Project: vncviewer ------
7>
========== Rebuild All: 0 succeeded, 0 failed, 7 skipped ==========

even if I would manage to build the (64bit) project, I do not know how to start the debugging. How to get the main window
- also not knowing what the main programm is


- when trying it another way by starting vncviewer.vcxproj the result was the same

- when trying vncviewer.vcproj the code has to be converted (I did not:))

- in general the code tree seems to contain file versions for studio 5,6,7,8 etc, etc . So way more complex then needed ..........

- I would only like to see the latest sources .......

- I am not willing to work with any studio version other then VS2010 express, which should not be a problem (I think)


Louis
User avatar
Rudi De Vos
Admin & Developer
Admin & Developer
Posts: 6865
Joined: 2004-04-23 10:21
Contact:

Re: 1.0.9.5.1 update (beta)

Post by Rudi De Vos »

The viewer use directx, so the directx sdk need to be installed.
('d3dx9.h')

I never used the express version...because it miss the gui and all
debug and profiler stuff.

To build you use indeed the vncviewer.sln (VS2010) version.
You can't use the vncviewer.vcxproj, this is the viewer but without the
required libs. (vncviewer.vcproj is 2008 version)

Code compile with VS2008 and 2010 ( different sln) files.
The older VS is needed because microsoft dropped all support for
pre XP versions in VS2010. An exe compiled with VS2010 doesn't run
on w2K, you need to recompile it with VS2008 to make a w2K working version.
Last edited by Rudi De Vos on 2011-02-27 19:36, edited 1 time in total.
Louis
40
40
Posts: 64
Joined: 2008-09-13 20:43

Re: 1.0.9.5.1 update (beta)

Post by Louis »

Rudi,

- can you mail me an up to date code tarbal rar / zip whatever ?
- please also give some hints on how to start (compile and debug run 64 bit version).


I will download and install dx9 sdk


Louis
Louis
40
40
Posts: 64
Joined: 2008-09-13 20:43

Re: 1.0.9.5.1 update (beta)

Post by Louis »

Rudi,

I am looking for directx 9 sdk.
Could I also use directx 11 sdk?


Louis
User avatar
Rudi De Vos
Admin & Developer
Admin & Developer
Posts: 6865
Joined: 2004-04-23 10:21
Contact:

Re: 1.0.9.5.1 update (beta)

Post by Rudi De Vos »

The latest directx sdk is OK.

I just uploaded all file changes to sf svn
( 10951P + dns fix)

On the bottom of the page you have the tarbal ( tar.gz)
http://ultravnc.svn.sourceforge.net/vie ... /?view=tar

I start the debugging by clicking the arrow (debug), sorry, don't know how it works in the express version.

Connection is made

Code: Select all

void ClientConnection::DoConnection()
{
	havetobekilled=true;
	// Connect if we're not already connected
	if (m_sock == INVALID_SOCKET) 
		if (strcmp(m_proxyhost,"") !=NULL && m_fUseProxy) 
			ConnectProxy();
		else
			Connect(); [color=red]<<<<<<<<Connect Called[/color]

	SetSocketOptions();

	SetDSMPluginStuff(); // The Plugin is now activated BEFORE the protocol negociation 
						 // so ALL the communication data travel through the DSMPlugin

	if (strcmp(m_proxyhost,"")!=NULL && m_fUseProxy)
		NegotiateProxy();

	NegotiateProtocolVersion(); [color=red] <<<<< Function called because log show rfb version[/color]
	std::vector<CARD32> current_auth;
	Authenticate(current_auth);

//	if (flash) {flash->Killflash();}
	SendClientInit();

	ReadServerInit();

	CreateLocalFramebuffer();

	SetupPixelFormat();

    SetFormatAndEncodings();

	reconnectcounter=m_reconnectcounter;
	
	havetobekilled=false;;
}

Code: Select all

void ClientConnection::Connect()
{
	struct sockaddr_in thataddr;
	int res;
	if (!m_opts.m_NoStatus) GTGBS_ShowConnectWindow(); [color=red]<<<<<< SHOW STATUS WINDOW[/color]	
                if (m_sock!=NULL && m_sock!=INVALID_SOCKET) closesocket(m_sock);
	m_sock = socket(PF_INET, SOCK_STREAM, 0);
	if (m_hwndStatus) SetDlgItemText(m_hwndStatus,IDC_STATUS,sz_L43);
	if (m_sock == INVALID_SOCKET) {if (m_hwndStatus)SetDlgItemText(m_hwndStatus,IDC_STATUS,sz_L44);throw WarningException(sz_L44);}
	int one = 1;

	if (m_hwndStatus) SetDlgItemText(m_hwndStatus,IDC_STATUS,sz_L45);
	if (m_hwndStatus) UpdateWindow(m_hwndStatus);

	// The host may be specified as a dotted address "a.b.c.d"
	// Try that first
	thataddr.sin_addr.s_addr = inet_addr(m_host);

	// If it wasn't one of those, do gethostbyname
	if (thataddr.sin_addr.s_addr == INADDR_NONE) {
		LPHOSTENT lphost;
		lphost = gethostbyname(m_host);
		
		if (lphost == NULL) 
		{ 
			//if(myDialog!=0)DestroyWindow(myDialog);
			SetEvent(KillEvent);
			if (m_hwndStatus) SetDlgItemText(m_hwndStatus,IDC_STATUS,sz_L46);
			throw WarningException(sz_L46,IDS_L46); 
		};
		thataddr.sin_addr.s_addr = ((LPIN_ADDR) lphost->h_addr)->s_addr;
	};
	
	if (m_hwndStatus)SetDlgItemText(m_hwndStatus,IDC_STATUS,sz_L47);
	if (m_hwndStatus)ShowWindow(m_hwndStatus,SW_SHOW);
	if (m_hwndStatus)UpdateWindow(m_hwndStatus);
	if (m_hwndStatus)SetDlgItemInt(m_hwndStatus,IDC_PORT,m_port,FALSE);
	thataddr.sin_family = AF_INET;
	thataddr.sin_port = htons(m_port);
	///Force break after timeout
	DWORD				  threadID;
	ThreadSocketTimeout = CreateThread(NULL,0,SocketTimeout,(LPVOID)&m_sock,0,&threadID);	
	res = connect(m_sock, (LPSOCKADDR) &thataddr, sizeof(thataddr));
	
	if (res == SOCKET_ERROR) 
		{
			int a=WSAGetLastError();
			vnclog.Print(0, _T("socket error %i\n"),a);
			if(a==6) 
				Sleep(5000);
			if (m_hwndStatus)SetDlgItemText(m_hwndStatus,IDC_STATUS,sz_L48);
			SetEvent(KillEvent);
			if (!Pressed_Cancel) throw WarningException(sz_L48,IDS_L48);
			else throw QuietException(sz_L48);
		}
	vnclog.Print(0, _T("Connected to %s port %d\n"), m_host, m_port);
	if (m_hwndStatus)SetDlgItemText(m_hwndStatus,IDC_STATUS,sz_L49);
	if (m_hwndStatus)SetDlgItemText(m_hwndStatus,IDC_VNCSERVER,m_host);
	if (m_hwndStatus)ShowWindow(m_hwndStatus,SW_SHOW);
	if (m_hwndStatus)UpdateWindow(m_hwndStatus);
}
Status window start athread

Code: Select all

HWND ClientConnection::GTGBS_ShowConnectWindow()
{
	DWORD				  threadID;
	m_statusThread = CreateThread(NULL,0,(LPTHREAD_START_ROUTINE )ClientConnection::GTGBS_ShowStatusWindow,(LPVOID)this,0,&threadID);
	if (m_statusThread) ResumeThread(m_statusThread);
	return (HWND)0;
}
DialogBox is opened ( statuswindow)

Code: Select all

LRESULT CALLBACK ClientConnection::GTGBS_ShowStatusWindow(LPVOID lpParameter)
{
	ClientConnection *_this = (ClientConnection*)lpParameter;

	 _this->m_fStatusOpen = true;
	DialogBoxParam(_this->m_pApp->m_instance,MAKEINTRESOURCE(IDD_STATUS),NULL,(DLGPROC)ClientConnection::GTGBS_StatusProc,(LPARAM)_this);
	// _this->m_fStatusOpen = false;
	return 0;
}
The statuswindow Proc function

Code: Select all

LRESULT CALLBACK ClientConnection::GTGBS_StatusProc(HWND hwnd, UINT iMsg, WPARAM wParam, LPARAM lParam)
{

    ClientConnection* _this = helper::SafeGetWindowUserData<ClientConnection>(hwnd);
	
	switch (iMsg)
	{
	case WM_INITDIALOG:
		{
			// sf@2002 - Make the window always on top
			RECT Rect;
			GetWindowRect(hwnd, &Rect);
			SetWindowPos(hwnd, 
				HWND_TOPMOST,
				Rect.left,
				Rect.top,
				Rect.right - Rect.left,
				Rect.bottom - Rect.top,
				SWP_SHOWWINDOW);
			
			char wt[MAX_PATH];
			ClientConnection *_this = (ClientConnection *)lParam;
            helper::SafeSetWindowUserData(hwnd, lParam);

			SetDlgItemInt(hwnd,IDC_RECEIVED,_this->m_BytesRead,false);
			SetDlgItemInt(hwnd,IDC_SEND,_this->m_BytesSend,false);
			
			if (_this->m_host != NULL) {
				SetDlgItemText(hwnd,IDC_VNCSERVER,_this->m_host);
				sprintf(wt,"%s %s",sz_L72,_this->m_host);
				SetWindowText(hwnd,wt);
			} else {
				SetDlgItemText(hwnd,IDC_VNCSERVER,_T(""));
				SetWindowText(hwnd,sz_L73);
			}
			
			if(_this->m_port != NULL)
				SetDlgItemInt(hwnd,IDC_PORT,_this->m_port,FALSE);
			else
				SetDlgItemText(hwnd,IDC_PORT,_T(""));
			
			if(_this->m_sock != NULL )
			{
				if (_this->m_pDSMPlugin->IsEnabled())
				{
					char szMess[255];
					memset(szMess, 0, 255);
					sprintf(szMess, "%s (%s-v%s)",
							sz_L49,
							_this->m_pDSMPlugin->GetPluginName(),
							_this->m_pDSMPlugin->GetPluginVersion()
							);
					SetDlgItemText(hwnd,IDC_STATUS, szMess);

					//adzm 2010-05-10
					if (_this->m_pIntegratedPluginInterface) {
						SetDlgItemText(hwnd,IDC_PLUGIN_STATUS,_this->m_pIntegratedPluginInterface->DescribeCurrentSettings());
					} else if (_this->m_pPluginInterface) {
						SetDlgItemText(hwnd,IDC_PLUGIN_STATUS,"(plugin default encryption)");
					} else {
						SetDlgItemText(hwnd,IDC_PLUGIN_STATUS,"(no encryption)");
					}
				}
				else
					SetDlgItemText(hwnd,IDC_STATUS,sz_L49);
				
			}
			else
			{
				SetDlgItemText(hwnd,IDC_STATUS,sz_L74);
			}
			
			//CentreWindow(hwnd);
			ShowWindow(hwnd,SW_SHOW);
			[color=red]_this->m_hwndStatus = hwnd;[/color]
			if (_this->m_running) {
				//Normaler status
				ShowWindow(GetDlgItem(hwnd,IDQUIT),SW_HIDE);
				ShowWindow(GetDlgItem(hwnd,IDCLOSE),SW_SHOW);
				// sf@2002
				if (!_this->m_nStatusTimer)
					_this->m_nStatusTimer = SetTimer( hwnd, 3333, 1000, NULL);
				
			} else {
				//Verbindungsaufbau status
				ShowWindow(GetDlgItem(hwnd,IDQUIT),SW_SHOW);
				ShowWindow(GetDlgItem(hwnd,IDCLOSE),SW_HIDE);
				SetDlgItemText(hwnd,IDC_STATUS,sz_L43);
				HMENU hMenu = GetSystemMenu(hwnd,0);
				EnableMenuItem(hMenu,SC_CLOSE,MF_BYCOMMAND | MF_GRAYED);
			}
			
			return TRUE;
		}
	case WM_CLOSE:
		{
			EndDialog(hwnd, TRUE);
			return TRUE;
		}
	case WM_COMMAND:
		{
			if (LOWORD(wParam) == IDCLOSE) {
				EndDialog(hwnd, TRUE);
			}
			if (LOWORD(wParam) == IDQUIT) {
				forcedexit=true;
				_this->Pressed_Cancel=true;
				EndDialog(hwnd, TRUE);
			}

			/*if (LOWORD(wParam) == IDQUIT) {
				PostQuitMessage(0);
				ClientConnection *_this = (ClientConnection *) GetWindowLong(hwnd, GWL_USERDATA);
				_this->KillThread();
				
				//EndDialog(hwnd, TRUE);
			}*/
			return TRUE;
		} 
		
		// sf@2002 - Every timer tic, we update the status values (speed, Sent, received, Encoder)
	case WM_TIMER:
		{
			_this->UpdateStatusFields();
			return TRUE;
		}
		
	case WM_DESTROY:
		{
			// sf@2002 - Destroy the status timer... TODO: improve this
			if (_this->m_nStatusTimer != 0) 
			{
				KillTimer(hwnd, _this->m_nStatusTimer);			
				_this->m_nStatusTimer = 0;
			}
			_this->OldEncodingStatusWindow = -1;
			_this->m_fStatusOpen = false;
			return TRUE;
		}
	}
	return FALSE;
}
Important for clsoing is the
_this->m_hwndStatus = hwnd;
ClientConnection use the m_hwndStatus for sending the close.

Code: Select all

ClientConnection::~ClientConnection()
{
	if (m_hwndStatus)
		EndDialog(m_hwndStatus,0);  [color=red]<<<<<< Close StatusWindow[/color]	
                Sleep(500);
	if (m_pNetRectBuf != NULL)
		delete [] m_pNetRectBuf;
	LowLevelHook::Release();

	// Modif sf@2002 - FileTransfer
	if (m_pFileTransfer) 
		delete(m_pFileTransfer);

.....
	if (directx_used) 
		{
			directx_used=false;
			directx_output.DestroyD3D();
		}

	if (m_hmemdc != NULL) {DeleteDC(m_hmemdc);m_hmemdc = NULL;m_DIBbits=NULL;}
	if (m_membitmap != NULL) {DeleteObject(m_membitmap);m_membitmap = NULL;}
//	if (flash) delete flash;
	m_pApp->DeregisterConnection(this);  [color=red]<<< Called is in log file[/color]
......
Last edited by Rudi De Vos on 2011-02-27 20:51, edited 3 times in total.
Louis
40
40
Posts: 64
Joined: 2008-09-13 20:43

Re: 1.0.9.5.1 update (beta)

Post by Louis »

Rudi,

Thanks for the code tarbal and the explanation.

I installed
- the code
- VS2010 C++
- DX111 SDK which I notices also include the DX9 .h files

I just opend vncviewer.vcxproj and tried for a start to compile the 32 bit version.

It does not jet work
7>s:\ultravnc\vncviewer\./directx/directxviewer.h(5): fatal error C1083: Cannot open include file: 'd3dx9.h': No such file or directory

It seems to mis the reference, I do not know how to fix that.
However it is strance that the compiler is not complaining about
#include <d3d9.h> <--- OK !!!???
#include <d3dx9.h> <---- NOT OK !!!???

When setting the configuration manager to x64 it skips every thing, just like before. I should probably do that in another way :>


Louis
Louis
40
40
Posts: 64
Joined: 2008-09-13 20:43

Re: 1.0.9.5.1 update (beta)

Post by Louis »

Rudi,

the d3d9.h is in C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Include

where the other d3dx9.h is only in C:\Program Files (x86)\Microsoft DirectX SDK (June 2010)\Include

Still do not know how to correct this missing reference.


Louis
User avatar
Rudi De Vos
Admin & Developer
Admin & Developer
Posts: 6865
Joined: 2004-04-23 10:21
Contact:

Re: 1.0.9.5.1 update (beta)

Post by Rudi De Vos »

For X64 i add
include path
C:\Program Files (x86)\Microsoft DirectX SDK (June 2010)\Include
libs path
C:\Program Files (x86)\Microsoft DirectX SDK (June 2010)\Lib\x64

C:\Program Files (x86)\Microsoft DirectX SDK (June 2010)\Include
contain
d3dx9.h and d3d9.h
redge
1000
1000
Posts: 6797
Joined: 2004-07-03 17:05
Location: Switzerland - Geneva

Re: 1.0.9.5.1 update (beta)

Post by redge »

Redge, if time can you also check this on your " special Vista pc"
I only tested it on 100MB and WIfi between a imac(vista) and my
Win7 i7... ON i7 winvnc cpu is 5% even when i display a video.
Tight compression give the most updates for video, Hextile is limited
by the 100MB network.
finally had few time to test over wired 100Mb/s -- wired 100Mb/s

version O
zrle or tight 25-50% cpu usage just watching taskmanager - performance
hextile 20-60% cpu usage just watching taskmanager - performance

version P
zrle or tight 18-35% cpu usage just watching taskmanager - performance
hextile 18-35% cpu usage just watching taskmanager - performance

the strange think with hextile... during 1min exactly every cycle before screen saver CPU goes high CPU step by step from 40... 45..50...55..60..65..70..75...80...then go back to 35% as soon i see screen saver start/stop
Last edited by redge on 2011-02-28 14:37, edited 2 times in total.
UltraVNC 1.0.9.6.1 (built 20110518)
OS Win: xp home + vista business + 7 home
only experienced user, not developer
Louis
40
40
Posts: 64
Joined: 2008-09-13 20:43

Re: 1.0.9.5.1 update (beta)

Post by Louis »

Rudi,

Related to the missing DX9 references, you misunderstood my quistion.

My main problem was not which file / dir to add to the projects build reference list. But how to do that .....

I have been surching for at leas an hour now, looking in every menu etc but I simply can not find the window where I can add an extra reference pad .....

Could you give me a hint :>


Louis
User avatar
Rudi De Vos
Admin & Developer
Admin & Developer
Posts: 6865
Joined: 2004-04-23 10:21
Contact:

Re: 1.0.9.5.1 update (beta)

Post by Rudi De Vos »

I know how to add it with visual studio... but in the express version.

Do you have virtualpc installed on this pc? And do you get the same issue
when you connect from the virtualpc.

Else it would be a lot simpler to provide a virtual image with compiler and sdk installed and just run the debugger in virtualpc.

(natural you need to remove it later, as it contain my lic codes...)
Louis
40
40
Posts: 64
Joined: 2008-09-13 20:43

Re: 1.0.9.5.1 update (beta)

Post by Louis »

Rudi,

I assume adding a reference in studio2010 and 2010 express is exactly the same.

So, how does it work in visual studio??


Other question, assume I can compile it, and assume I would like to use my regular preferences and my regular encryption key,

What to to to use them in the debugger envirement ??


Louis
User avatar
Rudi De Vos
Admin & Developer
Admin & Developer
Posts: 6865
Joined: 2004-04-23 10:21
Contact:

Re: 1.0.9.5.1 update (beta)

Post by Rudi De Vos »

right click project
properties->Configuration properties->VC++ Directries

After you compile the debug version, the exe is in debug folder
Just copy the ecnryption plugin to that folder.
Settings from vncviewer are used for all viewers, independed the location.
Louis
40
40
Posts: 64
Joined: 2008-09-13 20:43

Re: 1.0.9.5.1 update (beta)

Post by Louis »

Rudi,

Thanks. I might have a problem :>

the described VC++ Directory option ....... is not there ......
So, I could be surching for ever ........
Microsoft probably did need to find a way to differ between the versions .....

I think there might be a few work arrounds:
- copy and paste the .h file to my own dir
- copy and paste the .h file to the windows sdk
- you make the change, I do nothing :>
- perhaps there is a decent workarround I do not yet know :>

nasty any way.

Louis
User avatar
Rudi De Vos
Admin & Developer
Admin & Developer
Posts: 6865
Joined: 2004-04-23 10:21
Contact:

Re: 1.0.9.5.1 update (beta)

Post by Rudi De Vos »

I have a VPC image
win7(w32) + VS2010 + directx sdk+ nasm+ ultravnc source
(4.5GB)

If you remove it after, you can use it for testing
Last edited by Rudi De Vos on 2011-02-28 23:23, edited 3 times in total.
Louis
40
40
Posts: 64
Joined: 2008-09-13 20:43

Re: 1.0.9.5.1 update (beta)

Post by Louis »

Rudi,

I am not sure if we should use the VPC option. I choose another way.

- I installed the trail version of studio profesional
- and found the path options I was missing
- I found it under project => leftkey => vncviewer properties => configuration properties vc++ directorys => add line
- I did add library:
- C:\Program Files (x86)\Microsoft DirectX SDK (June 2010)\Lib\x86
- C:\Program Files (x86)\Microsoft DirectX SDK (June 2010)\Lib\x64
- I did add include
- C:\Program Files (x86)\Microsoft DirectX SDK (June 2010)\Include
Added lines at the end where it is perhaps better to have them earlear in the path (all dx files from dx dir :>)

When starting the project there is a complain
S:\UltraVNC\zlib-1.2.5\contrib\vstudio\vc10\zlibstat.vcxproj : warning : Platform 'Itanium' referenced in the project file 'zlibstat' cannot be found. Please make sure you have it installed under '%VCTargetsPath%\Platforms\Itanium'.


Trying to build looks different from before still having errors:
- x64
1>ClientConnection.cpp(72): fatal error C1083: Cannot open include file: 'display.h': No such file or directory

- x32
1>vncviewer.cpp(29): fatal error C1083: Cannot open include file: 'display.h': No such file or directory
1> display.cpp
1>c1xx : fatal error C1083: Cannot open source file: 'display.cpp': No such file or directory


So some progress but no executables jet :>


Louis
User avatar
Rudi De Vos
Admin & Developer
Admin & Developer
Posts: 6865
Joined: 2004-04-23 10:21
Contact:

Re: 1.0.9.5.1 update (beta)

Post by Rudi De Vos »

my mistake...
Updates files svn, but also need to import new files.
display.cpp and display.h where added in 10951.

Will check it this evening.
redge
1000
1000
Posts: 6797
Joined: 2004-07-03 17:05
Location: Switzerland - Geneva

Re: 1.0.9.5.1 update (beta)

Post by redge »

version dnstest
8, 4, dark colors broken and black and white whatever encoding zrle or tight
vncviewer deleted saved settings and retry test unsuccessful.
Last edited by redge on 2011-03-02 00:01, edited 1 time in total.
UltraVNC 1.0.9.6.1 (built 20110518)
OS Win: xp home + vista business + 7 home
only experienced user, not developer
User avatar
Rudi De Vos
Admin & Developer
Admin & Developer
Posts: 6865
Joined: 2004-04-23 10:21
Contact:

Re: 1.0.9.5.1 update (beta)

Post by Rudi De Vos »

Can't repeat broken colors..

Please test with and without directx, there is a know issue with tight and
directx, some colors get inverted.
Louis
40
40
Posts: 64
Joined: 2008-09-13 20:43

Re: 1.0.9.5.1 update (beta)

Post by Louis »

Rudi,

The builds are sucessfull now.
Will try to test this evening.


Louis
Louis
40
40
Posts: 64
Joined: 2008-09-13 20:43

Re: 1.0.9.5.1 update (beta)

Post by Louis »

Rudi,

I decided to check if I can compile the server as well.

The answer is not jet. When trying to compile winvnc.sln (I assume that is the server) the following errors:

LNK1181: cannot open input file 'S:\UltraVNC\winvnc\Debug\libjpeg-turbo-win.lib'

--------- 32 bit ------------

2> nasm -fwin32 -DWIN32 -DMSVC -Iwin/ -Isimd/ -o "S:\UltraVNC\winvnc\Debug\jdmerss2.obj" "simd/jdmerss2.asm"
4>InitializeBuildStatus:
4> Creating "Debug\unz32lib.unsuccessfulbuild" because "AlwaysCreate" was specified.

2> nasm wordt niet herkend als een interne
2> of externe opdracht, programma of batchbestand.


2> of externe opdracht, programma of batchbestand.
2>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppCommon.targets(151,5): error MSB6006: "cmd.exe" exited with code 9009.
2>
2>Build FAILED.


10>LINK : warning LNK4075: ignoring '/INCREMENTAL' due to '/PROFILE' specification
10>Clipboard.obj : warning LNK4075: ignoring '/EDITANDCONTINUE' due to '/OPT:REF' specification
10>LINK : fatal error LNK1181: cannot open input file 'S:\UltraVNC\winvnc\Debug\libjpeg-turbo-win.lib'
10>
10>Build FAILED.

----------- 64 bit --------------

2> of externe opdracht, programma of batchbestand.
2> nasm -fwin64 -DWIN64 -DMSVC -D__x86_64__ -Iwin/ -Isimd/ -o "S:\UltraVNC\winvnc\x64\Debug\jiss2red-64.obj" "simd/jiss2red-64.asm"
2> nasm wordt niet herkend als een interne
2> of externe opdracht, programma of batchbestand.
2>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppCommon.targets(151,5): error MSB6006: "cmd.exe" exited with code 9009.
2>
2>Build FAILED.

10> d3des.c
10> Generating Code...
10>PreLinkEvent:
10> buildtime.cpp
10>LINK : warning LNK4075: ignoring '/INCREMENTAL' due to '/PROFILE' specification
10>LINK : fatal error LNK1181: cannot open input file 'S:\UltraVNC\winvnc\x64\Debug\libjpeg-turbo-win.lib'
10>
10>Build FAILED.


So a limmited nummer of errors, but ..... no executables :>


Louis
Louis
40
40
Posts: 64
Joined: 2008-09-13 20:43

Re: 1.0.9.5.1 update (beta)

Post by Louis »

Rudi,

I just started the x64 debug version.

- the autentication window seems to open every start !???
- but .... I get error messages after entering the PW
- after the autentication window / pw: in the viewer message box: "insufficent memory to allocate network buffer
- even before the autentication window: "you have specified an encryption plugin, however this connection is unencrypted! Do you want to continue? (could be related to an earlier try)
- There was a third type of error es well, I do not remeber what it was, and can not reproduce it now

Will do some futher testing.

Advice and corrections welcome :>


Louis
Louis
40
40
Posts: 64
Joined: 2008-09-13 20:43

Re: 1.0.9.5.1 update (beta)

Post by Louis »

Rudi,

The tests I did were done by just clicking on the executable.

The normal way of debugging is of course to set the cursor on the start point of the main routine and push start debug.

Or that is the way I did it in the past with .net. I did create a window with a button on it, which pops up at start debug. Pusching the buton leads to the begin of the subroutine where the real debugging needed to start.

Do not jet know how to do that here (c++ development envirement is 80% like VB but there is a difference)

However assuming that every thing is prepaired, I just pushed "F5"

Debugging did not start. I state of that I gore a window UltraVNC\libjpeg\x64\Debug\libjeg.lob ==> The specified file is an unrecognised or unsupported binary format ......


Louis
User avatar
Rudi De Vos
Admin & Developer
Admin & Developer
Posts: 6865
Joined: 2004-04-23 10:21
Contact:

Re: 1.0.9.5.1 update (beta)

Post by Rudi De Vos »

nasm assembler compiler is needed for jpeg .
(winvnc)

"insufficent memory to allocate network buffer " : server has encryption on, viewer not

To dbug i usual press the the gui green run arrow, then when some error happen it stop at the correct location and you can viewer the vars.

Louis, heb je soms een nederlandstalig OS installed ?
HA bijkbaar ben je van Nederland, dan kunnen we evengoed Vlaams spreken.
Last edited by Rudi De Vos on 2011-03-02 20:23, edited 2 times in total.
Louis
40
40
Posts: 64
Joined: 2008-09-13 20:43

Re: 1.0.9.5.1 update (beta)

Post by Louis »

Rudi,

Ik ben gewoon nederlander. Jij ook (of vlaming) vermoede ik al lang. Maar gezien het feit dat het form in het engels is :)

Morgen heb ik geen tijd zal overmorgen verder testen.

En ja klopt ik draai windows7 ultimate nederlands 64 bit.

Overigens nog wat anders, is het wellicht een goed idee om onze testen buiten het forum te houden?

Louis
Post Reply