On a client machine, all of the TextFields are displayed with the text cut in half, vertically.
A few fields that display correctly are Formula fields or have a height increased for testing purposes.
This bug started happening without any update of my software, so must be something inside the machine of the user.
It works elsewhere.
The client uses a XP SP3, the only thing that happened (what I can see, using the event viewer) is that a Office 2007 installation failed and after that all reports have this problem.
Since this report works everywhere except this client, it must be some sort of wrong config with in the client machine.
So, I replaced the printer default with another printer and the reports started displaying everything as it should.
So a wrong default printer was the problem.
Related
I have an Excel workbook shared with other Excel users. When my co-workers and I use our different computers to print the same sheets to PDF, the page breaks differently in the resulting PDF, even though it displays the same in print preview.
We both run Windows 10, Excel 2016, using the same printer driver and printing preferences. I've confirmed the regional settings in our system are the same. No special fonts are included in the workbook. No difference in the AppData/Roaming/Microsoft/Excel/XLSTART/.
How can I avoid the layout changes? Is there anything that I might have missed checking? Any help would be appreciated!
If you're both printing the same version of the same document on the same printer, driver, operating system, etc, then you are missing a setting.
Some printer settings are buried pretty deep. Also, were you using the Print Preview or Page Preview when you both viewed it?
I suspect you missed a screen of settings somewhere from the image below, likely the Options... button in the bottom right, which take you into the Manufacturer's settings dialog(s).
Another place to check for settings you may have missed is the control pael. Hit the Windows Key and type printers and hit Enter and make sure you double check every setting in that window and all of the sub-dialogs. Some printers can have hundreds of settings.
If you still can't find a difference, get a third person on a different computer to try printing it. The odd man out of the three of your print jobs, is likely the one with the different setting!
If still no go, please post screen shots.
On Windows, Control Panel -> Display settings on different computers distort how Excel fits cells onto a page from computer to computer in my experience.
Windows7 Control Panel Display Settings
Display settings did it for me. I checked language packs, versions, removed and readded the print to pdf driver packs, the works. I was about to clone the working system to the non working system. The non working system had display scaled 125%....
I have been working on a project in excel for a while and am having problems deploying it to my client. We have (exactly) the same version of excel but when he opens the file the sizing of the components is all wrong. Please see the screenshots below:
When he turns on design mode or clicks and holds the vertical scroll bar, the issue corrects itself for the most part:
But when compared to the original there are still issues, such as the "Rental Start" and "Rental End" labels.
I should also mention that this problem is not isolated to this project. We had some issues with a different one, as well, but never made the connection between design mode and couldn't figure it out. I have tried my IntegralHeight property per a forum post somewhere, as well as double checking that my components are not set to size with cells. Does anyone know why this might be occurring? He has windows 8.1 and I have 7, if that could be the difference.
Note: All controls are ActiveX controls.
I have an uncommon issue. I have an Excel file with macros. On all computers it was installed Office 2010 and everything worked fine, but a few days ago every computer was upgraded to Office 2013.
In code, at some point I enable or disable some buttons based on some criterias.
ThisWorkbook.Worksheets("Lab Orders").OLEObjects("CommandButton1").Enabled = False
On some computers this works fine , but on other computers this button is shown as enabled, and if the user clicks the button nothing happens, not even the animation where the the button is pressed, so it cannot execute the code behind. It's like an image. Any leads, or reasons why this is happening only on certain computers ?
I have this problem after the Office got upgraded. PS. All computers are in the same domain.
LATER EDIT
I changed the code line
ThisWorkbook.Worksheets("Lab Orders").CommandButton1.Enabled = True
and now I get this error: 438 at this row (I debbuged the file on a computer where this file does not work)
I suspect it's the issue with the latest Office updates - see if this fixes it: http://excelmatters.com/2014/12/10/office-update-breaks-activex-controls/
On all computers where you have the problem, check the box "Trust access to the VBA project object model" located in Options/Trust Center/Macro Settings
(Note that this will only apply to Excel, and if you are having the same problems on other MS Office softwares, you should do the same on them as well)
If that's still not working, read and apply all the checks on this page : https://support.office.com/en-gb/article/Enable-or-disable-macros-in-Office-files-12b036fd-d140-4e74-b45e-16fed1a7e5c6
Did not fit as a comment, so:
If I understand you correctly, some computers show the button enabled, while in fact it is disabled, right?
In this case it's normal no button press animation "visibly happens" as Windows knows the button was programmatically disabled.
The same thing happens if you hook a window (which has buttons on it) and send any button a WM to show itself as if it was enabled (while in fact it is not).
The reason it seems enabled on some computers may vary, most probably it's video card and/or driver 'issue', or some "strange alignment" (that particular OS with that particular graphics card & driver and DirectX, as well as those 'special' OLE settings, etc).In both cases, the screen area don't get "refreshed" (invalidated) after the button was disabled - so it seems enabled and gets "repainted" only when there was some user interaction around it. "Lazy redraw", so to speak :)
What one can do is, if it happens to be a serious issue, to find a way on one of these computers to get the button visibly disabled with some 'workaround' (e.g. changing button text after it was disabled -maybe even to exactly the same text-, or move it 1 pixel away and back, call InvalidateRect on it, etc), and apply that solution to your Excel macro.
UPDATE after reading asker's comment:
Oh I see. This could happen if the buttons are in a control array. The issue in this case, however should be present on all computers... Strange.
Anyway. Try to test the buttons' Index property to see if they are part of a control array, just to be sure. If yes:
a) remove them from the array and create buttons "independent" from each other
b) create a bool array and store there enabled/disabled status and write a function that updates buttons' text color property & handles button click event ignore/accept
I've started using Crystal Reports recently. Have been able to create a report and mostly done with it. But suddenly I started to lose any change made inside a textbox object. I edit a textbox, save the report and close it. And then I reopen it to see that the change hasn't remained. I restart the Visual Studio and even the machine but nothing helps. I use VS 2012. Has anyone experienced anything like this?
In the report preview see if the checkbox "Save data in the report" is checked. If so, try unckecking this checkbox. It is causing me some trouble to save the report crashing Visual Studio interface.
In fact I found the reason for the problem. This happens when I try to save the changes while the focus is on the edited object, in this case textbox. But if I click somewhere else (in order to lose focus on the edited textbox) before saving, then the problem gets solved. Happy to have found it.
Welcome to the club :)
Crystal Reports can behave very strangely in some cases. For instance, some times when i edit a report file in Windows XP, it crashes the interface and corrupts the file when i save it. The same problem doesn't appear in Windows 7. However other strange things happen in Windows 7 also.
I would recommend you to
Always apply the latest Service Pack available for the Crystal Reports Engine.
Always check if the asterisk sign disappears from the opened report file when you save it (some times it doesn't when you hit save and it does when you hit save all and vice versa).
Always backup your report files once in a while because to recover a corrupted file is a very hard task.
You can try the following to find out what causes the problem
Create a new blank Windows Forms project, add the same report file there and check if it behaves the same.
Create a new blank report file and check if a change in a field behaves the same way after saving it.
Try it on another OS.
Go to Database | Verify Database and make sure the database is up to date.
Also Go to Database | Show SQL Query and reset the query. Now enter in the Selection Formula again and save.
Updating the SQL will replace the Selection Formula.
Good luck,
We've got some in-house applications built in MFC, with OpenGL drawing routines. They all use the same code to draw on the screen and either print the screen or save it to a JPEG file. Everything's been working fine in Windows XP, and I need to find a way to make them work on Vista.
In three of our applications, everything works. In the remaining one, I can get the window border, title bar, menus, and task bar, but the interior never shows up. As I said, these applications use the exact same code to write to the screen and capture the window image, and the only difference I see that looks like it might be relevant is that the problem application uses the MFC multiple document interface, while the ones that work use the single document interface.
Either the answer isn't on the net, or I'm worse at Googling than I thought. I asked on the MSDN forums, and the only practical suggestion I got was to use GDI+ rather than GDI, and that did nothing different. I have tried different things with every part of the code that captures and prints or save, given a pointer to the window, so apparently it's a matter of the window itself. I haven't rebuilt the offending application using SDI yet, and I really don't have any other ideas.
Has anybody seen anything like this?
What I've got is four applications. They use a lot of common code, and share the actual .h and .cpp files, so I know the drawing and screen capture code is identical.
There is a WindowtoDIB() routine that takes a *pWnd, and a source rectangle and destination size. It looks like very slightly adapted Microsoft code, and I've found other functions in this file on the Microsoft website. Of my four applications, three handle this just fine, but one doesn't. The most obvious difference is that the problem one is MDI.
It looks to me like the *pWnd is the problem. I'm not a MFC guru by a long shot, and it seems to me that the problem may be that we've got one window setup in the SDIs, and more than one in the MDI. I may be passing the wrong *pWnd to the function.
In the meantime, it has started working properly on the 64-bit Vista test machine, although it still doesn't work on the 32-bit Vista machine. I have no idea why. I haven't changed anything since the last tests, and I didn't think anybody else had. (On the 32-bit version, the Print Screen key works as expected, but it does not save the screen as a JPEG.)
Your question title mentions screen capture but your actual question doesn't. Please elaborate more clearly. Is the problem that you can do screen capture of three of your applications, but not the fourth one? You can use different screen capture software that can capture OpenGL/DirectX windows. Those surfaces are handled directly by the Window Manager and won't show up with a simple 'PrtScn'.
Switching to GDI+ won't solve it, nor will switching to SDI.
If it's the content of the CView that you want, then yes, that should be right one. If it's the content of the whole screen (at least the content, without the toolbar(s) and status bar), then you should pass it the CMainFrame (that's the default name which may have been changed, the one that is derived from CMDIFrameWnd).
Can you post the code of WindowToDIB()? I've just tried it and It Works For Me (TM), but without OpenGL code in the view. Try passing the following windows to your WindowToDIB() function:
CMainFrame* mainfrm = static_cast<CMainFrame*>(::AfxGetMainWnd());
- mainfrm
- mainfrm->MDIGetActive()
- mainfrm->MDIGetActive()->GetActiveView()
and see what you get.
The contents of each window are directX surfaces and are only assembled by the window manager in the graphics card. You'd not be able to capture this unless you switch off the new interface (DWM) or code specifically for screen capture from the DWM.
Wikipedia has a good description of the Desktop Window Manager (DWM)
Sorry, I still don't understand. You're trying to get the Print Screen key to work on all four applications? Or you're trying to get the WindowtoDIB() function to work, which takes a 'screenshot' (from within your own application) of the application itself, so that it can be saved as an image file?
Also, what do you mean with 'he Print Screen key works as expected, but it does not save the screen as a JPEG.'? Print Screen only copies to the clipboard, what happens when you paste in Paint?
If your WindowtoDIB() function only 'captures' the window you pass to it, then yes, your MDI child windows are not going to show up.
We eventually solved this by creating a different OpenGL context, and drawing everything to that. We gave up on the screen capture.