|
POST
|
You can develop an msi on a machine with a previous version of ArcGIS (say, 9.2) and have it deployed on machine with later service packs or even versions. I have developed several in 9.2 that were used in 9.3. However, you will run into problems when going the other way. The target machine cannot have an previous service pack or version than the development machine. Take a look at this thread to see some discussion on how to check the target machine for the version and service pack, and whether the ArcGIS .NET Assemblies are installed. Ken, Thanks for chimming in on this issue. I did determine that dev/target machines are different versions, still unsure what service packs are installed. But getting EIT to install the correct version now. I did run into that thread earlier this morning, set it in the Favorites, but still have not implemented those very cool Launch Conditional statements/messaging. Thanks again. I'd like to see this app as an ArcGIS Server based application, just not sure if there is enough to justify the dev costs (I'd be doing the dev work though, with a bit of a learning curve). It's internal to the organization, only about 5-10 users and does a bunch of overlay analysis (although fairly simple spatial selections and area calcs, just quite a few of them). The only other issue I'd have with moving to a server-based web applicaiton would be in the reporting --- the current app does some fairly nice Crystal Reports and I'd like to keep that if possible.
... View more
08-05-2010
11:17 AM
|
0
|
0
|
2073
|
|
POST
|
No, dev compil and user machine must be the same. You can also have 9.3.1 SP1 or 9.3.1 SP2 if you compiled your code with 9.3.1 no SP, and your user machin is now 9.3.1 SP1 you will have problem to install your msi. same version 9.3.1 and same SP. If you change user SP, you must upgrade your dev machin. Inverse is also true. If you upgrade your dev machin, you must upgrade user machin Ah. Thanks so much for your input. (I really need to push for more ArcGISServer application development! heh.)
... View more
08-05-2010
10:21 AM
|
0
|
0
|
2073
|
|
POST
|
i'm talking about ArcGIS. Can you take a look if you have same service pack? but it's not bad to check other component. Framework version should not be a problem, but we never know! I already got a problem like this, and it was a service pack problem version but with ArcGIS. Vincent The development computer has ArcGIS 9.3.1 The target computer has ArcGIS 9.3 But I was under the impression that this would be fine because of backward capabilities (from 9.3.1 ----> to 9.3)
... View more
08-05-2010
10:08 AM
|
0
|
0
|
2073
|
|
POST
|
be sure your compile version and your user machine have the same ArcGIS version and also same Service pack. That could be a problem. Vincent Vincent, Do you mean the same version of .NET Framework? Because we don't match exactly: dev computer has 3.5 and target computer has 3.5 Service Pack 1 installed. We do have the same ArcGIS v9.3.1 Thanks for your input!
... View more
08-05-2010
09:50 AM
|
0
|
0
|
2073
|
|
POST
|
4. I cannot see this anywhere on the target computer: C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Regasm.exe Ok, so I have been informed that #4. above does exist on the target computer.
... View more
08-05-2010
09:48 AM
|
0
|
0
|
2073
|
|
POST
|
After reading quite a few various posts from the old forums, I am still having issues installing/deploying a custom ITool/ICommand object (.dll) developed by way of: VisualStudio 2008 .NET Framework 3.5 CrystalReports 10.5 NO CustomActions (other than the Install/Uninstall procs) Problem: "Error:1001 unable to load one or more of the requested types"... then install process is rolled back. Target Machine specs: 1. Has Crystal Reports Viewer installed, but the GAC does not have ANY of the CrystalDecisions.. references as seen in my project. 2. .NET Framework 3.5 SP1 is installed. 3. Made certain that the SDK .NET Support was installed with the ArcGIS installation (this is seen/verified in the Add/Remove programs list). 4. I cannot see this anywhere on the target computer: C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Regasm.exe Any insight or comments about any of the above and what would be a good course of action to take in order to get this thing installed. Thanks!
... View more
08-05-2010
09:34 AM
|
0
|
10
|
2456
|
|
POST
|
Why not apply .SelectFeatures on an IFeatureSelection with your ISpatialFilter as a parameter? (Here is a snip from one of my procedures that is NOT complete but might help): Dim inLyr As IFeatureLayer
Dim FeatSel As IFeatureSelection = inLyr
Dim pSpatialFilter As ISpatialFilter
Dim pField As String = "Shape"
Dim pFCursor As IFeatureCursor
PolySel.SelectionSet.Search(Nothing, False, pFCursor)
pFCursor = Nothing
PolySel.SelectionSet.Search(Nothing, False, pFCursor)
pPoly = pFCursor.NextFeature
pSpatialFilter = New SpatialFilter
With pSpatialFilter
.Geometry = pPoly.ShapeCopy
.OutputSpatialReference(SearchLayer.FeatureClass.ShapeFieldName) = pPoly.Shape.SpatialReference
.GeometryField = SearchLayer.FeatureClass.ShapeFieldName
.SpatialRel = esriSpatialRelEnum.esriSpatialRelIntersects
End With
'perform the selection on the layers
FeatSel.SelectFeatures(pSpatialFilter, esriSelectionResultEnum.esriSelectionResultNew, False)
Dim ct As Integer = FeatSel.SelectionSet.Count
... View more
07-16-2010
05:16 AM
|
0
|
0
|
696
|
|
POST
|
You could just get the value right from pFeature: Dim value as String
pFeature = pFeatureCursor.NextFeature
Do Until pFeature Is Nothing
value = pFeature.Value(pFeature.Fields.FindField("TheFieldName"))
pFeature = pFeatureCursor.NextFeature
Loop
... View more
07-09-2010
07:30 AM
|
0
|
0
|
2363
|
|
POST
|
Carlos, This works for me in my class that implements ICommand/IToolControl... Also, it works if the user clicks the Add Data button or drops a layer into the TOC from ArcCatalog. Public Class BFETools
Implements ESRI.ArcGIS.SystemUI.ICommand
Implements ESRI.ArcGIS.SystemUI.IToolControl
Private m_pApp As IApplication
Private WithEvents m_pActiveViewEvents As ESRI.ArcGIS.Carto.Map
'as normally, you will set your IApplication in your OnCreate Sub
Private Sub m_pActiveViewEvents_ItemAdded(ByVal Item As Object) Handles m_pActiveViewEvents.ItemAdded
Dim pMxDoc As IMxDocument = m_pApp.Document
Dim pLayer As IFeatureLayer
pLayer = pMxDoc.FocusMap.Layer(0)
MsgBox(pLayer.Name & " has been Added")
End Sub
... View more
07-06-2010
07:42 AM
|
0
|
0
|
1287
|
|
POST
|
This may not be the best idea, or even if it's feasible, but how about taking advantage of the default behavior of the "Add Data" Command/button? What I mean is that, and this may or may not be correct, but I think that particular command always adds the layer as the first one in the TOC. Can you not use this to track the layer the user just added by getting the first layer in the TOC after the AddData command is run? pLayer = pMap.Layer(0) But what if the user drags-and-drops a layer from ArcCatalog? They may or may not drop it in the first position in the TOC.
... View more
07-06-2010
06:03 AM
|
0
|
0
|
1287
|
|
POST
|
If only it were that simple! On ESRI Property Pages, KeyDown and KeyUp never get fired for Enter and Escape. The window is gone before that. You have to get down to the WinAPI level to trap the WM_GETDLGCODE message, set its result to DLGC_WANTALLKEYS, and then send the message on to the appropriate handler (I used ProcessKeyMessage). If you don't set its result, the handler won't get it because Property Pages by default make the system handle dialog keys (Escape/Enter). I think it's a little different with Toolbars, but I will definitely keep your solution in mind if I have to do something similar. Thanks! Exactly, My Toolbar is actually a UserControl that contains Texboxt/ComboBox controls. The KeyUp/Down events would not get fired for Enter/Escape BUT they do fire with the KeyUp Event. That's all I was attempting to show. 🙂 I was having the same problems you were having, along with similar UserControl control and was merely thinking that you *might* get away with a simpler solution than having to deal with the messaging stuff.
... View more
06-24-2010
11:09 AM
|
0
|
0
|
2114
|
|
POST
|
I missed this thread somehow, but wanted to post a similar experience but different solution. I see you have resolved the issue but maybe take a look at my post/thread for possible alternate solution... http://forums.arcgis.com/threads/3659-Capture-Enter-Keystroke-from-MaskedTextbox-on-UserControl I could not even get the Enter Key event to fire/trapped at all. Turns out it was very simple problem: use the KeyUp event instead of the KeyPress/KeyDown, then check for the specific key (in my case, I needed the Enter Key but you could also identify the Esc key too). There is a KeyUp Event for the DataGridView control, but you'd probably still need to get at the KeyUp for the DataGridViewTextBoxEditingControl. Private Sub txtPIDSearch_KeyUp(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles txtPIDSearch.KeyUp
Try
If e.KeyValue = Keys.Enter Then
'do something
End If
Catch ex As Exception
MsgBox(ex.ToString)
End Try
End Sub
... View more
06-24-2010
10:50 AM
|
0
|
0
|
2114
|
|
POST
|
Does this line really work as expected? pCommand = New ControlsSelectFeaturesToolClass ' The selectfeatures tool From what I see, you need to invoke the correct UID for that SelectFeaturesTool. Not sure what dev environment you are working in, but here's how I start the SelecteFeatures Tool in the Button Click event in a .NET app: Private Sub btnRunByPolyGraphic_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnRunByPolyGraphic.Click
Dim pUID As New UID
pUID.Value = "esriArcMapUI.SelectFeaturesTool"
m_pApp.CurrentTool = m_pApp.Document.CommandBars.Find(pUID)
'do something
End Sub Also, are you sure you want to set the .CurrentTool = pCommand IF pCommand is already .Enabled? Cause that is what you are doing in the code: If pCommand.Enabled = True Then
m_application.CurrentTool = pCommand
End If
Exit Sub I mean, if it's already enabled then you don't need to set the current tool to it, right? I don't know, maybe I'm just a bit confused on what you are attempting there.
... View more
06-17-2010
06:30 AM
|
0
|
0
|
1180
|
|
POST
|
Hello I am looking for a VBA script that I can use so that I can draw a line as part of a shapefile file and then have a wondow with predefined fields pop up so the user can enter data into an attribute table. For example. I draw a line representing roads. Once I have drawn in the box would pop up asking for the road name, road number and towns. These would be fields that already exist in the attibute table. The data entered in the window would, once OK was pressed be entered into the row associated with that line drawn. Any parts of this you have would be useful. even just the calling of a box once a line has been drawn. This is similar to the NOAA habitat digitiser tool that calls a box once a polygon has been drawn. In the most basic/generic sense, you would first, create a UserForm with controls to allow for data entry. These controls could be whatever best represents the fields in the table/attributes, such as textbox controls. Then I'd set an EditEvents and utililze the OnSketchFinished event to launch the UserForm and allow the user to enter the data into the controls. Look into the IEditor Inteface for more info. Ex: Private pEditor As ESRI.ArcGIS.Editor.IEditor
Private WithEvents m_pEditEvents As ESRI.ArcGIS.Editor.Editor
Private Sub m_pEditEvents_OnSketchFinished() Handles m_pEditEvents.OnSketchFinished
Try
Dim pDoc As IMxDocument
pDoc = m_pApp.Document
Dim pActiveView As IActiveView = pDoc.ActiveView
'If an edit session has not already been started, exit
If pEditor.EditState = ESRI.ArcGIS.Editor.esriEditState.esriStateNotEditing Then
Exit Sub
Else
'do something
'stop editing
pEditor.StopEditing((True))
End If
Catch ex As Exception
MsgBox(ex.ToString)
End Try
End Sub
... View more
06-17-2010
05:23 AM
|
0
|
0
|
469
|
| Title | Kudos | Posted |
|---|---|---|
| 1 | 02-17-2020 10:47 AM | |
| 1 | 10-25-2022 11:46 AM | |
| 1 | 08-08-2022 01:40 PM | |
| 1 | 02-15-2019 08:21 AM | |
| 2 | 08-14-2023 07:14 AM |
| Online Status |
Offline
|
| Date Last Visited |
01-22-2025
02:28 PM
|