Just figured out this in VBA. Before running this make a backup (not well error handled). First layer should be the Intersection point layer and second layer should be the road layer. make sure you have started Editing.
The code spatially identifies the point features on the start and end points of every line feature and Updates the OBJECTID values to FNODE and TNODE fields.
Sub UpdateFromTo()
Dim pMxDoc As IMxDocument
Dim pMap As IMap
Set pMxDoc = ThisDocument
Set pMap = pMxDoc.FocusMap
Dim pointFtrLyr As IFeatureLayer
Set pointFtrLyr = pMap.Layer(0)
Dim lineFtrLyr As IFeatureLayer
Set lineFtrLyr = pMap.Layer(1)
Dim lineFC As IFeatureClass
Set lineFC = lineFtrLyr.FeatureClass
Dim fromNodeIndex As Integer
fromNodeIndex = lineFC.FindField("FNODE")
Dim toNodeIndex As Integer
toNodeIndex = lineFC.FindField("TNODE")
Dim pFI2 As IFeatureIndex2
Set pFI2 = New FeatureIndex
Set pFI2.FeatureClass = pointFtrLyr.FeatureClass
Set pFI2.OutputSpatialReference("Shape") = pMxDoc.FocusMap.SpatialReference
pFI2.Index Nothing, pointFtrLyr.AreaOfInterest
Dim m_IQ2 As IIndexQuery2
Set m_IQ2 = pFI2
Dim pID As New UID
pID = "esriEditor.Editor"
Dim pEditor As IEditor
Set pEditor = Application.FindExtensionByCLSID(pID)
pEditor.StartOperation
Dim pLineCursor As IFeatureCursor
Set pLineCursor = lineFtrLyr.Search(Nothing, False)
Dim pLineFeature As IFeature
Set pLineFeature = pLineCursor.NextFeature
Dim foid As Long
Dim toid As Long
Dim fdist As Double
Dim tdist As Double
Do While Not pLineFeature Is Nothing
Dim pLine As IPolyline
Set pLine = pLineFeature.Shape
m_IQ2.NearestFeature pLine.FromPoint, foid, fdist
If Round(fdist, 0) = 0 Then
pLineFeature.Value(pLineFeature.Fields.FindField("FNODE")) = foid
pLineFeature.Store
End If
m_IQ2.NearestFeature pLine.ToPoint, toid, tdist
If Round(tdist, 0) = 0 Then
pLineFeature.Value(pLineFeature.Fields.FindField("TNODE")) = toid
pLineFeature.Store
End If
Set pLineFeature = pLineCursor.NextFeature
Loop
pEditor.StopOperation "Calculate FromTo Nodes"
MsgBox "Features updated!!"
End Sub